Unblu Web API (8.0.1)

Download OpenAPI specification:Download

Unblu Web API v4

The Java libraries containing the web API models and the Jersey client are available on Maven Central and GitHub.
For more information, refer to the project's page on GitHub.

Authentication

basicAuth

Security Scheme Type HTTP
HTTP Authorization Scheme basic

Accounts

With this service the accounts of the unblu system can be managed. Most of the provided interface needs super admin permissions. Especially if the edited account is not the one of the current user.

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to create

$_type
string
Default: "Account"
Value: "Account"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

name
string

The name of the account. Maximum length of 250 characters and can not be empty.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object

A map of localized versions of the name of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

Responses

Request samples

Content type
application/json

Create an Account with translations of the name for it

{
  • "$_type": "Account",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "name": "with-translations-test",
  • "avatar": null,
  • "translations": {
    },
  • "configuration": null,
  • "metadata": null,
  • "text": null
}

Response samples

Content type
application/json

Create an Account with translations of the name for it

{
  • "$_type": "Account",
  • "id": "A7d9E_0-c3cC4aoFDb85t6n",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "name": "with-translations-test",
  • "avatar": null,
  • "translations": {
    },
  • "configuration": null,
  • "metadata": null,
  • "text": null
}

createAccountWithNewAdmin

Create a new account with a new admin which will receive an email with the initial password.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

the new account and admin user information

$_type
string
Default: "AccountUserContainer"
Value: "AccountUserContainer"
object (Account)

Model of an account

object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

Responses

Request samples

Content type
application/json

Create an Account and an Admin user for it

{
  • "$_type": "AccountUserContainer",
  • "account": {
    },
  • "adminUser": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "AccountUserContainer",
  • "account": {
    },
  • "adminUser": {
    }
}

delete

Deletes the account with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
path Parameters
accountId
required
string

The ID of the account which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

disableAccountIngress

Disables ingress for the given account.

Calling this method triggers the ingress deactivation process. This consists of a single step:

  1. Migrate all users of the account to be managed through the built-in Unblu user management system.
Successfully completing the deactivation process changes the getMigrationStatus to DONE_INGRESS_INACTIVE and thegetIngressStatus to GLOBAL
If the deactivation process fails, getMigrationStatus changes to ERROR.
In such a case, use readIngressStatus to retrieve the current status and find the potential source of the problems.

Once you've resolved the issues that caused the deactivation process to fail, use restartIngressMigration to restart the process.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
path Parameters
accountId
required
string

The ID of the account for which ingress should be disabled

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

enableAccountIngress

Enables ingress for the given account. Before calling this method, you must have configured ingress correctly.

Calling this method triggers the ingress activation process. The process consists of the following steps:

  1. Migrate all the users of the account to be managed through ingress single sign-on (SSO).
  2. Check and apply all ingress-related configuration properties.
Successfully completing the activation process changes the getMigrationStatus to DONE_INGRESS_ACTIVE and thegetIngressStatus to ACCOUNT
If the activation process fails, the getMigrationStatus changes to ERROR.
In such a case, use readIngressStatus to retrieve the current status and find the potential source of the problems.

If the process failed because of an invalid configuration, ingress is automatically activated once the configuration has been rectified.
If there was an issue during migration, use restartIngressMigration to restart the process once you've resolved all migration issues.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
path Parameters
accountId
required
string

The ID of the account for which ingress should be enabled

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getAccountSecret

Returns the account secret for the given account ID.

Only superadmins can call this endpoint for accounts other than their own.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
accountId
required
string

The ID of the account the secret belongs to

Responses

Response samples

Content type
application/json
{
  • "$_type": "AccountSecret",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "secretKey": "string"
}

getByName

Returns an account by the given name or an error, if there is no such account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
name
string

The name of the account which should be returned

expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "Account",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "name": "string",
  • "avatar": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    },
  • "text": {
    }
}

getCurrentAccount

Returns the account object of the current logged in user

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "Account",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "name": "string",
  • "avatar": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    },
  • "text": {
    }
}

getIngressStatus

Returns the current state of the account ingress configuration.

Use enableAccountIngress to enable account ingress.

Use disableAccountIngress to disable account ingress.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
accountId
required
string

The ID of the account for which the status should be returned

Responses

Response samples

Content type
application/json
{
  • "$_type": "AccountIngressStatus",
  • "enabled": true,
  • "ingressStatus": "ACCOUNT",
  • "migrationStatus": "MIGRATING",
  • "errorDetails": [
    ],
  • "warningDetails": [
    ]
}

getQuotaUsage

Calculates the quota usage values and their corresponding limits for API keys, domains, teams, and users in the current account.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPERVISOR"]
Authorizations:

Responses

Response samples

Content type
application/json
{
  • "$_type": "AccountQuotaUsageData",
  • "apiKeys": {
    },
  • "domains": {
    },
  • "teams": {
    },
  • "users": {
    }
}

getRecordedMinutes

Returns the total length of all conversation recordings made between the given dates over all accounts. If there were no recordings in the given time, the return value is 0.

Only superadmins can call this endpoint for accounts other than their own.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
accountId
required
string

The ID of the account to get the total length of all conversation recordings for.

query Parameters
fromTime
integer <int64>

Date from which to count the conversation recording length. The value is rounded to the beginning of the day.

toTime
integer <int64>

Date to which to count the conversation recording length. The value is rounded to the end of the day.

Responses

Response samples

Content type
application/json
{
  • "$_type": "RecordedMinutesData",
  • "recordedMinutes": 0
}

read

Returns the account with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
path Parameters
accountId
required
string

ID of the account which should be returned

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "Account",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "name": "string",
  • "avatar": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    },
  • "text": {
    }
}

readMultiple

Gets a list of accounts with the given IDs. IDs that can't be found are ignored.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The IDs of the accounts to fetch

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "AccountList",
  • "items": [
    ]
}

restartIngressMigration

Retries the ingress migration process for the given account. This is necessary when main_account#ingress_migration_status is ERROR.

When the service is executed, it updates the ingress_activation_status to MIGRATING. This causes the ingress migration leader selection task to resume the migration.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
path Parameters
accountId
required
string

The ID of the account for which the ingress migration should be restarted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

search

Search for accounts

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "AccountQuery"
Value: "AccountQuery"
Array of any (AccountSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AccountOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "AccountQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "AccountResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Allows to update the current account as admin. If user is super admin, he can also update other accounts

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The account entity to update

$_type
string
Default: "Account"
Value: "Account"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

name
string

The name of the account. Maximum length of 250 characters and can not be empty.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object

A map of localized versions of the name of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "Account",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "name": "string",
  • "avatar": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    },
  • "text": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "Account",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "name": "string",
  • "avatar": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    },
  • "text": {
    }
}

ApiKeys

With this service the api keys can be managed

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to create

$_type
string
Default: "ApiKey"
Value: "ApiKey"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

apiKey
string

Api key string. When creating the entity it can be set to a specific value or omitted (in the second case a random value will be generated by the server). Can not be updated.

name
string

Name of the api key. Maximum of 250 characters. Can be omitted, but should not.

description
string

Description of the api key. E.g. where or for what it is used. Maximum of 500 characters. Can be omitted.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

delete

Deletes the API key with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
apiKeyId
required
string

The ID of the API key which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByKey

Returns the api key object for the given api key string in the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
apiKey
string

The api key for which the object should be returned

expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

getDefault

Returns the default API key for the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

read

Returns the API key with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
apiKeyId
required
string

ID of the API key which should be returned

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

readMultiple

Gets a list of API keys with the given IDs. IDs that can't be found are ignored.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The IDs of the API keys to fetch

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "ApiKeyList",
  • "items": [
    ]
}

search

Search for api keys in the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "ApiKeyQuery"
Value: "ApiKeyQuery"
Array of any (ApiKeySearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ApiKeyOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "ApiKeyQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "ApiKeyResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the entity in the system with the given entity.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to update

$_type
string
Default: "ApiKey"
Value: "ApiKey"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

apiKey
string

Api key string. When creating the entity it can be set to a specific value or omitted (in the second case a random value will be generated by the server). Can not be updated.

name
string

Name of the api key. Maximum of 250 characters. Can be omitted, but should not.

description
string

Description of the api key. E.g. where or for what it is used. Maximum of 500 characters. Can be omitted.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Audit

Service to search the audit log entries.

search

Search for audit log entries

  • of database entities in the current account for ADMIN role user.
  • of global owner type entities and account entities for SUPERADMIN role user.

required-entry-path: INTERNAL
required-role: ["ADMIN","SUPER_ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "AuditChangeQuery"
Value: "AuditChangeQuery"
Array of any (AuditChangeSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AuditChangeOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "AuditChangeQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "AuditChangeResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

Authenticator

Service to log in with a user or to switch to other accounts/users by impersonating them

authenticateWithToken

Authentication using a previously created authentication token from (createAuthenticationToken). Will create an authentication session if authentication succeeds (includes setting an authentication cookie)

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
query Parameters
authenticationToken
string

token to login with

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

Responses

Response samples

Content type
application/json
{
  • "$_type": "LoginResult",
  • "success": true
}

createAuthenticationToken

Creates a new authentication token, which can later be used for login.

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
Request Body schema: application/json
username
string

The username for which the token is created

password
string

The password of the user to authenticate

Responses

Request samples

Content type
application/json

Create a token for a given username and password

{
  • "username": "r@email.com",
  • "password": "L0remPf18!"
}

Response samples

Content type
application/json
{
  • "$_type": "AuthenticationTokenCreationResult",
  • "token": "string"
}

createAuthenticationTokenForCurrentUser

Creates a new authentication token for the current logged in user.

required-entry-path: PUBLIC
required-role: ["WEBUSER"]
Authorizations:

Responses

Response samples

Content type
application/json
{
  • "$_type": "AuthenticationTokenCreationResult",
  • "token": "string"
}

getCurrentPerson

Returns the current person

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

impersonate

Impersonates with another user either via username or userid (one of the two may be null).

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
Request Body schema: application/json
username
string

If set and userid is set to null, the user is searched by the name

userId
string

If set, the username is ignored and the user for the given id is impersonated

keepRole
boolean

If true, the impersonated user keeps the SUPER_ADMIN role even if they don't normally have it.

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

Responses

Request samples

Content type
application/json

Impersonate as user 'admin' without keeping the superadmin rights

{
  • "username": "admin",
  • "userId": null,
  • "keepRole": false,
  • "redirectOnSuccess": null,
  • "redirectOnFailure": null
}

Response samples

Content type
application/json
{
  • "$_type": "LoginResult",
  • "success": true
}

login

Login using username and password credentials. Will create an authentication session if login succeeds (includes setting an authentication cookie)

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
Request Body schema: application/json
username
string

user to use for login

password
string

password to use for login

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

Responses

Request samples

Content type
application/json

Login with username and password

{
  • "username": "r@email.com",
  • "password": "L0remPf18!",
  • "redirectOnSuccess": null,
  • "redirectOnFailure": null
}

Response samples

Content type
application/json
{
  • "$_type": "LoginResult",
  • "success": true
}

loginWithSecureToken

Start a session using a signed JWT as the login credentials. A logout token can be provided in the claim set of the signed JWT. This logout token is stored in the authentication session to be used later for the logoutWithSecureToken call. A new user with the role WEBUSER is created automatically. If authentication is successful, the response includes an authentication cookie; the response body is empty. x-unblu-apikey is a mandatory GET parameter for this operation, even though it is not part of the OpenAPI specification.

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "SecureTokenRequest"
Value: "SecureTokenRequest"
token
string
type
string (ESecureTokenType)
Enum: "JWT" "OIDC_ACCESS_TOKEN"
enum-descriptions: ["JWT","OIDC_ACCESS_TOKEN"]

Token type

Responses

Request samples

Content type
application/json
{
  • "$_type": "SecureTokenRequest",
  • "token": "string",
  • "type": "JWT"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

logout

Call this to logout (clear internal session and session cookie on response)

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
Request Body schema: application/json
redirectOnSuccess
string

redirection URL when the operation is successful

Responses

Request samples

Content type
application/json

Logout with a redirection to unblu.com

{}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

logoutWithSecureToken

Call this to log out using a signed JWT containing the logout token in the claim set. Use this to allow backend server(s) to log out from visitor SSO. x-unblu-apikey is a mandatory GET parameter for this operation, even though it is not part of the OpenAPI specification.

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "SecureTokenRequest"
Value: "SecureTokenRequest"
token
string
type
string (ESecureTokenType)
Enum: "JWT" "OIDC_ACCESS_TOKEN"
enum-descriptions: ["JWT","OIDC_ACCESS_TOKEN"]

Token type

Responses

Request samples

Content type
application/json
{
  • "$_type": "SecureTokenRequest",
  • "token": "string",
  • "type": "JWT"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

resetImpersonation

Resets the current impersonation. Will do nothing if there is no impersonation.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json
redirectOnSuccess
string

redirection URL when the operation is successful. Also if nothing needed to be done.

redirectOnFailure
string

redirection URL when the operation is not successful

Responses

Request samples

Content type
application/json

Reset impersonation and redirect to the Global Configuration page on success

{
  • "redirectOnSuccess": "/app/config-global",
  • "redirectOnFailure": null
}

Response samples

Content type
application/json
{
  • "$_type": "LoginResult",
  • "success": true
}

setDefaultLocale

Changes the language of the current user. It is stored also in the returned cookies
Note: A reload should be done afterwards.

allow-impersonated-access: true
required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
Request Body schema: application/json
locale
string

The new locale in the language-tag format (as defined in the IETF BCP 47) which should be used (e.g. en - english, de - german, fr - french, it - italian)

Responses

Request samples

Content type
application/json

Change the default locale to french

{
  • "locale": "fr"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

switchToAccount

Switches the account in a given authentication session. If successful, the user is treated, as if he/she was a member of the target account.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
Request Body schema: application/json
accountId
string

the account id to impersonate on

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

Responses

Request samples

Content type
application/json

Switch to account with a redirect to the Account Configuration page on success

{
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "redirectOnSuccess": "/app/config-account",
  • "redirectOnFailure": null
}

Response samples

Content type
application/json
{
  • "$_type": "LoginResult",
  • "success": true
}

Availability

getAgentAvailability

Returns the current availability state for a given user, account, named area, and locale.

required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:
query Parameters
userId
string

If specified, the availability will be returned for the specified user only

locale
string

The locale in form of a BCP 47 language tag (including the region if available) to check the availability for. If omitted, the service will check the availability of agents who did not filter the queue by language.

namedAreaSiteId
string

The site ID (meta tag or domain) of the named area to check the availability for. If omitted, the service will check the availability of agents who did not filter the queue by named area.

apiKey
string

API key to specify the account; mandatory when called as an anonymous user

ignoreAgentAvailabilityOverride
boolean

If true, the configuration property "com.unblu.agentavailability.availabilityOverride" will be ignored when evaluating agent availability. Defaults to false.

Responses

Response samples

Content type
application/json
{
  • "$_type": "AgentAvailabilityStateData",
  • "availabilityState": "AVAILABLE",
  • "isAvailable": true
}

Avatars

With this service, the avatar pictures can be managed.

read

Returns the avatar with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
avatarId
required
string

ID of the avatar which should be returned

Responses

Response samples

Content type
application/json
{
  • "$_type": "Avatar",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "imageZoomFactor": 0,
  • "imageXPositionRatio": 0,
  • "imageYPositionRatio": 0,
  • "imageRotationAngle": 0,
  • "imageData": "string"
}

Bots

Service to manage all kind of bots. Additionally the bots use this service to interact with a conversation/dialog.

cancelDialogBotTypingIndicator

Hides the typing indicator for the dialog bot.
If the typing indicator wasn't displayed, calling the endpoint has no effect.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
dialogToken
string

The token that belongs to the bot's dialog

Responses

Request samples

Content type
application/json
{
  • "dialogToken": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

cancelPendingDialogQuestions

Cancels all pending questions in a bot dialog.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
dialogToken
string

The token belonging to the dialog

Responses

Request samples

Content type
application/json
{
  • "dialogToken": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

cancelPendingQuestion

Cancels a bot's question message. If the message is not from a bot, the call will throw an error.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

The ID of the conversation the question message was sent to

questionMessageId
string

The ID of the question message that will be canceled

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "questionMessageId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

create

Creates a new dialog bot that can be used for conversation onboarding, reboarding and offboarding.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The dialog bot to create.

$_type
string
Default: "DialogBotData"
Value: "DialogBotData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the dialog bot. Maximum length of 250 characters. Can not be omitted.

description
string

Description of the dialog bot. Maximum length of 500 characters. Can be omitted.

botPersonId
string

ID of the person representing the bot

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters.

Based on the configured filters/flags the following events will be sent to the endpoint:

  • TypedEvent.BOT_ONBOARDING_OFFER: When a person matching the onboarding filter joins a conversation.
  • TypedEvent.BOT_REBOARDING_OFFER: When a person writes a message to an unassigned conversation and the reboardingEnabled flag is set to true.
  • TypedEvent.BOT_OFFBOARDING_OFFER: When a person matching the offboarding filter leaves a conversation or the conversation ends.
  • TypedEvent.BOT_DIALOG_OPENED: When a preaviously accepted bot dialog starts
  • TypedEvent.BOT_DIALOG_MESSAGE: On each message of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_MESSAGE_STATE: On each message state update of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_COUNTERPART_CHANGED: When the counterpart person of dialog changes during a dialog.
  • TypedEvent.BOT_DIALOG_CLOSED: When a previously accepted bot dialog closes.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory for webhookApiVersion greater than 3.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret which is send with each webhook event.

Maximum length of 4000 characters.

onboardingOrder
integer <int32>

Defines the onboarding order of this bot.

If more than one bots want to participate in an onboarding, the one with the lowest order value will go first.

reboardingOrder
integer <int32>

Defines the reboarding order of this bot.

If more than one bots want to participate in an reboarding, the one with the lowest order value will go first.

offboardingOrder
integer <int32>

Defines the offboarding priority of this bot.

If more than one bots want to participate in an offboarding, the one with the lowest order value will go first.

onboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
reboardingEnabled
boolean

Defines if this bot can reboard.

A reboarding offer will be sent only if this flag is enabled, giving the bot the chance to be part of the reboarding.

offboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
needsCounterpartPresence
boolean

Defines if the counterpart has to be online for the onboarding to start. E.g. if questions have to be answered live.

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the bot are dispatched.

automaticTypingStateHandlingEnabled
boolean

Defines if the bot should automatically display a typing indicator after receiving a message from the counterpart person. The indication starts 1s after the message is received. The typing state can also be influenced through the web API, independently of this property.

onTimeoutBehavior
string (EBotDialogTimeoutBehavior)
Enum: "ABORT" "HAND_OFF"
enum-descriptions: ["ABORT: Abort on-boarding the conversation when it comes to timeout. Default for internal bots.","HAND_OFF: Proceed further in on-boarding the conversation when it comes to timeout. Default for external bots."]

Defines what should happen with the conversation when it comes to timeout during on-boarding.
When omitted the default for external bots is set to HAND_OFF.

Responses

Callbacks

Request samples

Content type
application/json

Create a new dialog bot

{
  • "$_type": "DialogBotData",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "name": "test-bot-1",
  • "description": null,
  • "botPersonId": "BoL9zZSbQeGGXMfCLxWZ4g",
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "https://test.unblu.com",
  • "outboundTimeoutMillis": 3000,
  • "webhookApiVersion": "V4",
  • "webhookSecret": null,
  • "onboardingOrder": 10,
  • "reboardingOrder": 10,
  • "offboardingOrder": 10,
  • "onboardingFilter": "VISITORS",
  • "reboardingEnabled": false,
  • "offboardingFilter": "NONE",
  • "needsCounterpartPresence": false,
  • "messageStateHandledExternally": false,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "HAND_OFF"
}

Response samples

Content type
application/json

New dialog bot

{
  • "$_type": "DialogBotData",
  • "id": "c1a-ED06Dbat9daFBtC4l85",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-bot-1",
  • "description": null,
  • "botPersonId": "BoL9zZSbQeGGXMfCLxWZ4g",
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "https://test.unblu.com",
  • "outboundTimeoutMillis": 3000,
  • "webhookApiVersion": "V4",
  • "webhookSecret": null,
  • "onboardingOrder": 10,
  • "reboardingOrder": 10,
  • "offboardingOrder": 10,
  • "onboardingFilter": "VISITORS",
  • "reboardingEnabled": false,
  • "offboardingFilter": "NONE",
  • "needsCounterpartPresence": false,
  • "messageStateHandledExternally": false,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "HAND_OFF"
}

Callback payload samples

Callback
Content type
application/json
{
  • "$_type": "BotDialogClosedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "conversationId": "string",
  • "counterpartPersonId": "string"
}

delete

Deletes an existing dialog bot

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
dialogBotId
required
string

The ID of the dialog bot which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

dialogMessageDelivered

Marks a message as delivered to the bot.

Note: If the message is also read use the dialogMessageRead end point directly as it will also mark the message as delivered.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
dialogToken
string

The token that belongs to the bot's dialog

messageId
string

The ID of the delivered message

Responses

Request samples

Content type
application/json

Mark a message as delivered

{
  • "dialogToken": "AcviDb210C5BoFd6e_79oan-c-daOogO9iQmqUbgNzZN4X2A",
  • "messageId": "mGesYagET_2GipaDGinA9A"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

dialogMessageRead

Marks a message as read to the bot.

Note: This will also mark the message as delivered, if this hasn't happened yet.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
dialogToken
string

The token that belongs to the bot's dialog

messageId
string

The ID of the message that was read

Responses

Request samples

Content type
application/json

Mark a message as read

{
  • "dialogToken": "AcviDb210C5BoFd6e_79oan-c-daOogO9iQmqUbgNzZN4X2A",
  • "messageId": "mGesYagET_2GipaDGinA9A"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

finishDialog

Ends the dialog. Depending on the reason given and whether the dialog takes place during onboarding, reboarding, or offboarding, this will have specific effects. See the list below.

Reason: EBotDialogFinishReason.HAND_OFF:

  • Onboarding:
    • Next Bot: a further bot takes over the onboarding.
    • Activate Participation: If no further bots are in the queue the participation is activated. For inbound requests this is the point where the conversation is added to the queue. For PIN conversation and invitations the person is simply placed into the conversation and can actively participate.
  • Reboarding:
    • Next Bot: a further bot takes over the reboarding.
    • Requeue Conversation: If no further bots are in the queue the conversation is put back into the queue.
  • Offboarding:
    • Next Bot: a further bot takes over the offboarding.
    • End Participation: If no further bots are in the queue the participation is ended and the offboarding person can no longer access it.
Reason: EBotDialogFinishReason.SOLVED:
  • Onboarding:
    • Unassign Conversation: The conversation will be put in unassigned state and therefore will not be added to the queue as the problem is solved. New messages to the conversation will start reboarding.
    Reboarding:
    • Unassign Conversation: The conversation will be put in unassigned state and therefore will not be added to the queue as the problem is solved. New messages to the conversation will start reboarding again.
    Offboarding:
    • End Participation: Independent if there are further bots in the queue the participation is ended and the offboarding person can no longer access it.
Reason: EBotDialogFinishReason.ABORTED:
  • Onboarding:
    • Offboard Participant: The participant is directly moved to the offboarding phase and won't be allowed to enter the conversation.
    Reboarding:
    • Unassign Conversation: The participant is directly moved to the offboarding phase and won't be allowed to enter the conversation.
    Offboarding:
    • End Participation: Independent if there are further bots in the queue the participation is ended and the offboarding person can no longer access the conversation.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
dialogToken
string

The dialog token contained in each bot dialog webhook.

reason
string (EBotDialogFinishReason)
Enum: "HAND_OFF" "SOLVED" "ABORTED"
enum-descriptions: ["HAND_OFF: The bot is done with his part and the next bot can to the on-, re- or offboarding.","SOLVED: The problem of the dialog was solved and therefore no further bots are invoked.","ABORTED: The dialog was not successful and the on-, re- or offboarding has to be aborted."]

Reason why a bot finished a dialog.

Responses

Request samples

Content type
application/json

Hand off the dialog to an agent

{
  • "dialogToken": "AcviDb210C5BoFd6e_79oan-c-daOogO9iQmqUbgNzZN4X2A",
  • "reason": "HAND_OFF"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByName

Searches for an existing dialog bot with the given name.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
name
string

Name of the dialog bot.

Responses

Response samples

Content type
application/json

Dialog bot

{
  • "$_type": "DialogBotData",
  • "id": "c1a-ED06Dbat9daFBtC4l85",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-bot-1",
  • "description": null,
  • "botPersonId": "BoL9zZSbQeGGXMfCLxWZ4g",
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "http://test.webhook.com",
  • "outboundTimeoutMillis": 3000,
  • "webhookApiVersion": "V4",
  • "webhookSecret": null,
  • "onboardingOrder": 10,
  • "reboardingOrder": 10,
  • "offboardingOrder": 10,
  • "onboardingFilter": "NONE",
  • "reboardingEnabled": false,
  • "offboardingFilter": "NONE",
  • "needsCounterpartPresence": false,
  • "messageStateHandledExternally": false,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "HAND_OFF"
}

read

Reads an existing dialog bot.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
dialogBotId
required
string

The ID of the dialog bot.

Responses

Response samples

Content type
application/json

Dialog bot

{
  • "$_type": "DialogBotData",
  • "id": "c1a-ED06Dbat9daFBtC4l85",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-bot-1",
  • "description": null,
  • "botPersonId": "BoL9zZSbQeGGXMfCLxWZ4g",
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "http://test.webhook.com",
  • "outboundTimeoutMillis": 3000,
  • "webhookApiVersion": "V4",
  • "webhookSecret": null,
  • "onboardingOrder": 10,
  • "reboardingOrder": 10,
  • "offboardingOrder": 10,
  • "onboardingFilter": "NONE",
  • "reboardingEnabled": false,
  • "offboardingFilter": "NONE",
  • "needsCounterpartPresence": false,
  • "messageStateHandledExternally": false,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "HAND_OFF"
}

restrictDialogCounterpart

Limits the length of a message the counterpart can send to the bot in a dialog.

The value is reset automatically when the bot hands off the dialog.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
dialogToken
string

The dialog token included in each bot dialog webhook

maxChatInputLength
integer <int32>

The maximum number of characters in a message

Responses

Request samples

Content type
application/json
{
  • "dialogToken": "string",
  • "maxChatInputLength": 0
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

search

Search for dialog bots in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "DialogBotQuery"
Value: "DialogBotQuery"
Array of any (DialogBotSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DialogBotOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "DialogBotQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "DialogBotResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

sendDialogMessage

Sends a message as a bot into an ongoing dialog.

It can only be used after the bot received the BotDialogOpenEvent webhook for this dialog.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The message to send

$_type
string
Default: "BotDialogPostMessage"
Value: "BotDialogPostMessage"
dialogToken
string

The token belonging to the dialog the bot wants the message to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

Responses

Request samples

Content type
application/json
{
  • "$_type": "BotDialogPostMessage",
  • "dialogToken": "string",
  • "messageData": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "SendMessageResult",
  • "messageId": "string"
}

sendMessage

Sends a message to a conversation as a bot.

This can be used at any time during a conversation. It is not related to bot dialogs.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The message to send

$_type
string
Default: "BotPostMessage"
Value: "BotPostMessage"
conversationId
string

The id of the conversation to which this message belongs to

senderPersonId
string

ID of the bot person that sent the message.

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If it is null, all active participations are recipients

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone. Cannot be set for REPLY message type.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

Responses

Request samples

Content type
application/json
Example

Send card message from the bot

{
  • "$_type": "BotPostMessage",
  • "conversationId": "AcviDb210C5BoFd6e_79oan",
  • "senderPersonId": "nta30CBa-6d1a89cE57Db_F",
  • "recipientPersonIds": [
    ],
  • "internal": false,
  • "replyToMessageId": null,
  • "messageData": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "SendMessageResult",
  • "messageId": "string"
}

sendPing

Emits a WebhookPingEvent or PingRequest on the configured webhook/outbound endpoint for the dialog bot.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
dialogBotId
required
string

The ID of the dialog bot

Responses

Response samples

Content type
application/json
{
  • "$_type": "PingResponse",
  • "pingId": "string"
}

startDialogBotTypingIndicator

Displays a typing indicator for the dialog bot, to show the counterpart person that something is happening.
The typing indicator is removed automatically after four seconds or when the bot sends a message, whichever occurs sooner. If the typing indicator is already displayed, calling this endpoint resets the four second timer.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
dialogToken
string

The token that belongs to the bot's dialog

Responses

Request samples

Content type
application/json
{
  • "dialogToken": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

update

Updates an existing dialog bot.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "DialogBotData"
Value: "DialogBotData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the dialog bot. Maximum length of 250 characters. Can not be omitted.

description
string

Description of the dialog bot. Maximum length of 500 characters. Can be omitted.

botPersonId
string

ID of the person representing the bot

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters.

Based on the configured filters/flags the following events will be sent to the endpoint:

  • TypedEvent.BOT_ONBOARDING_OFFER: When a person matching the onboarding filter joins a conversation.
  • TypedEvent.BOT_REBOARDING_OFFER: When a person writes a message to an unassigned conversation and the reboardingEnabled flag is set to true.
  • TypedEvent.BOT_OFFBOARDING_OFFER: When a person matching the offboarding filter leaves a conversation or the conversation ends.
  • TypedEvent.BOT_DIALOG_OPENED: When a preaviously accepted bot dialog starts
  • TypedEvent.BOT_DIALOG_MESSAGE: On each message of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_MESSAGE_STATE: On each message state update of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_COUNTERPART_CHANGED: When the counterpart person of dialog changes during a dialog.
  • TypedEvent.BOT_DIALOG_CLOSED: When a previously accepted bot dialog closes.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory for webhookApiVersion greater than 3.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret which is send with each webhook event.

Maximum length of 4000 characters.

onboardingOrder
integer <int32>

Defines the onboarding order of this bot.

If more than one bots want to participate in an onboarding, the one with the lowest order value will go first.

reboardingOrder
integer <int32>

Defines the reboarding order of this bot.

If more than one bots want to participate in an reboarding, the one with the lowest order value will go first.

offboardingOrder
integer <int32>

Defines the offboarding priority of this bot.

If more than one bots want to participate in an offboarding, the one with the lowest order value will go first.

onboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
reboardingEnabled
boolean

Defines if this bot can reboard.

A reboarding offer will be sent only if this flag is enabled, giving the bot the chance to be part of the reboarding.

offboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
needsCounterpartPresence
boolean

Defines if the counterpart has to be online for the onboarding to start. E.g. if questions have to be answered live.

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the bot are dispatched.

automaticTypingStateHandlingEnabled
boolean

Defines if the bot should automatically display a typing indicator after receiving a message from the counterpart person. The indication starts 1s after the message is received. The typing state can also be influenced through the web API, independently of this property.

onTimeoutBehavior
string (EBotDialogTimeoutBehavior)
Enum: "ABORT" "HAND_OFF"
enum-descriptions: ["ABORT: Abort on-boarding the conversation when it comes to timeout. Default for internal bots.","HAND_OFF: Proceed further in on-boarding the conversation when it comes to timeout. Default for external bots."]

Defines what should happen with the conversation when it comes to timeout during on-boarding.
When omitted the default for external bots is set to HAND_OFF.

Responses

Request samples

Content type
application/json
{
  • "$_type": "DialogBotData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "botPersonId": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "outboundTimeoutMillis": 0,
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "onboardingOrder": 0,
  • "reboardingOrder": 0,
  • "offboardingOrder": 0,
  • "onboardingFilter": "VISITORS",
  • "reboardingEnabled": true,
  • "offboardingFilter": "VISITORS",
  • "needsCounterpartPresence": true,
  • "messageStateHandledExternally": true,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "ABORT"
}

Response samples

Content type
application/json
{
  • "$_type": "DialogBotData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "botPersonId": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "outboundTimeoutMillis": 0,
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "onboardingOrder": 0,
  • "reboardingOrder": 0,
  • "offboardingOrder": 0,
  • "onboardingFilter": "VISITORS",
  • "reboardingEnabled": true,
  • "offboardingFilter": "VISITORS",
  • "needsCounterpartPresence": true,
  • "messageStateHandledExternally": true,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "ABORT"
}

Calls

Manages all Calls

read

Returns the call with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
callId
required
string

Responses

Response samples

Content type
application/json
{
  • "$_type": "Call",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0,
  • "endTimestamp": 0,
  • "endReason": "NOT_ANSWERED",
  • "participations": [
    ]
}

search

Search for call logs in the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "CallQuery"
Value: "CallQuery"
Array of any (CallSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CallOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "CallQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "CallResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CannedResponses

Service to manage canned responses.
The canned responses a user can edit and the ones they can use in chats can differ. The ones they can edit depend on their role. The ones they can use in a chat depend on their role as well as the team setup. Refer to the following policies for the list of canned responses available for chat:

  • All canned responses of the own user.
  • All canned responses of the team cascade (the user's team and all of its parent teams)
  • All canned responses of the subteams if role is: SUPERVISOR or higher.
  • All canned responses of all teams if role is: ADMIN or higher.
  • All canned responses of the users account.
Compare that to list of policies for creating, editing, and deleting canned responses:
  • All canned responses of the own user.
  • All canned responses of the subteams if role is: SUPERVISOR or higher.
  • All canned responses of all teams if role is: ADMIN or higher.
  • All canned responses of the users account if role is: ADMIN or higher.

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The entity to create

$_type
string
Default: "CannedResponse"
Value: "CannedResponse"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

ownerId
string

Id of the owner of the entity. Can not be omitted.

ownerType
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

Array of objects (Placeholder) [ items ]
title
string

The title of a canned response as unique identifier. Maximum of 250 characters.

text
string

The text of a canned response. Can be omitted, but should not.

language
string

The language of a canned response, specified using the language tag format as defined in IETF BCP 47. This field can be omitted, but doing so may lead to behavior that doesn't matches users' expectations.

Only canned responses matching a conversation's language are displayed in the UI.
The following rules apply:

  • Canned response with no language defined are displayed for all conversations.
  • If the conversation language (e.g. "en-us") is more specific than the language of the canned response (e.g. "en"), the canned response is also displayed.
  • If the language of the canned response (e.g. "en-us") is more specific than the conversation language (e.g. "en"), the canned response isn't displayed.

Responses

Request samples

Content type
application/json
Example

Create a new canned response for the account

{
  • "$_type": "CannedResponse",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "ownerId": null,
  • "ownerType": "ACCOUNT",
  • "placeholders": [ ],
  • "title": "Have a nice day",
  • "text": "It was great chatting with you, have a nice day!",
  • "language": "en"
}

Response samples

Content type
application/json
Example

New canned response for the account

{
  • "$_type": "CannedResponse",
  • "id": "EasFde6CRn83pnBCec_4Ds0",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "ownerId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "ownerType": "ACCOUNT",
  • "placeholders": [ ],
  • "title": "Have a nice day",
  • "text": "It was great chatting with you, have a nice day!",
  • "language": "en"
}

delete

Deletes the canned response with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
cannedResponseId
required
string

The ID of the canned response to delete

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

read

Returns the canned response with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
cannedResponseId
required
string

ID of the canned response to return

Responses

Response samples

Content type
application/json
{
  • "$_type": "CannedResponse",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "ownerId": "string",
  • "ownerType": "GLOBAL",
  • "placeholders": [
    ],
  • "title": "string",
  • "text": "string",
  • "language": "string"
}

readMultiple

Gets a list of canned responses for the given IDs

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The IDs for which the canned responses should be fetched

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "CannedResponseList",
  • "items": [
    ]
}

search

Search for canned responses according to the policy that applies to the user making the API call

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "CannedResponseQuery"
Value: "CannedResponseQuery"
Array of any (CannedResponseSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CannedResponseOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "CannedResponseQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "CannedResponseResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the entity in the system with the given entity.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The entity to update

$_type
string
Default: "CannedResponse"
Value: "CannedResponse"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

ownerId
string

Id of the owner of the entity. Can not be omitted.

ownerType
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

Array of objects (Placeholder) [ items ]
title
string

The title of a canned response as unique identifier. Maximum of 250 characters.

text
string

The text of a canned response. Can be omitted, but should not.

language
string

The language of a canned response, specified using the language tag format as defined in IETF BCP 47. This field can be omitted, but doing so may lead to behavior that doesn't matches users' expectations.

Only canned responses matching a conversation's language are displayed in the UI.
The following rules apply:

  • Canned response with no language defined are displayed for all conversations.
  • If the conversation language (e.g. "en-us") is more specific than the language of the canned response (e.g. "en"), the canned response is also displayed.
  • If the language of the canned response (e.g. "en-us") is more specific than the conversation language (e.g. "en"), the canned response isn't displayed.

Responses

Request samples

Content type
application/json
{
  • "$_type": "CannedResponse",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "ownerId": "string",
  • "ownerType": "GLOBAL",
  • "placeholders": [
    ],
  • "title": "string",
  • "text": "string",
  • "language": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "CannedResponse",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "ownerId": "string",
  • "ownerType": "GLOBAL",
  • "placeholders": [
    ],
  • "title": "string",
  • "text": "string",
  • "language": "string"
}

CannedResponsesUsage

Service for Canned Response Usage

count

Retrieve the number of canned response usages according to the search filter provided

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

to use for the search

$_type
string
Default: "CannedResponseUsageCountQuery"
Value: "CannedResponseUsageCountQuery"
Array of any (CannedResponseUsageSearchFilter) [ items ]

List of filters to narrow the search of entities

Responses

Request samples

Content type
application/json
{
  • "$_type": "CannedResponseUsageCountQuery",
  • "searchFilters": [
    ]
}

Response samples

Content type
application/json
{
  • "$_type": "CountResult",
  • "count": 0
}

search

Search for usages of canned responses

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

to use for the search

$_type
string
Default: "CannedResponseUsageQuery"
Value: "CannedResponseUsageQuery"
Array of any (CannedResponseUsageSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CannedResponseUsageOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "CannedResponseUsageQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "CannedResponseUsageResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationHistory

Service to get the history of conversations

exportMessageLog

Export messages belonging to a specific conversation

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

id of the conversation

Request Body schema: application/json
$_type
string
Default: "MessageExportQuery"
Value: "MessageExportQuery"
Array of any (MessageExportFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (MessageExportOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "MessageExportQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "MessageExportResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

getConversationRecordings

Gets the list of conversation recordings belonging to a specific conversation

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

ID of the conversation

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationRecordingHistoryDataList",
  • "items": [
    ]
}

read

Returns the conversation history data for a given conversation.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

id of the conversation

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationHistoryData",
  • "id": "string",
  • "recipient": {
    },
  • "endPerson": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "createdTimestamp": 0,
  • "assigneeJoinTimestamp": 0,
  • "endTimestamp": 0,
  • "lastMessageTimestamp": 0,
  • "lastCompletedRecordingTimestamp": 0,
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "locale": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endComment": "string",
  • "tokboxSessionId": "string",
  • "conversationTemplateId": "string",
  • "externalMessengerChannelIconId": "string",
  • "externalMessengerChannelName": "string",
  • "topic": "string",
  • "sourceUrl": "string",
  • "scheduledTimestamp": 0,
  • "dueDeletionTimestamp": 0,
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "conversationVisibility": "PRIVATE",
  • "stateChanges": [
    ]
}

search

Generic conversation history search.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The Conversation history query.

$_type
string
Default: "ConversationHistoryQuery"
Value: "ConversationHistoryQuery"
Array of any (ConversationHistorySearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationHistoryOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "ConversationHistoryQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationHistoryDataResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationTemplates

Service to manage all conversation templates.

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to create

$_type
string
Default: "ConversationTemplate"
Value: "ConversationTemplate"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the conversation template. Maximum of 250 characters. Mandatory.

description
string

Description of the conversation template. Maximum of 500 characters. Optional.

defaultTemplate
boolean

If true, this will be the default template for the initial engagement Type

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object

A map of localized versions of the name and description of this entity

inheritConfigurationAndTexts
boolean

True if conversations, created from this template, inherit all configuration and texts. If omitted, the property is set to false. New conversations receive a copy of this conversation template's configuration and texts.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json

Create a ConversationTemplate with translations of the name and description for it

{
  • "$_type": "ConversationTemplate",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "name": "with-translations-test",
  • "description": "The Conversation Template",
  • "defaultTemplate": false,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_INVITE",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": null,
  • "text": null,
  • "metadata": null
}

Response samples

Content type
application/json

Create a ConversationTemplate with translations of the name and description for it

{
  • "$_type": "ConversationTemplate",
  • "id": "ab32em6Be-5le_48rE1F9Ad",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "with-translations-test",
  • "description": "The Conversation Template",
  • "defaultTemplate": false,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_INVITE",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": null,
  • "text": null,
  • "metadata": null
}

delete

Deletes the template with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
templateId
required
string

The ID of the template which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getDefaultTemplateByEngagementType

Gets the default conversation template for a given initial engagement type

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationTemplate",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "defaultTemplate": true,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_REQUEST",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

read

Returns the template with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
templateId
required
string

ID of the template which should be returned

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationTemplate",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "defaultTemplate": true,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_REQUEST",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

readMultiple

Gets a list of conversation templates with the given IDs. IDs that can't be found are ignored.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The IDs of the conversation templates to fetch

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "ConversationTemplateList",
  • "items": [
    ]
}

search

Search for conversation-templates in the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "ConversationTemplateQuery"
Value: "ConversationTemplateQuery"
Array of any (ConversationTemplateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationTemplateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "ConversationTemplateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationTemplateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the entity in the system with the given entity.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to update

$_type
string
Default: "ConversationTemplate"
Value: "ConversationTemplate"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the conversation template. Maximum of 250 characters. Mandatory.

description
string

Description of the conversation template. Maximum of 500 characters. Optional.

defaultTemplate
boolean

If true, this will be the default template for the initial engagement Type

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object

A map of localized versions of the name and description of this entity

inheritConfigurationAndTexts
boolean

True if conversations, created from this template, inherit all configuration and texts. If omitted, the property is set to false. New conversations receive a copy of this conversation template's configuration and texts.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "ConversationTemplate",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "defaultTemplate": true,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_REQUEST",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationTemplate",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "defaultTemplate": true,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_REQUEST",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Conversations

Service to manage conversations

addExternalParticipant

Adds a participant connected through an external messenger to the given conversation.

For participants that will write messages directly through Unblu, use addParticipant instead.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

The conversation to update

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
externalMessengerContactId
string

The ID of the ExternalMessengerContact to add

Responses

Request samples

Content type
application/json
{
  • "externalMessengerContactId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

addParticipant

Adds a participant to the given conversation.

This can only be used for participants who send messages through Unblu. Use addExternalParticipant for participants who send messages through an external messenger channel.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
personId
string

Id of the person to add

hidden
boolean

If the person should be hidden or not. Note: only secondary agents and bots may be hidden.

conversationStarred
boolean

If this conversation should be marked as starred for the person. If null, the default value is false

Responses

Request samples

Content type
application/json

Add a participant to a conversation

{
  • "personId": "nta30CBa-6d1a89cE57Db_F",
  • "hidden": false,
  • "conversationStarred": false
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

changeParticipantVisibility

Changes the visibility of a conversation's participant.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
personId
string
hidden
boolean

Responses

Request samples

Content type
application/json

Mark an agent as visible

{
  • "personId": "nta30CBa-6d1a89cE57Db_F",
  • "hidden": false
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

create

Creates the conversation in the system. The conversation ID mustn't be set as a new one will be generated.
If called with the authorization role SUPERVISOR or REGISTERED_USER, there are a number of restrictions regarding the conversation to be created:

  • The initialEngagementType or the referenced conversationTemplateId must be a conversation type initiated by agents
  • The assigneePersonId must refer to the person entity of the agent making the call
  • The agent making the call must be the only participant in the conversation
If sourceId and externalMessengerChannelId are set they have to be unique for any active conversations. Ended conversations are ignored.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "ConversationCreationData"
Value: "ConversationCreationData"
topic
string

Topic of the conversation. Optional unless the initial engagement type is EInitialEngagementType.SCHEDULED_CONVERSATION, in which case it's mandatory.

scheduledTimestamp
integer <int64>

Unix timestamp (ms) when the conversation is scheduled. Can only be set for conversations with the initial engagement typeEInitialEngagementType.SCHEDULED_CONVERSATION.

object (ConversationCreationRecipientData)

The recipient of a conversation when creating a new conversation

Array of objects (ConversationCreationParticipantData) [ items ]

Participants taking part in the conversation through Unblu. There must be at least one participant in this list or in the externalParticipants list.

Array of objects (ConversationCreationExternalParticipantData) [ items ]

Participants taking part in the conversation through an external messenger. There must be at least one participant in this list or in theparticipants list. It must be omitted if externalMessengerChannelId is not set.

Array of objects (ConversationCreationBotParticipantData) [ items ]

Bots taking part in the conversation. Optional.

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

locale
string

The locale of the conversation language as a BCP 47 language tag, including the region if available. Optional, if not provided, the account default locale will be used.

visitorData
string

Custom data for the visitor. This has no specific format. Optional.

conversationTemplateId
string

Template ID of the conversation. If omitted, the default conversation template is retrieved based on the initial engagement type. If provided the value ofinitialEngagementType has to match the initial engagement type of the template.

externalMessengerChannelId
string

ID of the external messenger channel the conversation should be linked to. If this property is null the conversation is an Unblu conversation and not linked to an external messenger channel.

sourceId
string

Custom ID to identify the source of the conversation. Typically used in connection with an external messenger to create a link to the external conversation.
If this ID is specified, it has to be unique for each external channel. Even if the external channel is not used (null), the custom ID must be unique for this "null".

sourceUrl
string

URL identifying the system where the conversation was created, for example a CRM. Optional.

initialEngagementUrl
string

The URL where the conversation originated. Optional.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "ConversationCreationData",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "initialEngagementUrl": "string",
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

Response samples

Content type
application/json

New conversation created

{
  • "$_type": "ConversationData",
  • "creationTimestamp": 1546300800000,
  • "endTimestamp": null,
  • "id": "AcviDb210C5BoFd6e_79oan",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "topic": null,
  • "scheduledTimestamp": null,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [ ],
  • "botParticipants": [ ],
  • "state": "QUEUED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "en",
  • "tokboxSessionId": null,
  • "visitorData": "test-visitorData-1234",
  • "conversationTemplateId": "ab32em6Be-5le_48rE1F9Ad",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": null,
  • "sourceId": null,
  • "sourceUrl": "http://some.url/conv1",
  • "endReason": null,
  • "initialEngagementUrl": null,
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": null,
  • "metadata": null,
  • "configuration": null,
  • "text": null
}

delete

Deletes the conversation with the given ID.
Calls with the authorization role SUPERVISOR or REGISTERED_USER are only permissible if:

  • The agent making the call is the only participant in the conversation
  • The conversation never had any participants other than the agent calling the endpoint
  • The conversation contains no messages except system messages and messages sent by bots

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

The ID of the conversation to be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

end

Ends a conversation. If called with the authorization role SUPERVISOR or REGISTERED_USER, the agent making the call must have the necessary permissions to end a conversation.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
reason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

comment
string

Responses

Request samples

Content type
application/json

End a conversation

{
  • "reason": "OTHER",
  • "comment": "Some comment"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

getBySourceIdAndChannelId

Returns the active conversation for the given source ID and channel ID. When called with the authorization role REGISTERED_USER, the agent making the call must be a participant in the conversation matching the search criteria. If they aren't, the call will fail. When called with the authorization role SUPERVISOR, the conversation matching the search criteria must include a participant who is an agent in their team (or one of their teams). If it doesn't, the call will fail.

Ended conversations for the same sourceId and channel are ignored. These can be retrieved using the /search service.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
sourceId
string

The source ID the conversation was created with

externalMessengerChannelId
string

The messenger channel ID the conversation is connected to. Can be null for internal conversations.

expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

getConversationFiles

Returns a list of all files that have been shared/sent within the specified conversation.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the id of conversation, for which the file list should be retrieved

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationFileDataList",
  • "items": [
    ]
}

getRecordingState

Retrieve the current recording state of the given conversation

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

The conversation to retrieve the recording state for

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationRecordingState",
  • "conversationId": "string",
  • "recordingState": "IDLE",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0
}

offboardParticipant

Offboards a participant from a conversation.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
personId
string
reason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

comment
string

Responses

Request samples

Content type
application/json

Offboard a participant

{
  • "personId": "nta30CBa-6d1a89cE57Db_F",
  • "reason": "OTHER",
  • "comment": "Some other important reason"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

read

Returns the conversation with the given ID. If called with the authorization role SUPERVISOR or REGISTERED_USER, the agent making the call must be a participant in the conversation.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

ID of the conversation which should be returned

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

search

Search for conversations in the current account. If called with the authorization role REGISTERED_USER, the call only returns conversations matching the search criteria where the agent making a call is the participant. If the agent making the call has the user role SUPERVISOR, the results only include conversations of the agents in their team or teams.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "ConversationQuery"
Value: "ConversationQuery"
Array of any (ConversationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "ConversationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

setAssigneePerson

Sets an agent as assignee to a conversation.

Note: The person has to have an active participation in the conversation

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
personId
string

Responses

Request samples

Content type
application/json

Set the assigned agent

{
  • "personId": "nta30CBa-6d1a89cE57Db_F"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setAwaitedPersonType

Sets the awaited person type in a conversation

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
awaitedPersonType
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

Responses

Request samples

Content type
application/json

Set the conversation awaited person

{
  • "awaitedPersonType": "VISITOR"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setContextPerson

Sets a visitor as context person of a conversation.

Note: The person has to have an active participation in the conversation

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
personId
string

Responses

Request samples

Content type
application/json

Set the primary visitor

{
  • "personId": "nta30CBa-6d1a89cE57Db_F"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setLocale

Sets the locale of the conversation language (as BCP 47 language tag form including region if available).

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
locale
string

the new locale

Responses

Request samples

Content type
application/json

Set the conversation locale to german

{
  • "locale": "de"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setRecipient

Sets a person, named area, team or account as the recipient of a conversation.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "AccountData"
id
string

Unique id of the account.

displayName
string

Display-Name of the account

object

Localized Display-Name of the account

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the account: id that can be expanded.

Responses

Request samples

Content type
application/json
Example
{
  • "$_type": "AccountData",
  • "id": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setScheduledTimestamp

Sets the scheduled time of the conversation. The timestamp is the Unix timestamp (ms) when the conversation is scheduled for, rounded to the nearest minute. Can only be set for conversations with initialEngagementType = "SCHEDULED_CONVERSATION".
When called with the authorization role SUPERVISOR or REGISTERED_USER, the behavior of the call depends on the configuration property com.unblu.conversation.message.allowNonAdminUsersChangeConversationScheduledTimeViaWebApi:

  • If the configuration property is true, the agent making the call can only change the conversation's scheduledTimestamp if they're a participant in the conversation.
  • If the configuration property is false, the agent making the call can change the scheduledTimestamp provided their participation type in the conversation is listed in the configuration property com.unblu.conversation.allowChangeConversationScheduledTime.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
scheduledTimestamp
integer <int64>

the new scheduledTimestamp rounded to nearest minute

Responses

Request samples

Content type
application/json

Set the conversation scheduledTimestamp

{
  • "scheduledTimestamp": 1551398400000
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setStarred

Sets the starred status of a conversation for a particular person

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation to be starred/unstarred

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
personId
string

the person for whom the starred status will be set

starred
boolean

the starred status to b set

Responses

Request samples

Content type
application/json
{
  • "personId": "string",
  • "starred": true
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setTopic

Sets the topic of the conversation. Setting it to null deletes the topic, provided it isn't mandatory to specify a topic for the conversation type (e.g. SCHEDULED_CONVERSATION).
When called with the authorization role SUPERVISOR or REGISTERED_USER, the behavior of the call depends on the configuration property com.unblu.conversation.message.allowNonAdminUsersChangeConversationTopicViaWebApi:

  • If the configuration property is true, the agent making the call can only change the conversation's topic if they're a participant in the conversation.
  • If the configuration property is false, the agent making the call can change the topic provided their participation type in the conversation is listed in the configuration property com.unblu.conversation.message.allowChangeConversationTopic.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
topic
string

the new topic

Responses

Request samples

Content type
application/json

Set the conversation topic

{
  • "topic": "Topic of the conversation"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setVisibility

Sets the conversation visibility

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

Responses

Request samples

Content type
application/json

Set the conversation visibility

{
  • "conversationVisibility": "RULE_BASED"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

setVisitorData

Sets custom visitor data.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation where the custom data should be added

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

the custom visitor data

$_type
string
Default: "ConversationsSetVisitorDataBody"
Value: "ConversationsSetVisitorDataBody"
visitorData
string

Custom visitor data in any format.

Responses

Request samples

Content type
application/json
{
  • "$_type": "ConversationsSetVisitorDataBody",
  • "visitorData": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

startRecording

Manually start a conversation recording. The recording is only started if:

  • A compatible blob store is configured
  • Manually starting and stopping a recording is allowed
  • There is an active call or collaboration layer
  • There isn't already a conversation recording running
The recording is started asynchronously, and there may be a brief delay before it starts. The type of the recording (audio only or audio and video) is determined by the configuration. If an error occurs, a conversation.recording_failed webhook is triggered.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

The conversation for which a recording should be started

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

stopRecording

Manually stop a conversation recording. The recording is stopped if:

  • There is a running conversation recording
  • Manually starting and stopping the recording is allowed

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

The conversation for which a recording should be stopped

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

updateConfiguration

Updates the configuration map for a specific conversation

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

the key-value map of settings that will be updated. The source for this map has to be the configuration attribute when you read the conversation using configuration in the expand query parameter.

property name*
string

Responses

Request samples

Content type
application/json

Map to update the translations

{
  • "$_version": "3854d16accc07ea25ddcca42924d5096",
  • "com.unblu.conversation.concierge.conciergeHandleVisitorOnboarding": "false",
  • "com.unblu.conversation.feature.callEnabled": "true",
  • "com.unblu.conversation.feature.textChatEnabled": "false",
  • "com.unblu.conversation.invitation.allowPublicLinkAccess": "false",
  • "com.unblu.conversation.lifecycle.autoEndOnLeave": "SECONDARY_AGENT"
}

Response samples

Content type
application/json

Conversation after the settings update (loaded with expanded configuration)

{
  • "$_type": "ConversationData",
  • "creationTimestamp": 1546300800000,
  • "endTimestamp": null,
  • "id": "AcviDb210C5BoFd6e_79oan",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "topic": null,
  • "scheduledTimestamp": null,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [ ],
  • "botParticipants": [ ],
  • "state": "QUEUED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "en",
  • "tokboxSessionId": null,
  • "visitorData": null,
  • "conversationTemplateId": "ab32em6Be-5le_48rE1F9Ad",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": null,
  • "sourceId": null,
  • "sourceUrl": null,
  • "endReason": null,
  • "initialEngagementUrl": null,
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": null,
  • "metadata": null,
  • "configuration": {
    },
  • "text": null
}

updateMetadata

Updates the metadata map for a specific conversation

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

the key-value map of metadata that will be updated. The source for this map has to be the metadata attribute when you read the conversation using metadata in the expand query parameter.

property name*
string

Responses

Request samples

Content type
application/json

Map to update the medata

{
  • "$_version": "d41d8cd98f00b204e9800998ecf8427e",
  • "foo": "bar",
  • "lorem": "ipsum"
}

Response samples

Content type
application/json

Conversation after the metadata update (loaded with expanded metadata)

{
  • "$_type": "ConversationData",
  • "creationTimestamp": 1546300800000,
  • "endTimestamp": null,
  • "id": "AcviDb210C5BoFd6e_79oan",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "topic": null,
  • "scheduledTimestamp": null,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [ ],
  • "botParticipants": [ ],
  • "state": "QUEUED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "en",
  • "tokboxSessionId": null,
  • "visitorData": null,
  • "conversationTemplateId": "ab32em6Be-5le_48rE1F9Ad",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": null,
  • "sourceId": null,
  • "sourceUrl": null,
  • "endReason": null,
  • "initialEngagementUrl": null,
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": null,
  • "metadata": {
    },
  • "configuration": null,
  • "text": null
}

updateText

Updates the text map for a specific conversation

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
conversationId
required
string

the conversation that is updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

the key-value map of translations that will be updated. The source for this map has to be the text attribute when you read the conversation using text in the expand query parameter.

object

Responses

Request samples

Content type
application/json

Map to update the translations

{
  • "$_version": {
    },
  • "com.unblu.conversation.concierge.visitorOnboardingDoneMessage": {
    },
  • "com.unblu.conversation.concierge.visitorOnboardingWelcomeMessage": {
    }
}

Response samples

Content type
application/json

Conversation after the translations update (loaded with expanded text)

{
  • "$_type": "ConversationData",
  • "creationTimestamp": 1546300800000,
  • "endTimestamp": null,
  • "id": "AcviDb210C5BoFd6e_79oan",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "topic": null,
  • "scheduledTimestamp": null,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [ ],
  • "botParticipants": [ ],
  • "state": "QUEUED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "en",
  • "tokboxSessionId": null,
  • "visitorData": null,
  • "conversationTemplateId": "ab32em6Be-5le_48rE1F9Ad",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": null,
  • "sourceId": null,
  • "sourceUrl": null,
  • "endReason": null,
  • "initialEngagementUrl": null,
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": null,
  • "metadata": null,
  • "configuration": null,
  • "text": {
    }
}

CustomActions

Service for Custom Actions

create

Creates a new custom action. You must specify the expanded parameter "actionIcon".

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The custom action to create

$_type
string
Default: "CustomConversationActionData"
Value: "CustomConversationActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionBarPosition
string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

apiEventTriggerFilter
string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

Responses

Callbacks

Request samples

Content type
application/json

Create a new custom action

{
  • "$_type": "CustomConversationActionData",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "key": "conv1-custom-action",
  • "name": "conv1-custom-action-name",
  • "description": "Custom action to be triggered on conversation level",
  • "translations": {
    },
  • "actionIcon": {
    },
  • "state": "ACTIVE",
  • "triggerWebhook": {},
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": false,
  • "sortingOrder": 3,
  • "type": "CONVERSATION",
  • "actionBarPosition": "ALWAYS_VISIBLE",
  • "apiEventTriggerFilter": "ALL"
}

Response samples

Content type
application/json

New custom action

{
  • "$_type": "CustomConversationActionData",
  • "id": "qIzXjL9hRx-aIQVADZdq7Q",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "key": "conv1-custom-action",
  • "name": "conv1-custom-action-name",
  • "description": "Custom action to be triggered on conversation level",
  • "translations": {
    },
  • "actionIcon": {
    },
  • "state": "ACTIVE",
  • "triggerWebhook": {},
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": false,
  • "sortingOrder": 3,
  • "type": "CONVERSATION",
  • "actionBarPosition": "ALWAYS_VISIBLE",
  • "apiEventTriggerFilter": "ALL"
}

Callback payload samples

Callback
Content type
application/json
{
  • "$_type": "CustomConversationActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    }
}

delete

Deletes a custom action. If there's a webhook registration connected to the action, the webhook is also deleted.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
customActionId
required
string

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

read

Returns a CustomActionData by ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
customActionId
required
string
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json

Custom action

{
  • "$_type": "CustomPersonActionData",
  • "id": "ARmohixpSDSj8ypTbyUm-g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "key": "pr1-custom-action",
  • "name": "pr1-custom-action-name",
  • "description": "Custom action to be triggered on person target",
  • "translations": {
    },
  • "actionIcon": "_1dA8a75B-9v3r6Ct4EbADa",
  • "state": "ACTIVE",
  • "triggerWebhook": {},
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": false,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": false,
  • "sortingOrder": 5,
  • "type": "PERSON",
  • "availableForTargetPersonTypes": [
    ],
  • "availableForTargetFrontends": [
    ],
  • "apiEventTriggerFilter": "TARGET_PERSON"
}

search

Search for custom actions

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The query to use for the search

$_type
string
Default: "CustomActionQuery"
Value: "CustomActionQuery"
Array of any (CustomActionSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CustomActionOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "CustomActionQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "CustomActionResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

sendPing

Emits a WebhookPingEvent or PingRequest on the configured webhook/outbound endpoint for the custom action.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
customActionId
required
string

The ID of the custom action

Responses

Response samples

Content type
application/json
{
  • "$_type": "PingResponse",
  • "pingId": "string"
}

update

Updates a custom action. The parameter "actionIcon" may not be null.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The custom action to update

$_type
string
Default: "CustomConversationActionData"
Value: "CustomConversationActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionBarPosition
string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

apiEventTriggerFilter
string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

Responses

Request samples

Content type
application/json

Update custom action request

{
  • "$_type": "CustomMessageActionData",
  • "id": "j3uz3AiSRp6wIB2wGq6L0g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "key": "msg1-custom-action_v2",
  • "name": "msg1-custom-action-name",
  • "description": "Custom action to be triggered on message target",
  • "translations": {
    },
  • "actionIcon": {
    },
  • "state": "ACTIVE",
  • "triggerWebhook": {},
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": false,
  • "triggerVisitorEmbeddedApiEvent": false,
  • "triggerVisitorFloatingApiEvent": false,
  • "triggerAgentMobileSdkEvent": false,
  • "sortingOrder": 5,
  • "type": "MESSAGE",
  • "messageTypes": [
    ],
  • "fileMessageMimeTypeRegex": ".pdf",
  • "invocableForMessagesSentBy": [
    ],
  • "apiEventTriggerFilter": "SENDER"
}

Response samples

Content type
application/json

Updated custom action response

{
  • "$_type": "CustomMessageActionData",
  • "id": "j3uz3AiSRp6wIB2wGq6L0g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 2,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "key": "msg1-custom-action_v2",
  • "name": "msg1-custom-action-name",
  • "description": "Custom action to be triggered on message target",
  • "translations": {
    },
  • "actionIcon": "_1dA8a75B-9v3r6Ct4EbADa",
  • "state": "ACTIVE",
  • "triggerWebhook": {},
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": false,
  • "triggerVisitorEmbeddedApiEvent": false,
  • "triggerVisitorFloatingApiEvent": false,
  • "triggerAgentMobileSdkEvent": false,
  • "sortingOrder": 5,
  • "type": "MESSAGE",
  • "messageTypes": [
    ],
  • "fileMessageMimeTypeRegex": ".pdf",
  • "invocableForMessagesSentBy": [
    ],
  • "apiEventTriggerFilter": "SENDER"
}

DeputyRelationships

Service to manage deputy relationships. A deputy relationship is needed if deputy delegation should be executed for unhandled conversation requests.

create

Creates the given deputy relationship in the system. The ID of the deputy relationship can't be set for create operations, a new one is generated.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The deputy relationship to create

$_type
string
Default: "DeputyRelationship"
Value: "DeputyRelationship"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

agentUserId
string

The agent user id to which the defined deputy belongs to

deputyType
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
deputyId
string

The id of the user or team which is the deputy of the defined agent user

escalationLevel
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

Responses

Request samples

Content type
application/json
{
  • "$_type": "DeputyRelationship",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "agentUserId": "string",
  • "deputyType": "AGENT",
  • "deputyId": "string",
  • "escalationLevel": "LEVEL_1"
}

Response samples

Content type
application/json
{
  • "$_type": "DeputyRelationship",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "agentUserId": "string",
  • "deputyType": "AGENT",
  • "deputyId": "string",
  • "escalationLevel": "LEVEL_1"
}

delete

Deletes the deputy relationship with the given ID

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
deputyRelationshipId
required
string

The ID of the deputy relationship which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

read

Returns the deputy relationship with the given ID

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
deputyRelationshipId
required
string

ID of the deputy relationship which should be returned

Responses

Response samples

Content type
application/json
{
  • "$_type": "DeputyRelationship",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "agentUserId": "string",
  • "deputyType": "AGENT",
  • "deputyId": "string",
  • "escalationLevel": "LEVEL_1"
}

readMultiple

Gets a list of deputy relationships for the given id's

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The id's for which the deputy relationships should be fetched

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "DeputyRelationshipList",
  • "items": [
    ]
}

search

Search for deputy relationships in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "DeputyRelationshipQuery"
Value: "DeputyRelationshipQuery"
Array of any (DeputyRelationshipSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DeputyRelationshipOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "DeputyRelationshipQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "DeputyRelationshipResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the deputy relationship in the system with the given entity.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The deputy relationship to update

$_type
string
Default: "DeputyRelationship"
Value: "DeputyRelationship"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

agentUserId
string

The agent user id to which the defined deputy belongs to

deputyType
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
deputyId
string

The id of the user or team which is the deputy of the defined agent user

escalationLevel
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

Responses

Request samples

Content type
application/json
{
  • "$_type": "DeputyRelationship",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "agentUserId": "string",
  • "deputyType": "AGENT",
  • "deputyId": "string",
  • "escalationLevel": "LEVEL_1"
}

Response samples

Content type
application/json
{
  • "$_type": "DeputyRelationship",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "agentUserId": "string",
  • "deputyType": "AGENT",
  • "deputyId": "string",
  • "escalationLevel": "LEVEL_1"
}

writeAgentDeputies

Batch writes the deputies of an agent. All previous existing deputies of that agent will be replaced.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The deputy relationships for that an agent with each escalation level.

$_type
string
Default: "WriteAgentDeputyRelationshipsBody"
Value: "WriteAgentDeputyRelationshipsBody"
agentUserId
string

The agent user ID for which the deputies should be defined

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_1 deputies

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_2 deputies

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_3 deputies

Responses

Request samples

Content type
application/json
{
  • "$_type": "WriteAgentDeputyRelationshipsBody",
  • "agentUserId": "string",
  • "level1": [
    ],
  • "level2": [
    ],
  • "level3": [
    ]
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

Domains

Service to manage the domains of the account. A domain needs to be defined to use unblu on it.

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The entity to create

$_type
string
Default: "Domain"
Value: "Domain"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

domainName
string

The name/address of the domain. It should normally contain a protocol (e.g. http:// or https://) and the url of the domain (e.g. www.unblu.com). Maximum of 250 characters. Can not be omitted. 250 characters.

Responses

Request samples

Content type
application/json
{
  • "$_type": "Domain",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "domainName": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Domain",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "domainName": "string"
}

delete

Deletes the domain with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
domainId
required
string

The ID of the domain which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

read

Returns the domain with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
domainId
required
string

ID of the domain which should be returned

Responses

Response samples

Content type
application/json
{
  • "$_type": "Domain",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "domainName": "string"
}

readMultiple

Gets a list of domains with the given IDs. IDs that can't be found are ignored.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The IDs of the domains to fetch

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "DomainList",
  • "items": [
    ]
}

search

Search for domains in the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "DomainQuery"
Value: "DomainQuery"
Array of any (DomainSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DomainOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "DomainQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "DomainResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the entity in the system with the given entity.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The entity to update

$_type
string
Default: "Domain"
Value: "Domain"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

domainName
string

The name/address of the domain. It should normally contain a protocol (e.g. http:// or https://) and the url of the domain (e.g. www.unblu.com). Maximum of 250 characters. Can not be omitted. 250 characters.

Responses

Request samples

Content type
application/json
{
  • "$_type": "Domain",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "domainName": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Domain",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "domainName": "string"
}

ExternalMessengerContacts

Storage service to manage ExternalMessengerContacts

create

Creates an external messenger contact.

The configuration property com.unblu.permission.roleAllowed.manageExternalMessengerContacts defines which user roles the endpoint is available to.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

to create

$_type
string
Default: "ExternalMessengerContact"
Value: "ExternalMessengerContact"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

The name of the contact

description
string

The description for the contact to give more information what the source ID is about. E.g. private or company phone number.

externalMessengerChannelId
string

The external messenger channel ID through which the contact is communicating

sourceId
string

An ID to identify the contact inside the external messenger system

personId
string

The person ID in Unblu that the contact is linked with

Responses

Request samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

delete

Deletes an external messenger contact. This ends all the contact's participations in conversations.

The configuration property com.unblu.permission.roleAllowed.manageExternalMessengerContacts defines which user roles this endpoint is available to.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
externalMessengerContactId
required
string

The ID of the external messenger contact to delete

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

migrateContactPersonWithAllConnectedConversations

Changes the linked person of the external messenger contact. All conversations the external messenger contact participated in are migrated to the new person, provided the conversation allows a user change. Allowing it means the configuration property com.unblu.conversation.lifecycle.allowMigrationOnExternalMessengerContactMigration isn't set to EConversationReplaceUserOnLoginMode.NEVER on the conversation. Other conversations not linked to the external messenger contact and just having the same person used, e.g. direct conversations without an external messenger, will not be migrated.

If the new person ID matches the current person ID, calling this endpoint doesn't do anything.

The configuration property com.unblu.permission.roleAllowed.manageExternalMessengerContacts defines which user roles the endpoint is available to.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
externalMessengerContactId
required
string

The ID of the external messenger contact to update

Request Body schema: application/json
newPersonId
string

The new person ID to set on the external messenger contact

Responses

Request samples

Content type
application/json
{
  • "newPersonId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

migrateContactPersonWithGivenConversations

Changes the linked person of the external messenger contact and migrates the list of conversations passed in to the new person, provided the conversation allows a user change. Allowing it means the configuration property com.unblu.conversation.lifecycle.allowMigrationOnExternalMessengerContactMigration isn't set to EConversationReplaceUserOnLoginMode.NEVER.

For all other conversations the contact is part of, their participation is removed.

If the new person ID matches the current person ID, calling this endpoint doesn't do anything.

The given conversation Ids have to be in the list of none ended conversation where the external messenger contact is a participant. If not, an error will be returned before doing any migration.

The configuration property com.unblu.permission.roleAllowed.migrateExternalMessengerContacts defines which user roles the endpoint is available to.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
externalMessengerContactId
required
string

The ID of the external messenger contact to update

query Parameters
newPersonId
string

The new person ID to set on the external messenger contact

Request Body schema: application/json

The conversations that should be migrated. The conversations must not be ended and the passed in external messenger contact must be a participant.

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

read

Returns the external messenger contact with the given ID.

The configuration property com.unblu.permission.roleAllowed.manageExternalMessengerContacts defines which user roles the endpoint is available to.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
externalMessengerContactId
required
string

The ID of the external messenger contact to retrieve

Responses

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

readMultiple

readMultiple operation

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContactList",
  • "items": [
    ]
}

search

Search for ExternalMessengerContacts in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "ExternalMessengerContactQuery"
Value: "ExternalMessengerContactQuery"
Array of any (ExternalMessengerContactSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ExternalMessengerContactOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContactQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContactResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates an external messenger contact.

The configuration property com.unblu.permission.roleAllowed.manageExternalMessengerContacts defines which user roles the endpoint is available to.

Note: This can't be used to update the personId. To update the link to a person, use the endpointmigrateContactPersonWithAllConnectedConversations or migrateContactPersonWithGivenConversations.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

to update

$_type
string
Default: "ExternalMessengerContact"
Value: "ExternalMessengerContact"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

The name of the contact

description
string

The description for the contact to give more information what the source ID is about. E.g. private or company phone number.

externalMessengerChannelId
string

The external messenger channel ID through which the contact is communicating

sourceId
string

An ID to identify the contact inside the external messenger system

personId
string

The person ID in Unblu that the contact is linked with

Responses

Request samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

ExternalMessengers

Manages all types of ExternalMessengerChannel and can be used to send messages from external messengers to a Collaboration Server conversation

create

Creates a new external messenger channel

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The channel which should be created

$_type
string
Default: "CustomExternalMessengerChannel"
Value: "CustomExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can not be omitted.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the external messenger are dispatched.

outboundSupported
boolean

Defines if outbound requests to create external messenger contacts or conversations are supported

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

contactIdentifierFieldName
string

The name of the field that contacts can be identified by in the external messenger. This can be an email address, a phone number, a number, or some other identifier.

contactIdentifierFieldType
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

object

The translations for the contact identifier field

supportsMultipleConversationsPerContact
boolean

The channel supports multiple conversations for a contact. If false, there can be only one active conversation for that contact.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Callbacks

Request samples

Content type
application/json

Create a new external messenger channel

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "name": "custom name",
  • "description": "custom description",
  • "channelIcon": null,
  • "sourceId": "custom-sourceId",
  • "type": "CUSTOM",
  • "webhookEndpoint": "http://custom/endpoint",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "custom-secret",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": null,
  • "outboundSupported": false,
  • "outboundTimeoutMillis": 5000,
  • "contactIdentifierFieldName": "",
  • "contactIdentifierFieldType": "OTHER",
  • "contactIdentifierTranslations": null,
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": null
}

Response samples

Content type
application/json

New external messenger channel

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "cne9hsne4rgxa2es6MenC8d",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "custom name",
  • "description": "custom description",
  • "channelIcon": "custom",
  • "sourceId": "custom-sourceId",
  • "type": "CUSTOM",
  • "webhookEndpoint": "http://custom/endpoint",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "custom-secret",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": false,
  • "outboundSupported": false,
  • "outboundTimeoutMillis": 5000,
  • "contactIdentifierFieldName": "",
  • "contactIdentifierFieldType": "OTHER",
  • "contactIdentifierTranslations": { },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": null
}

Callback payload samples

Callback
Content type
application/json
{
  • "$_type": "ExternalMessengerMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "sourceId": "string",
  • "externalMessengerChannelId": "string",
  • "conversationId": "string"
}

delete

Deletes an external messenger channel. All conversations connected to this channel will be ended as soon as they activated again

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string

The ID of the channel which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByName

Returns the channel for the given name

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
name
string

The name of the external messenger channel

expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json

External messenger channel

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "cne9hsne4rgxa2es6MenC8d",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "123 name",
  • "description": "123 description",
  • "channelIcon": "custom",
  • "sourceId": "123-sourceId",
  • "type": "CUSTOM",
  • "webhookEndpoint": "http://123/endpoint",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "123-secret",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": false,
  • "outboundSupported": false,
  • "outboundTimeoutMillis": 5000,
  • "contactIdentifierFieldName": "",
  • "contactIdentifierFieldType": "OTHER",
  • "contactIdentifierTranslations": { },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": null
}

messageDelivered

Marks a message as delivered to the given person. If no person is specified, it will be marked as delivered to all persons which are connected via the external messenger.
If the message is also read, use directly the end point messageRead as it will mark it as delivered too.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string

The ID of the custom external messenger channel

Request Body schema: application/json
conversationId
string

The ID of the conversation

messageId
string

The ID of the message that should be marked as delivered in the conversation

externalMessengerContactId
string

The ID of the ExternalMessengerContact who received the message. If null, it's assumed that the message was delivered to all persons connected through the external messenger.

Responses

Request samples

Content type
application/json

Mark a message as delivered

{
  • "conversationId": "AcviDb210C5BoFd6e_79oan",
  • "messageId": "mGesYagET_2GipaDGinA9A",
  • "externalMessengerContactId": "SE-c3SSNQOWPi9_y6sNsnQ"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

messageRead

Marks a message as read by the given person. If no person is specified, it will be marked as read by all persons which are connected via the external messenger.
This will also mark the message as delivered, if it was not already.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string

The ID of the custom external messenger channel

Request Body schema: application/json
conversationId
string

The ID of the conversation

messageId
string

The ID of the message that should be marked as read in the conversation

externalMessengerContactId
string

The ID of the ExternalMessengerContact who read the message. If null, it's assumed that the message has been read by everyone connected through the external messenger.

Responses

Request samples

Content type
application/json

Mark a message as delivered

{
  • "conversationId": "AcviDb210C5BoFd6e_79oan",
  • "messageId": "mGesYagET_2GipaDGinA9A",
  • "externalMessengerContactId": "SE-c3SSNQOWPi9_y6sNsnQ"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

messageSendFailed

Indicates that the message couldn't be sent to the external messenger. The following fail states may be set:

  • ESendFailState.RETRYABLE: If retrying to send the message in the future may resolve the issue, for example, because there was a temporary connection failure. In such cases, the user will be provided with a UI to retry sending the message
  • ESendFailState.TERMINAL: If no number of retries would resolve the issue, for example because the underlying conversation no longer exists in the external messenger.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string

The ID of the custom external messenger channel

Request Body schema: application/json
conversationId
string

The ID of the conversation

messageId
string

The ID of the message from the conversation, which should be set to the failed state

failState
string (ESendFailState)
Enum: "RETRYABLE" "TERMINAL"
enum-descriptions: ["RETRYABLE: Message could not be sent, but it is not terminal and can be tried again","TERMINAL: Message could not be sent and it will not be possible to send it again"]

The failed state of a message which was sent to an external messenger

failureText
string

A text that describes why the message couldn't be sent to the external messenger. The text is displayed to the user.

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "messageId": "string",
  • "failState": "RETRYABLE",
  • "failureText": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

messageSentSuccessfully

Indication that a message was successfully sent to the external messenger.

This will be visualized in the Unblu UI.

Note: This does not mean the message has been delivered to or read by the recipient. These states can be updated using themessageDelivered and messageRead services.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string

The ID of the custom external messenger channel

Request Body schema: application/json
conversationId
string

The ID of the conversation

messageId
string

The ID of the message that was successfully sent to the conversation

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "messageId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

read

Returns the channel with the given ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string

The ID of the external messenger channel

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json

External messenger channel

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "cne9hsne4rgxa2es6MenC8d",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "custom name",
  • "description": "custom description",
  • "channelIcon": "custom",
  • "sourceId": "custom-sourceId",
  • "type": "CUSTOM",
  • "webhookEndpoint": "http://custom/endpoint",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "custom-secret",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": false,
  • "outboundSupported": false,
  • "outboundTimeoutMillis": 5000,
  • "contactIdentifierFieldName": "",
  • "contactIdentifierFieldType": "OTHER",
  • "contactIdentifierTranslations": { },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": null
}

search

Search for external messenger channels in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "ExternalMessengerChannelQuery"
Value: "ExternalMessengerChannelQuery"
Array of any (ExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "ExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "ExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

searchCustom

Search for custom external messenger channels in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "CustomExternalMessengerChannelQuery"
Value: "CustomExternalMessengerChannelQuery"
Array of any (CustomExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CustomExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "CustomExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "CustomExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

searchSms

Search for SMS external messenger channels in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "SmsExternalMessengerChannelQuery"
Value: "SmsExternalMessengerChannelQuery"
Array of any (SmsExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (SmsExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "SmsExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "SmsExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

sendMessage

Send a message to a conversation. The corresponding conversation has to be connected to the custom channel that the message is being sent to.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string
Request Body schema: application/json

The message to send to the conversation.

$_type
string
Default: "ExternalMessengerPostMessage"
Value: "ExternalMessengerPostMessage"
conversationId
string

The id of the conversation to which this message belongs to

senderExternalMessengerContactId
string

ID of the ExternalMessengerContact that sent the message.

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If it is null, all active participations are recipients

sourceId
string

An id identifying the source of the external message. Typically the id of the message in the other messaging system

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

Responses

Request samples

Content type
application/json
Example

Send text message containing fallback text and quick replies to external messenger channel

{
  • "$_type": "ExternalMessengerPostMessage",
  • "conversationId": "AcviDb210C5BoFd6e_79oan",
  • "senderExternalMessengerContactId": "SE-c3SSNQOWPi9_y6sNsnQ",
  • "recipientPersonIds": null,
  • "sourceId": "message-source",
  • "replyToMessageId": null,
  • "messageData": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "SendMessageResult",
  • "messageId": "string"
}

sendPing

Emits a PingRequest on the configured outbound endpoint for the custom channel.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
channelId
required
string

The ID of an external messenger channel of type EExternalMessengerChannelType.CUSTOM

Responses

Response samples

Content type
application/json

Ping response from the external messenger channel

{
  • "$_type": "PingResponse",
  • "pingId": "CD-Wj4RyTVOhx0oC_PCX_g"
}

update

Updates an external messenger channel

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The channel which should be updated

$_type
string
Default: "CustomExternalMessengerChannel"
Value: "CustomExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can not be omitted.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the external messenger are dispatched.

outboundSupported
boolean

Defines if outbound requests to create external messenger contacts or conversations are supported

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

contactIdentifierFieldName
string

The name of the field that contacts can be identified by in the external messenger. This can be an email address, a phone number, a number, or some other identifier.

contactIdentifierFieldType
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

object

The translations for the contact identifier field

supportsMultipleConversationsPerContact
boolean

The channel supports multiple conversations for a contact. If false, there can be only one active conversation for that contact.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json

Update a external messenger channel

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "cne9hsne4rgxa2es6MenC8d",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "Updated Name ",
  • "description": "custom description",
  • "channelIcon": "custom",
  • "sourceId": "custom-sourceId",
  • "type": "CUSTOM",
  • "webhookEndpoint": "http://custom/endpoint",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "custom-secret",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": false,
  • "outboundSupported": false,
  • "outboundTimeoutMillis": 10000,
  • "contactIdentifierFieldName": "",
  • "contactIdentifierFieldType": "OTHER",
  • "contactIdentifierTranslations": { },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": null
}

Response samples

Content type
application/json

Updated external messenger channel

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "cne9hsne4rgxa2es6MenC8d",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 2,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "Updated Name ",
  • "description": "custom description",
  • "channelIcon": "custom",
  • "sourceId": "custom-sourceId",
  • "type": "CUSTOM",
  • "webhookEndpoint": "http://custom/endpoint",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "custom-secret",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": false,
  • "outboundSupported": false,
  • "outboundTimeoutMillis": 10000,
  • "contactIdentifierFieldName": "",
  • "contactIdentifierFieldType": "OTHER",
  • "contactIdentifierTranslations": { },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": null
}

FileUploadInterceptors

Service to manage file upload interceptors. File upload interceptors also use this service to interact with Unblu.

approveFileUpload

Approves a file upload for which approval was requested through a file_upload_interceptor.new_file webhook.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
token
string

The token used to identify the file this action applies to. The token is received when approval is requested through a file_upload_interceptor.new_file webhook. Each file upload approval request contains a unique token.

Responses

Request samples

Content type
application/json
{
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

create

Creates a new file upload interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The file upload interceptor to create

$_type
string
Default: "FileUploadInterceptorData"
Value: "FileUploadInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the file upload interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the file upload interceptor. Maximum length of 500 characters. Optional.

order
integer <int64>

Order of execution of the file upload interceptor among all the file upload interceptors configured in the account. Mandatory.

mimeTypeRegex
string

Regular expression used to determine if the interceptor must be used for a particular MIME type. Leave it empty to match all MIME types.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.FILE_UPLOAD_INTERCEPTOR_NEW_FILE: On each file uploaded to a conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event. Maximum length of 4000 characters.

Responses

Callbacks

Request samples

Content type
application/json

Create a new file upload interceptor

{
  • "$_type": "FileUploadInterceptorData",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "name": "test-file-upload-interceptor-1",
  • "description": null,
  • "order": 3,
  • "mimeTypeRegex": null,
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "https://test.unblu.com",
  • "webhookApiVersion": "V4",
  • "webhookSecret": null
}

Response samples

Content type
application/json

New file upload interceptor

{
  • "$_type": "FileUploadInterceptorData",
  • "id": "VhSaA_3wThCuS_AOKxC0VA",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-file-upload-interceptor-1",
  • "description": null,
  • "order": 3,
  • "mimeTypeRegex": null,
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "https://test.unblu.com",
  • "webhookApiVersion": "V4",
  • "webhookSecret": null
}

Callback payload samples

Callback
POST: file_upload_interceptor.new_file
Content type
application/json
{
  • "$_type": "InterceptorNewFileEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "apiToken": "string",
  • "name": "string",
  • "mimeType": "string",
  • "length": 0,
  • "downloadLink": "string",
  • "source": "BOT",
  • "person": {
    },
  • "conversationId": "string"
}

delete

Deletes an existing file upload interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
interceptorId
required
string

The ID of the file upload interceptor which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByName

Searches for a file upload interceptor with the given name

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
name
string

The name of the file upload interceptor

Responses

Response samples

Content type
application/json

File upload interceptor

{
  • "$_type": "FileUploadInterceptorData",
  • "id": "VhSaA_3wThCuS_AOKxC0VA",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-file-upload-interceptor-1",
  • "description": null,
  • "order": 1,
  • "mimeTypeRegex": null,
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "http://test.webhook.com",
  • "webhookApiVersion": "V4",
  • "webhookSecret": null
}

read

Reads an existing file upload interceptor.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
interceptorId
required
string

The ID of the file upload interceptor to read

Responses

Response samples

Content type
application/json

File upload interceptor

{
  • "$_type": "FileUploadInterceptorData",
  • "id": "VhSaA_3wThCuS_AOKxC0VA",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-file-upload-interceptor-1",
  • "description": null,
  • "order": 1,
  • "mimeTypeRegex": null,
  • "webhookStatus": "INACTIVE",
  • "webhookEndpoint": "http://test.webhook.com",
  • "webhookApiVersion": "V4",
  • "webhookSecret": null
}

rejectFileUpload

Rejects a file upload for which approval was requested through a file_upload_interceptor.new_file webhook.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
token
string

The token used to identify the file this action applies to. The token is received when approval is requested through a file_upload_interceptor.new_file webhook. Each file upload approval request contains a unique token.

reason
string

A text explaining why the file upload was rejected. The text is displayed to end users as it was transmitted.

Responses

Request samples

Content type
application/json
{
  • "token": "string",
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

search

Searches for file upload interceptors in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "FileUploadInterceptorQuery"
Value: "FileUploadInterceptorQuery"
Array of any (FileUploadInterceptorSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (FileUploadInterceptorOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "FileUploadInterceptorQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "FileUploadInterceptorResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

sendPing

Emits a WebhookPingEvent on the configured webhook for the given file upload interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
interceptorId
required
string

The ID of the file upload interceptor

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

update

Updates an existing file upload interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "FileUploadInterceptorData"
Value: "FileUploadInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the file upload interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the file upload interceptor. Maximum length of 500 characters. Optional.

order
integer <int64>

Order of execution of the file upload interceptor among all the file upload interceptors configured in the account. Mandatory.

mimeTypeRegex
string

Regular expression used to determine if the interceptor must be used for a particular MIME type. Leave it empty to match all MIME types.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.FILE_UPLOAD_INTERCEPTOR_NEW_FILE: On each file uploaded to a conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event. Maximum length of 4000 characters.

Responses

Request samples

Content type
application/json
{
  • "$_type": "FileUploadInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "order": 0,
  • "mimeTypeRegex": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "FileUploadInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "order": 0,
  • "mimeTypeRegex": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

Global

With this service the global Unblu system can be managed.

For super-admin the Global object can be expanded to set configuration or translations.

getRecordedMinutes

Returns the total length of all conversation recordings made between the given dates over all accounts. If there were no recordings in the given time, the return value is 0.


required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
fromTime
integer <int64>

Date from which to count the conversation recording length. The value is rounded to the beginning of the day.

toTime
integer <int64>

Date to which to count the conversation recording length. The value is rounded to the end of the day.

Responses

Response samples

Content type
application/json
{
  • "$_type": "RecordedMinutesData",
  • "recordedMinutes": 0
}

installLicense

Install a new license in the global server.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: text/plain

licenseContent

string

Responses

Response samples

Content type
application/json
{
  • "$_type": "GlobalData",
  • "serverIdentifier": "string",
  • "currentLicense": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

ping

Checks whether the system is ready to receive requests. It returns a 2xx HTTP status if the system is ready or a 503 status otherwise.

required-entry-path: PUBLIC
required-role: ["ANONYMOUS_USER"]
Authorizations:

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

productVersion

productVersion operation

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:

Responses

Response samples

Content type
application/json
{
  • "$_type": "ProductVersion",
  • "productVersion": "string",
  • "productGuid": "string"
}

read

Returns the GlobalData object containing information about the system (license, settings).

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "GlobalData",
  • "serverIdentifier": "string",
  • "currentLicense": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

removeLicense

Remove a license from the global server if it was previously added via the UI or the installLicense WebAPI call.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "GlobalData",
  • "serverIdentifier": "string",
  • "currentLicense": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

update

Updates the GlobalData object. Since the properties of the Global object are read-only, this methods only make sense when used with the expand parameter.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPER_ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "GlobalData"
Value: "GlobalData"
serverIdentifier
string

A unique id identifying an Unblu installation. This is read only information it will be set by the server anyway.

object (LicenseData)

Entity representing the current installed license

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "GlobalData",
  • "serverIdentifier": "string",
  • "currentLicense": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "GlobalData",
  • "serverIdentifier": "string",
  • "currentLicense": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Invitations

Service to manage conversation invitations

addSecondaryInvitationTarget

Add a secondary invitation target to the given invitation. This target agent is informed additionally to the main target agent and can accept the invitation in their place.

  • The endpoint may only be called for conversation requests directed at a specific agent.
  • The secondary target must be different from the main target of the invitation.
  • Each secondary invitation target may only added to an invitation to a particular conversation once. The same secondary invitation target can, however, be added to invitations to multiple conversations.
If any of these prerequisites are violated, the call to the endpoint returns an error response code. To cancel a secondary invitation, seecancelSecondaryInvitationTarget

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
invitationId
required
string

The invitation that the secondary target should be added to

Request Body schema: application/json
personId
string

The person who should be informed of the invitation additionally

Responses

Request samples

Content type
application/json
{
  • "personId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

cancelSecondaryInvitationTarget

Cancels the invitation sent to a secondary target. The secondary target agent will no longer be able to accept the invitation.
See also addSecondaryInvitationTarget

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
invitationId
required
string

The invitation the secondary target belongs to

Request Body schema: application/json
personId
string

The person ID of the secondary invitation target for whom to cancel the invitation

Responses

Request samples

Content type
application/json
{
  • "personId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

forwardConversationToAgent

Forwards a conversation to an agent. The current assigned agent stays in the conversation until the invitation is accepted. Once the invited agent accepts the invitation, they join the conversation as the assigned agent, and the previous assigned agent is removed from the conversation.

If there is already a forwarding invitation for the conversation, that invitation is revoked.
If the conversation is in the queue, the assignment request invitation is revoked.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

Conversation id.

agentPersonId
string

Person ID of the agent.

comment
string

Invitation comment that will be displayed to the invited agent. Optional.

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "agentPersonId": "string",
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

forwardConversationToTeam

Forwards a conversation to a team. The current assigned agent remains in the conversation until the invitation is accepted. Once an agent of the invited team or its parent teams accepts the invitation, they join the conversation as its assigned agent, and the previous assigned agent is removed from the conversation.

If there is already a forwarding invitation for the conversation, that invitation is revoked.
If the conversation is in the queue, the assignment request invitation is revoked.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

Conversation id.

teamId
string

Team id.

comment
string

Invitation comment. Optional.

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "teamId": "string",
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

inviteAgentToConversation

Creates an invitation to the given conversation for an agent. If the agent accepts the invitation, they join the conversation as a secondary agent. If a conflicting invitation already exists, an error is returned.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

Conversation ID

agentPersonId
string

Person ID of the invited agent

comment
string

Invitation comment. Optional.

joinHidden
boolean

Flag deciding whether accepting the invitation resolves into a hidden participation. Optional (false by default).

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "agentPersonId": "string",
  • "comment": "string",
  • "joinHidden": true
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

inviteAnonymousVisitorToConversationWithEmail

Invites a visitor to join a conversation by email. Calling this method sends an email to the email address provided containing a link that opens the conversation in the Visitor Desk.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

Conversation id.

email
string

Email address that will be applied to the visitor who accepts the invitation if they are anonymous and haven't provided an email address. Optional.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "email": "string",
  • "nickname": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

inviteAnonymousVisitorToConversationWithPin

Invites a visitor to join a conversation using a PIN. The PIN can be found in the "token" field of the returned invitation. It can be redeemed by entering it in the embedded or floating site integration UI.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

Conversation id.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "nickname": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

inviteTeamToConversation

Creates an invitation for a team for the given conversation. The invitation can be redeemed once by any agent in either the invited team or one of its parent teams. The agent who redeeems the invitation joins the conversation as a secondary agent. If a conflicting invitation already exists, an error is returned.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

Conversation ID

teamId
string

Team ID

comment
string

Invitation comment. Optional.

joinHidden
boolean

Flag deciding whether accepting the invitation resolves into a hidden participation. Optional (false by default).

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "teamId": "string",
  • "comment": "string",
  • "joinHidden": true
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

read

Returns the invitation with the given ID.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
invitationId
required
string

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

renewPin

Renews the PIN of an anonymous visitor PIN invitation. An error is returned if the method is called for any other type of invitation.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
invitationId
required
string

Invitation id.

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

requeueConversation

Return the given conversation to the queue by creating an assignment request invitation.
This is only possible for conversations that were initiated by the visitor, that is, the conversation's initial engagement type must be a request.

Optionally, existing agent participants can be removed from the conversation.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
conversationId
string

Conversation ID

agentRemovalType
string (EAgentRemovalType)
Enum: "KEEP_AGENTS" "REMOVE_ASSIGNED_AGENT" "REMOVE_ALL_AGENTS"
enum-descriptions: ["KEEP_AGENTS","REMOVE_ASSIGNED_AGENT","REMOVE_ALL_AGENTS"]

Responses

Request samples

Content type
application/json
{
  • "conversationId": "string",
  • "agentRemovalType": "KEEP_AGENTS"
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

revoke

Revokes the invitation making it impossible to accept it anymore.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
invitationId
required
string

Invitation id.

Responses

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

search

Search for invitations in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "ConversationInvitationQuery"
Value: "ConversationInvitationQuery"
Array of any (ConversationInvitationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationInvitationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "ConversationInvitationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "ConversationInvitationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

MessageInterceptors

Service to manage message interceptors. Some operations are only valid for some types of message interceptor. Where that is the case, the operation's documentation states which types it applies to.

create

Creates a new message interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The message interceptor to create

$_type
string
Default: "ExternalMessageInterceptorData"
Value: "ExternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
enum-descriptions: ["EXTERNAL","INTERNAL"]
webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.MESSAGE_INTERCEPTOR_NEW_MESSAGE: On each message in the conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event

Maximum length of 4000 characters.

Responses

Callbacks

Request samples

Content type
application/json
Example

create a new external message interceptor

{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "name": "Test external message interceptor",
  • "description": "Test description",
  • "messageFilter": "VISITOR",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "INACTIVE",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "hash-secret"
}

Response samples

Content type
application/json
Example

create a new external message interceptor

{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "_LFMquN7Qy-5K9rSWtpL_g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "Test external message interceptor",
  • "description": "Test description",
  • "messageFilter": "VISITOR",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "INACTIVE",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "hash-secret"
}

Callback payload samples

Callback
Content type
application/json
{
  • "$_type": "InterceptorNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageApiToken": "string",
  • "conversationMessage": {
    },
  • "conversationLanguage": "string"
}

delete

Deletes an existing message interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
interceptorId
required
string

The ID of the message interceptor which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByName

Searches for an existing message interceptor with the given name

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
name
string

The name of the message interceptor

Responses

Response samples

Content type
application/json
Example
{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

read

Reads an existing message interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
interceptorId
required
string

The ID of the message interceptor

Responses

Response samples

Content type
application/json
Example
{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

search

Searches for message interceptors in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "MessageInterceptorQuery"
Value: "MessageInterceptorQuery"
Array of any (MessageInterceptorSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (MessageInterceptorOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "MessageInterceptorQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "MessageInterceptorResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

sendPing

Emits a WebhookPingEvent or PingRequest on the configured webhook/outbound endpoint for the external message interceptor.

This operation is only available for ExternalMessageInterceptor entities.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
interceptorId
required
string

The ID of an external message interceptor

Responses

Response samples

Content type
application/json
{
  • "$_type": "PingResponse",
  • "pingId": "string"
}

update

Updates an existing message interceptor

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The message interceptor to update

$_type
string
Default: "ExternalMessageInterceptorData"
Value: "ExternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
enum-descriptions: ["EXTERNAL","INTERNAL"]
webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.MESSAGE_INTERCEPTOR_NEW_MESSAGE: On each message in the conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event

Maximum length of 4000 characters.

Responses

Request samples

Content type
application/json
Example

update an existing external message interceptor

{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "_LFMquN7Qy-5K9rSWtpL_g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "Test external message interceptor",
  • "description": "New description",
  • "messageFilter": "VISITOR",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "INACTIVE",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "hash-secret"
}

Response samples

Content type
application/json
Example

update an existing external message interceptor

{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "_LFMquN7Qy-5K9rSWtpL_g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 2,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "Test external message interceptor",
  • "description": "New description",
  • "messageFilter": "VISITOR",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "INACTIVE",
  • "webhookApiVersion": "V4",
  • "webhookSecret": "hash-secret"
}

NamedAreas

Service to manage named areas.

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to create

$_type
string
Default: "NamedArea"
Value: "NamedArea"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the named area. Maximum of 250 characters. Can not be omitted.

description
string

Description of the named area. Maximum of 500 characters. Can be omitted.

type
string (ENamedAreaType)
Enum: "META_TAG" "DOMAIN"
enum-descriptions: ["META_TAG: A meta tag","DOMAIN: a (sub)domain"]

Type of a named area

siteId
string

Meta tag name if the type is META_TAG or domain name if the type is DOMAIN. If the type is META_TAG, it can be omitted during creation and a random ID will generated for it. Modification of this attribute is not allowed. Maximum of 250 characters.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json

Create a NamedArea with translations of the name and description for it

{
  • "$_type": "NamedArea",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "avatar": null,
  • "name": "Name_with-translations-test",
  • "description": "Desc_with-translations-test",
  • "type": "META_TAG",
  • "siteId": "with-translations-test",
  • "translations": {
    },
  • "configuration": null,
  • "text": null,
  • "metadata": null
}

Response samples

Content type
application/json

Create a NamedArea with translations of the name and description for it

{
  • "$_type": "NamedArea",
  • "id": "6NF_2m71da0DBrA93aedcb5",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "avatar": null,
  • "name": "Name_with-translations-test",
  • "description": "Desc_with-translations-test",
  • "type": "META_TAG",
  • "siteId": "with-translations-test",
  • "translations": {
    },
  • "configuration": null,
  • "text": null,
  • "metadata": null
}

delete

Deletes the named area with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
namedAreaId
required
string

The ID of the named area which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

read

Returns the named area with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
namedAreaId
required
string

ID of the named area which should be returned

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "NamedArea",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "description": "string",
  • "type": "META_TAG",
  • "siteId": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

readMultiple

Gets a list of named areas for the given id's

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The id's for which the named areas should be fetched

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "NamedAreaList",
  • "items": [
    ]
}

search

Search for named areas in the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "NamedAreaQuery"
Value: "NamedAreaQuery"
Array of any (NamedAreaSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (NamedAreaOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "NamedAreaQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "NamedAreaResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the entity in the system with the given entity.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to update

$_type
string
Default: "NamedArea"
Value: "NamedArea"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the named area. Maximum of 250 characters. Can not be omitted.

description
string

Description of the named area. Maximum of 500 characters. Can be omitted.

type
string (ENamedAreaType)
Enum: "META_TAG" "DOMAIN"
enum-descriptions: ["META_TAG: A meta tag","DOMAIN: a (sub)domain"]

Type of a named area

siteId
string

Meta tag name if the type is META_TAG or domain name if the type is DOMAIN. If the type is META_TAG, it can be omitted during creation and a random ID will generated for it. Modification of this attribute is not allowed. Maximum of 250 characters.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "NamedArea",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "description": "string",
  • "type": "META_TAG",
  • "siteId": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "NamedArea",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "description": "string",
  • "type": "META_TAG",
  • "siteId": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

PersonLabels

Storage service for PersonLabel

create

Creates the given person label. The ID of the person label is generated automatically. Any ID provided in the person label entity is ignored.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The person label to create

$_type
string
Default: "PersonLabel"
Value: "PersonLabel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the person label. Maximum length of 250 characters. Mandatory.
If the label is a scoped label, the name consists of the scope name and the value of this particular label, separated by "::", for example "upsell potential::high".

description
string

Description of the person label. Maximum length of 500 characters. Can be omitted.

color
string

Color of the person label, specified in a format compatible with CSS. Maximum length of 50 characters. Mandatory.

settableOn
Array of strings (EPersonLabelTargetType)
Items Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"

The person types the label may be set on

readableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can read the label on a person via API. If this is not set only admins are able to read this label.

settableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can set the label on a person. If this is not set only admins are able to set this label.

displayedToRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles for which the label is displayed to in the UIs. If this is not set only admins are able to see this label in the UI.

Responses

Request samples

Content type
application/json

Create a new person label

{
  • "$_type": "PersonLabel",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "name": "visitor_label",
  • "description": "description of the label",
  • "color": "white",
  • "settableOn": [
    ],
  • "readableByRoles": [
    ],
  • "settableByRoles": [
    ],
  • "displayedToRoles": [
    ]
}

Response samples

Content type
application/json

New person label

{
  • "$_type": "PersonLabel",
  • "id": "e1ld4sPpSRGJHGREsc--PQ",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "visitor_label",
  • "description": "description of the label",
  • "color": "white",
  • "settableOn": [
    ],
  • "readableByRoles": [
    ],
  • "settableByRoles": [
    ],
  • "displayedToRoles": [
    ]
}

delete

Deletes the person label with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
personLabelId
required
string

The ID of the person label to delete

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByNames

Retrieves a list of the person labels with the names provided. Names that don't match any person labels are ignored.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The names of the person labels to fetch

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "PersonLabelList",
  • "items": [
    ]
}

getByScope

Retrieves the person labels found for the given scope, or an empty list if none are found

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json
scope
string

The scope to search for labels in

Responses

Request samples

Content type
application/json
{
  • "scope": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "PersonLabelList",
  • "items": [
    ]
}

read

Returns the person label with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
personLabelId
required
string

The ID of the person label to return

Responses

Response samples

Content type
application/json
{
  • "$_type": "PersonLabel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "color": "string",
  • "settableOn": [
    ],
  • "readableByRoles": [
    ],
  • "settableByRoles": [
    ],
  • "displayedToRoles": [
    ]
}

readMultiple

Retrieves a list of person labels for the given IDs. IDs that don't match any person labels are ignored.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The IDs for which to fetch the person labels

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "PersonLabelList",
  • "items": [
    ]
}

search

Searches for person labels

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The query to use for the search

$_type
string
Default: "PersonLabelQuery"
Value: "PersonLabelQuery"
Array of any (PersonLabelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonLabelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonLabelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "PersonLabelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the person label in the system with the given entity. The update fails if no person label exists with the ID provided.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
Request Body schema: application/json

The details to update the person label with

$_type
string
Default: "PersonLabel"
Value: "PersonLabel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the person label. Maximum length of 250 characters. Mandatory.
If the label is a scoped label, the name consists of the scope name and the value of this particular label, separated by "::", for example "upsell potential::high".

description
string

Description of the person label. Maximum length of 500 characters. Can be omitted.

color
string

Color of the person label, specified in a format compatible with CSS. Maximum length of 50 characters. Mandatory.

settableOn
Array of strings (EPersonLabelTargetType)
Items Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"

The person types the label may be set on

readableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can read the label on a person via API. If this is not set only admins are able to read this label.

settableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can set the label on a person. If this is not set only admins are able to set this label.

displayedToRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles for which the label is displayed to in the UIs. If this is not set only admins are able to see this label in the UI.

Responses

Request samples

Content type
application/json

Update a person label

{
  • "$_type": "PersonLabel",
  • "id": "e1ld4sPpSRGJHGREsc--PQ",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "label-for-update",
  • "description": "updated description",
  • "color": "white",
  • "settableOn": [
    ],
  • "readableByRoles": [
    ],
  • "settableByRoles": [
    ],
  • "displayedToRoles": [
    ]
}

Response samples

Content type
application/json

Updated person label

{
  • "$_type": "PersonLabel",
  • "id": "e1ld4sPpSRGJHGREsc--PQ",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 2,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "label-for-update",
  • "description": "updated description",
  • "color": "white",
  • "settableOn": [
    ],
  • "readableByRoles": [
    ],
  • "settableByRoles": [
    ],
  • "displayedToRoles": [
    ]
}

PersonPresences

Service to access person presences

read

Helper method read a PersonPresenceData by ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
presenceId
required
string

Responses

Response samples

Content type
application/json
{
  • "$_type": "PersonPresenceData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "joinedTimestamp": 0,
  • "leftTimestamp": 0,
  • "personId": "string",
  • "deviceInfo": {
    },
  • "impersonationType": "NONE",
  • "impersonatedFromUserId": "string",
  • "impersonatedFromAccountId": "string",
  • "additionalInfo": "string",
  • "authInfo": "string",
  • "propagated": true
}

search

Search for person presences in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "PersonPresenceQuery"
Value: "PersonPresenceQuery"
Array of any (PersonPresenceSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonPresenceOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonPresenceQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "PersonPresenceResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonVisibilityRules

Service to access person visibility rules

create

Creates the given person visibility rule. The ID of the person visibility rule is generated automatically. Any ID provided in the person visibility rule entity is ignored.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The person visibility rule to create

$_type
string
Default: "PersonVisibilityRuleData"
Value: "PersonVisibilityRuleData"
id
string

The person's unique ID. When creating a person this property can be omitted, it's generated by the server.

accountId
string

ID of the Unblu account the person belongs to. When creating an entity this property can be omitted. Unblu automatically fills it with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Unique name of the visibility rule. Maximum length of 250 characters. Mandatory.

enabled
boolean

Flag indicating whether the rule is enabled or not. The default value is true.

description
string

Description of the visibility rule. Maximum length of 500 characters. Optional.

agentLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
agentLabelNames
Array of strings

A list of all the person labels an agent needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when agentLabelSelection = DEFINED_LIST.

visitorLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
visitorLabelNames
Array of strings

A list of all the person labels a visitor needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when visitorLabelSelection = DEFINED_LIST.

version
integer <int64>

Version of the entity. The version is incremented on each change. Entity updates that aren't based on the latest version are rejected. When creating an object, the version can be omitted.

Responses

Request samples

Content type
application/json

Create a new visibility rule

{
  • "$_type": "PersonVisibilityRuleData",
  • "id": null,
  • "accountId": null,
  • "name": "read-test-rule",
  • "enabled": null,
  • "description": "description of the rule",
  • "agentLabelSelection": "DEFINED_LABELS",
  • "agentLabelNames": [
    ],
  • "visitorLabelSelection": "DEFINED_LABELS",
  • "visitorLabelNames": [
    ],
  • "version": null
}

Response samples

Content type
application/json

New visibility rule

{
  • "$_type": "PersonVisibilityRuleData",
  • "id": "f2th4sPpVCXFgTyEscaaPQ",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "read-test-rule",
  • "enabled": true,
  • "description": "description of the rule",
  • "agentLabelSelection": "DEFINED_LABELS",
  • "agentLabelNames": [
    ],
  • "visitorLabelSelection": "DEFINED_LABELS",
  • "visitorLabelNames": [
    ],
  • "version": 1
}

delete

Deletes the person visibility rule with the given ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personVisibilityRuleId
required
string

The ID of the person visibility rule to delete

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByNames

Retrieves a list of the person visibility rules with the names provided. Names that don't match any person visibility rules are ignored.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The names of the person visibility rules to fetch

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "PersonVisibilityRuleDataList",
  • "items": [
    ]
}

getByUsedLabelName

Returns the person visibility rules which use the provided label name in their selection, or an empty list if none are found

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
labelName
string

The name of a person label to search for in the rule selection

Responses

Request samples

Content type
application/json
{
  • "labelName": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "PersonVisibilityRuleDataList",
  • "items": [
    ]
}

read

Returns the person visibility rule with the given ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personVisibilityRuleId
required
string

The ID of the person visibility rule to return

Responses

Response samples

Content type
application/json
{
  • "$_type": "PersonVisibilityRuleData",
  • "id": "string",
  • "accountId": "string",
  • "name": "string",
  • "enabled": true,
  • "description": "string",
  • "agentLabelSelection": "ALL",
  • "agentLabelNames": [
    ],
  • "visitorLabelSelection": "ALL",
  • "visitorLabelNames": [
    ],
  • "version": 0
}

readMultiple

Retrieves a list of person visibility rules for the given IDs. IDs that don't match any person visibility rules are ignored.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The IDs for which to fetch the person visibility rules

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "PersonVisibilityRuleDataList",
  • "items": [
    ]
}

search

Searches for person visibility rules

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The query to use for the search

$_type
string
Default: "PersonVisibilityRuleQuery"
Value: "PersonVisibilityRuleQuery"
Array of any (PersonVisibilityRuleSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonVisibilityRuleOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonVisibilityRuleQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "PersonVisibilityRuleResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the person visibility rule. The update fails if no person visibility rule exists with the ID provided.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The details to update the person visibility rule with

$_type
string
Default: "PersonVisibilityRuleData"
Value: "PersonVisibilityRuleData"
id
string

The person's unique ID. When creating a person this property can be omitted, it's generated by the server.

accountId
string

ID of the Unblu account the person belongs to. When creating an entity this property can be omitted. Unblu automatically fills it with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Unique name of the visibility rule. Maximum length of 250 characters. Mandatory.

enabled
boolean

Flag indicating whether the rule is enabled or not. The default value is true.

description
string

Description of the visibility rule. Maximum length of 500 characters. Optional.

agentLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
agentLabelNames
Array of strings

A list of all the person labels an agent needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when agentLabelSelection = DEFINED_LIST.

visitorLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
visitorLabelNames
Array of strings

A list of all the person labels a visitor needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when visitorLabelSelection = DEFINED_LIST.

version
integer <int64>

Version of the entity. The version is incremented on each change. Entity updates that aren't based on the latest version are rejected. When creating an object, the version can be omitted.

Responses

Request samples

Content type
application/json

Update a visibility rule

{
  • "$_type": "PersonVisibilityRuleData",
  • "id": "f2th4sPpVCXFgTyEscaaPQ",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "rule-for-update",
  • "enabled": true,
  • "description": "updated description",
  • "agentLabelSelection": "DEFINED_LABELS",
  • "agentLabelNames": [
    ],
  • "visitorLabelSelection": "DEFINED_LABELS",
  • "visitorLabelNames": [
    ],
  • "version": 1
}

Response samples

Content type
application/json

Updated visibility rule

{
  • "$_type": "PersonVisibilityRuleData",
  • "id": "f2th4sPpVCXFgTyEscaaPQ",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "rule-for-update",
  • "enabled": true,
  • "description": "updated description",
  • "agentLabelSelection": "DEFINED_LABELS",
  • "agentLabelNames": [
    ],
  • "visitorLabelSelection": "DEFINED_LABELS",
  • "visitorLabelNames": [
    ],
  • "version": 2
}

Persons

Service to manage virtual or bot persons

addAutoPauseNotificationsReason

Add an AutoPauseNotificationsReason for a person. By calling this service the notifications for the given user will automatically be paused for the specified amount of time.
If several auto pause reasons are added, the notifications will be automatically paused until the last auto pause reason is removed or times out.
Note: This will only take effect on the pauseNotificationsState if the person's pauseNnotificationsMode is set to AUTO.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

ID of the person we want to add the auto pause to

Request Body schema: application/json
sourceId
string

The source identifier of the auto-pause reason. This can be used later to remove or change the timeout for this reason.

displayName
string

The name of the auto-pause reason displayed in the UI

timeoutSeconds
integer <int32>

The duration, in seconds, for which notifications should be paused automatically

Responses

Request samples

Content type
application/json
{
  • "sourceId": "string",
  • "displayName": "string",
  • "timeoutSeconds": 0
}

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

addLabels

Adds the labels provided to those already set on the person specified. A label within the same scope as an existing person label replaces the current scoped label.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
personId
required
string

The ID of the person to add the labels to

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

List of the labels to be added to the person

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

autoPauseNotifications

Set a person's pauseNotificationsState automatically, based on their ongoing interactions in Unblu and any AutoPauseNotificationsReasons in place for the person via the Web API.

Calling this endpoint sets the person's pauseNotificationsMode to AUTO. As a result, their pauseNotificationsState will be ON whenever there is at least one active AutoPauseNotificationsReason and OFF otherwise.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

The ID of the person whose pauseNotificationsMode should be set to AUTO

Responses

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

createOrUpdateBot

Updates and returns an existing bot person or creates and returns a bot person if absent.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

person data

$_type
string
Default: "PersonData"
Value: "PersonData"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": null,
  • "accountId": null,
  • "personSource": null,
  • "sourceId": "b",
  • "sourceData": null,
  • "firstName": null,
  • "lastName": null,
  • "username": "Example B",
  • "nickname": null,
  • "displayName": null,
  • "personType": null,
  • "authorizationRole": null,
  • "email": "b@example.com",
  • "phone": null,
  • "teamId": null,
  • "teamName": null,
  • "avatar": null,
  • "metadata": null
}

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "nta30CBa-6d1a89cE57Db_F",
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "personSource": "VIRTUAL",
  • "sourceId": "bot3",
  • "sourceData": null,
  • "firstName": null,
  • "lastName": null,
  • "username": "Example BOT3",
  • "nickname": null,
  • "displayName": "Bot",
  • "personType": "BOT",
  • "authorizationRole": "REGISTERED_USER",
  • "email": "bot3@example.com",
  • "phone": null,
  • "teamId": null,
  • "teamName": null,
  • "avatar": null,
  • "metadata": null
}

createOrUpdateVirtual

Updates and returns an existing virtual person or creates and returns a virtual person if absent.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

person data

$_type
string
Default: "PersonData"
Value: "PersonData"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

getBySource

Returns the person that represents the user identified by the source ID

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source of the person

sourceId
string

The identifier of the source for the person's information

  • For agents and visitors whose identity is propagated and whose person source is "VIRTUAL", the source ID is the value of the propagated "userId" field which is saved as ${link User.username} in the User entity.
  • For users whose identity is managed in Unblu (and whose person source is therefore "USER_DB"), the source ID is the ${link User.id} of the user represented by the person.
  • For anonymous visitors, the source ID is a random String.
  • For the concierge bot, the source ID is the String "concierge-bot-person-id".

expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

getNotificationCount

Returns NotificationCountData for a personId

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
personId
required
string

Responses

Response samples

Content type
application/json
{
  • "$_type": "NotificationCountData",
  • "personId": "string",
  • "totalNotificationCount": 0
}

pauseNotifications

Pause notifications for a person. This changes the person's pauseNotificationsMode and pauseNotificationsState to ON for the specified period.

Note: This overrides any automatic pause of notifications in place. Notification auto-pausing resumes once the period specified is over.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

The ID of the person to pause notifications for

Request Body schema: application/json
timeoutSeconds
integer <int32>

The duration, in seconds, that notifications should be paused for

Responses

Request samples

Content type
application/json
{
  • "timeoutSeconds": 0
}

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

read

Returns a PersonData by ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

readState

Returns a PersonStateData by personId

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

Responses

Response samples

Content type
application/json
Example
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

removeAutoPauseNotificationsReason

Remove the AutoPauseNotificationsReason with the given sourceId for a specific person

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

The ID of the person we want to remove the auto-pause reason from

Request Body schema: application/json
sourceId
string

The identifier of the auto-pause reason to remove

Responses

Request samples

Content type
application/json
{
  • "sourceId": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

removeLabels

Removes the labels with the given names from the person specified

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
personId
required
string

The ID of the person to remove the labels from

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

List of the labels to remove from the person

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

resumeNotifications

Resumes notifications for a person. This changes the person's pauseNotificationsMode and pauseNotificationsState to OFF.

Note: This overrides any automatic pause of notifications.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

The ID of the person to resume notifications for

Responses

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

search

Search for persons in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "PersonQuery"
Value: "PersonQuery"
Array of any (PersonSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "PersonResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

searchAgents

Searches for agents in the current account

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "PersonTypedQuery"
Value: "PersonTypedQuery"
Array of any (PersonTypedSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonTypedOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonTypedQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "PersonResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

searchAgentsByState

Searches for agents in the current account by state

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "AgentStateQuery"
Value: "AgentStateQuery"
Array of any (AgentStateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AgentStateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "AgentStateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

searchBots

Searches for bots in the current account

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "PersonTypedQuery"
Value: "PersonTypedQuery"
Array of any (PersonTypedSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonTypedOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonTypedQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "PersonResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

searchVisitors

Searches for visitors in the current account

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "PersonTypedQuery"
Value: "PersonTypedQuery"
Array of any (PersonTypedSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonTypedOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "PersonTypedQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "PersonResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

searchVisitorsByState

Searches for visitors in the current account by state

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "VisitorStateQuery"
Value: "VisitorStateQuery"
Array of any (VisitorStateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (VisitorStateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "VisitorStateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "VisitorPersonStateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

setAway

Defines if a person should be shown as AWAY or ONLINE when they're logged in.

If the endpoint is called with "true", the person's online state will be set to AWAY, if it's called with "false" the person's online state will be set to ONLINE.

If the person in question is logged in, the change in their online state takes effect immediately. If they're not logged in, their online state will be set when they log in again.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

The ID of the person to set the online state for

Request Body schema: application/json
away
boolean

Boolean Whether to set the person's online state to AWAY (true) of ONLINE (false)

Responses

Request samples

Content type
application/json
{
  • "away": true
}

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

setLabels

Sets labels with the given names on the person specified. Labels already set on the person but missing from the list provided are deleted. Labels already set and present in the list provided remain unchanged. Labels not set on the person but present in the list provided are added to the person. The changes to the person only take affect for labels the executing user has permissions for.

required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
personId
required
string

The ID of the person to set the labels on

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

List of the labels to set on the person

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

setStatusMessage

Sets a person's status message. Setting it to null deletes the current status message (if present).

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
personId
required
string

The ID of the person we want to set a status message for

Request Body schema: application/json
statusMessage
string

The status message to display in the person's details

Responses

Request samples

Content type
application/json
{
  • "statusMessage": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

RecordRetention

Service for loading and updating the record retention configuration. The configuration is account-specific.

read

Returns the records retention configuration for the account of the calling user

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:

Responses

Response samples

Content type
application/json
{
  • "$_type": "RecordRetentionData",
  • "accountId": "string",
  • "retentionIntervalConversationSeconds": 0,
  • "retentionIntervalPresenceSeconds": 0,
  • "retentionIntervalWebhookDeliveryLogSeconds": 0,
  • "retentionIntervalAuditLogSeconds": 0
}

update

Updates and returns an account's records retention configuration with the settings in RecordRetentionData

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The new records retention configuration

$_type
string
Default: "RecordRetentionData"
Value: "RecordRetentionData"
accountId
string

ID of the account whose retention configuration properties the object represents

retentionIntervalConversationSeconds
integer <int64>

Retention interval of conversations represented as number of seconds. Conversations are deleted after the interval, counting from when they ended.

retentionIntervalPresenceSeconds
integer <int64>

Retention interval of person presences represented as number of seconds. If a person presence exists without a conversation, the log is deleted after the time set below. Otherwise, it is deleted when the conversation record is deleted.

retentionIntervalWebhookDeliveryLogSeconds
integer <int64>

Retention interval of webhook delivery logs represented as number of seconds. Webhook logs are deleted after the time set below, counting from when they were created.

retentionIntervalAuditLogSeconds
integer <int64>

Retention interval of audit logs represented as number of seconds. Audit logs are deleted after the time set below, counting from when they were created.

Responses

Request samples

Content type
application/json
{
  • "$_type": "RecordRetentionData",
  • "accountId": "string",
  • "retentionIntervalConversationSeconds": 0,
  • "retentionIntervalPresenceSeconds": 0,
  • "retentionIntervalWebhookDeliveryLogSeconds": 0,
  • "retentionIntervalAuditLogSeconds": 0
}

Response samples

Content type
application/json
{
  • "$_type": "RecordRetentionData",
  • "accountId": "string",
  • "retentionIntervalConversationSeconds": 0,
  • "retentionIntervalPresenceSeconds": 0,
  • "retentionIntervalWebhookDeliveryLogSeconds": 0,
  • "retentionIntervalAuditLogSeconds": 0
}

SuggestionSources

Service to manage all kind of suggestion sources.

create

Creates a new suggestion source

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The suggestion source to create.

$_type
string
Default: "SuggestionSourceData"
Value: "SuggestionSourceData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

outboundApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

outboundStatus
string (EOutboundEndpointStatus)
Enum: "ENABLED" "DISABLED"
enum-descriptions: ["ENABLED: The endpoint is enabled and calls are allowed.","DISABLED: The endpoint is disabled and calls should be avoided, since they won't work."]

The status of an Outbound Web-API endpoint.

outboundEndpoint
string

The endpoint url of the outbound registration. To this url the requests for the outbound requests are done. Maximum length of 4000 characters.

The following requests will be sent to the endpoint:

  • OutboundRequest#ServiceNameConstants#CONVERSATION_CHAT_SUGGESTION: When a suggestion for one or more chat messages is requested.
  • OutboundRequest#ServiceNameConstants#PING: When pinging the endpoint.

outboundSecret
string

Optional secret which is send with each outbound request.

Maximum length of 4000 characters.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

Responses

Callbacks

Request samples

Content type
application/json

Create a new suggestion source

{
  • "$_type": "SuggestionSourceData",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "name": "test-suggestionSource-1",
  • "description": null,
  • "outboundApiVersion": "V4",
  • "outboundStatus": "DISABLED",
  • "outboundEndpoint": "https://test.unblu.com",
  • "outboundSecret": null,
  • "outboundTimeoutMillis": 5000
}

Response samples

Content type
application/json

New suggestion source

{
  • "$_type": "SuggestionSourceData",
  • "id": "eaaz3AiSRp6wIB2wGq6L0g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-suggestionSource-1",
  • "description": null,
  • "outboundApiVersion": "V4",
  • "outboundStatus": "DISABLED",
  • "outboundEndpoint": "https://test.unblu.com",
  • "outboundSecret": null,
  • "outboundTimeoutMillis": 5000
}

Callback payload samples

Callback
POST: outbound.conversation.chat_suggestion
Content type
application/json
{
  • "$_type": "ChatSuggestionRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "suggestionId": "string",
  • "requestingPerson": {
    },
  • "conversation": {
    },
  • "relatedMessages": [
    ],
  • "capabilities": {
    }
}

delete

Deletes an existing suggestion source

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
suggestionSourceId
required
string

The ID of the suggestion source which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByName

Searches for an existing suggestion source with the given name.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
name
string

Name of the suggestion source.

Responses

Response samples

Content type
application/json

Suggestion Source

{
  • "$_type": "SuggestionSourceData",
  • "id": "eaaz3AiSRp6wIB2wGq6L0g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-suggestionSource-1",
  • "description": null,
  • "outboundApiVersion": "V4",
  • "outboundStatus": "DISABLED",
  • "outboundEndpoint": "http://test.webhook.com",
  • "outboundSecret": null,
  • "outboundTimeoutMillis": 5000
}

read

Reads an existing suggestion source.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
suggestionSourceId
required
string

The ID of the suggestion source.

Responses

Response samples

Content type
application/json

Suggestion Source

{
  • "$_type": "SuggestionSourceData",
  • "id": "eaaz3AiSRp6wIB2wGq6L0g",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "name": "test-suggestionSource-1",
  • "description": null,
  • "outboundApiVersion": "V4",
  • "outboundStatus": "DISABLED",
  • "outboundEndpoint": "http://test.webhook.com",
  • "outboundSecret": null,
  • "outboundTimeoutMillis": 5000
}

search

Search for suggestion sources in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "SuggestionSourceQuery"
Value: "SuggestionSourceQuery"
Array of any (SuggestionSourceSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (SuggestionSourceOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "SuggestionSourceQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "SuggestionSourceResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

sendPing

Emits a PingRequest on the endpoint of the suggestion source.

The endpoint is expected to return a OutboundPingResponse

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
suggestionSourceId
required
string

The ID of the suggestion source

Responses

Response samples

Content type
application/json

Ping response from the suggestion source

{
  • "$_type": "PingResponse",
  • "pingId": "CD-Wj4RyTVOhx0oC_PCX_g"
}

update

Updates an existing suggestion source.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "SuggestionSourceData"
Value: "SuggestionSourceData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

outboundApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

outboundStatus
string (EOutboundEndpointStatus)
Enum: "ENABLED" "DISABLED"
enum-descriptions: ["ENABLED: The endpoint is enabled and calls are allowed.","DISABLED: The endpoint is disabled and calls should be avoided, since they won't work."]

The status of an Outbound Web-API endpoint.

outboundEndpoint
string

The endpoint url of the outbound registration. To this url the requests for the outbound requests are done. Maximum length of 4000 characters.

The following requests will be sent to the endpoint:

  • OutboundRequest#ServiceNameConstants#CONVERSATION_CHAT_SUGGESTION: When a suggestion for one or more chat messages is requested.
  • OutboundRequest#ServiceNameConstants#PING: When pinging the endpoint.

outboundSecret
string

Optional secret which is send with each outbound request.

Maximum length of 4000 characters.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

Responses

Request samples

Content type
application/json
{
  • "$_type": "SuggestionSourceData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "outboundApiVersion": "V1",
  • "outboundStatus": "ENABLED",
  • "outboundEndpoint": "string",
  • "outboundSecret": "string",
  • "outboundTimeoutMillis": 0
}

Response samples

Content type
application/json
{
  • "$_type": "SuggestionSourceData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "outboundApiVersion": "V1",
  • "outboundStatus": "ENABLED",
  • "outboundEndpoint": "string",
  • "outboundSecret": "string",
  • "outboundTimeoutMillis": 0
}

Teams

Service to manage all teams in the system. For each account there is always a default team, which users are assigned to, when no explicit team is set.

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to create

$_type
string
Default: "Team"
Value: "Team"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the team. Maximum of 250 characters. Can not be omitted.

parentId
string

Id of the parent team. Only the default team has no parent team. When creating a team and the parentId is omitted, the default team is automatically inserted by the server.

description
string

Description of the team. Maximum of 500 characters. Can be omitted.

externallyManaged
boolean

True if the team is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json

Create a Team with translations of the name and description for it

{
  • "$_type": "Team",
  • "id": null,
  • "creationTimestamp": null,
  • "modificationTimestamp": null,
  • "version": null,
  • "accountId": null,
  • "avatar": null,
  • "name": "with-translations-test",
  • "parentId": null,
  • "description": "The team",
  • "externallyManaged": null,
  • "translations": {
    },
  • "configuration": null,
  • "metadata": null
}

Response samples

Content type
application/json

Create a Team with translations of the name and description for it

{
  • "$_type": "Team",
  • "id": "14F-6aDC8e5_cmT3bAa9Bd0",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "avatar": null,
  • "name": "with-translations-test",
  • "parentId": "JZh4ADRnEeasYZ5xEoyudw",
  • "description": "The team",
  • "externallyManaged": false,
  • "translations": {
    },
  • "configuration": null,
  • "metadata": null
}

delete

Deletes the team with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
teamId
required
string

The ID of the team which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getChildTeams

Returns a recursive list of all teams that belong to the given parent team. In other words, child teams of a child team are also listed.

To search only for direct children, use search with a ParentIdTeamSearchFilter.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
teamId
required
string

The ID of the parent team for which the child teams should be returned recursively

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "TeamList",
  • "items": [
    ]
}

getTeamOfCurrentUser

Returns the team of the current logged in user. There is always a team, at least the default team.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "Team",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "parentId": "string",
  • "description": "string",
  • "externallyManaged": true,
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    }
}

read

Returns the team with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
teamId
required
string

ID of the team which should be returned

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "Team",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "parentId": "string",
  • "description": "string",
  • "externallyManaged": true,
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    }
}

readMultiple

Gets a list of teams for the given ID's

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The ID's for which the teams should be fetched

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "TeamList",
  • "items": [
    ]
}

search

Searches for teams in the current account

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "TeamQuery"
Value: "TeamQuery"
Array of any (TeamSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (TeamOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "TeamQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "TeamResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

update

Updates the team entity with the given instance. A supervisor can change his team and all sub teams

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["SUPERVISOR"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to update

$_type
string
Default: "Team"
Value: "Team"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the team. Maximum of 250 characters. Can not be omitted.

parentId
string

Id of the parent team. Only the default team has no parent team. When creating a team and the parentId is omitted, the default team is automatically inserted by the server.

description
string

Description of the team. Maximum of 500 characters. Can be omitted.

externallyManaged
boolean

True if the team is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "Team",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "parentId": "string",
  • "description": "string",
  • "externallyManaged": true,
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "Team",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "parentId": "string",
  • "description": "string",
  • "externallyManaged": true,
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    }
}

Users

Service to manage all users in the system. Most of the service's endpoints to read, list, or search for users exclude virtual visitors from the results. If an endpoint returns virtual visitors, it is noted in the endpoint's description.

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The entity to create

$_type
string
Default: "User"
Value: "User"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

username
string

The username for the login. Maximum length of 250 characters. Depending on the configuration, this may also be the email address.
Cannot be omitted when creating or updating a user and 'com.unblu.storage.user.useEmailAsUsername' is set to 'false'.
When creating or updating a user, and 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', this field can be omitted. If provided, its value must be the same as that of the 'email' field.

email
string

The user's email address. Maximum length of 250 characters. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'false', the email may be an empty string or set to null. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', the field is mandatory.

phone
string

The phone number of the user. Maximum length of 100 characters.

teamId
string

The ID of the team the user belongs to. If omitted when creating a user, it is filled by the server with the ID of the account's default team.

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

displayName
string

The display name of the user. Calculated by the server. Can be omitted when creating a user.

firstName
string

The first name of the user. Maximum length of 250 characters. Cannot be omitted.

lastName
string

The user's last name. Maximum length of 250 characters. Cannot be omitted.

externallyManaged
boolean

True if the user is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

virtualUser
boolean

True if the user is purely virtual (they weren't created as the result of an LDAP sync, for instance) and thus can't be edited in the Unblu UI. If omitted, the property is set to false, and the user is considered to be a physical user.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

createWithPassword

Creates a new user with the provided password.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The user and the password to create

$_type
string
Default: "UserPasswordContainer"
Value: "UserPasswordContainer"
object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

password
string

The user's password.

NOTE: this can only be used to set a password. The server will always return null.

Responses

Request samples

Content type
application/json

create a new user with a given password

{
  • "$_type": "UserPasswordContainer",
  • "user": {
    },
  • "password": "L0remPf18!"
}

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

createWithRandomPassword

Creates a new user with a random password. The random password is sent via email.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The data to create the new user with

$_type
string
Default: "User"
Value: "User"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

username
string

The username for the login. Maximum length of 250 characters. Depending on the configuration, this may also be the email address.
Cannot be omitted when creating or updating a user and 'com.unblu.storage.user.useEmailAsUsername' is set to 'false'.
When creating or updating a user, and 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', this field can be omitted. If provided, its value must be the same as that of the 'email' field.

email
string

The user's email address. Maximum length of 250 characters. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'false', the email may be an empty string or set to null. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', the field is mandatory.

phone
string

The phone number of the user. Maximum length of 100 characters.

teamId
string

The ID of the team the user belongs to. If omitted when creating a user, it is filled by the server with the ID of the account's default team.

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

displayName
string

The display name of the user. Calculated by the server. Can be omitted when creating a user.

firstName
string

The first name of the user. Maximum length of 250 characters. Cannot be omitted.

lastName
string

The user's last name. Maximum length of 250 characters. Cannot be omitted.

externallyManaged
boolean

True if the user is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

virtualUser
boolean

True if the user is purely virtual (they weren't created as the result of an LDAP sync, for instance) and thus can't be edited in the Unblu UI. If omitted, the property is set to false, and the user is considered to be a physical user.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

delete

Deletes the user with the given ID

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
userId
required
string

The ID of the user which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByUsername

Returns the user with the given username.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
username
string

The username of the requested user

expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

hasPassword

Checks if a user has a password. This endpoint can be used for any type of user, including virtual visitors.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
userId
required
string

The ID of the user to check

Responses

Response samples

Content type
application/json
{
  • "$_type": "HasPasswordData",
  • "hasPassword": true
}

read

Returns the user with the given ID.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
userId
required
string

The ID of the user to return

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

readMultiple

Gets a list of users for the given IDs. The response doesn't include virtual visitors.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The IDs of the users to be fetched

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "UserList",
  • "items": [
    ]
}

removePassword

Removes the password for the user with the given ID. Without a password, the user can't log in to Unblu directly. Users without a password are typically used in setups with ID propagation.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
userId
required
string

The ID of the user whose password will be removed

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

search

Search for users in the current account. The response doesn't include virtual visitors.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
$_type
string
Default: "UserQuery"
Value: "UserQuery"
Array of any (UserSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (UserOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "UserQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "UserResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

setPassword

Updates the given user's password.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
path Parameters
userId
required
string

The ID of the user whose password should be updated

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
password
string

The user's new password

Responses

Request samples

Content type
application/json

set password

{
  • "password": "L0remPf18!"
}

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

setRandomPassword

Updates a user's password with a new random password. The random password is sent via email.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
userId
required
string

The ID of the user who will be assigned a random password

query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"

Responses

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

transformVirtualToPhysical

Converts the user with the given username from a virtual to a physical user. This also changes the related Person entity to a physicalPerson. If the user's already physical, the user is simply returned. If no user with the given username exists, the endpoint returns an error.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json
username
string

The username of the User entity that should be converted to a physical user

Responses

Request samples

Content type
application/json
{
  • "username": "string"
}

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

update

Updates the given user with the provided data.

allow-impersonated-access: true
required-entry-path: INTERNAL
required-role: ["REGISTERED_USER"]
Authorizations:
query Parameters
expand
Array of strings (ExpandFields)
Items Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
Request Body schema: application/json

The new user data

$_type
string
Default: "User"
Value: "User"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

username
string

The username for the login. Maximum length of 250 characters. Depending on the configuration, this may also be the email address.
Cannot be omitted when creating or updating a user and 'com.unblu.storage.user.useEmailAsUsername' is set to 'false'.
When creating or updating a user, and 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', this field can be omitted. If provided, its value must be the same as that of the 'email' field.

email
string

The user's email address. Maximum length of 250 characters. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'false', the email may be an empty string or set to null. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', the field is mandatory.

phone
string

The phone number of the user. Maximum length of 100 characters.

teamId
string

The ID of the team the user belongs to. If omitted when creating a user, it is filled by the server with the ID of the account's default team.

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

displayName
string

The display name of the user. Calculated by the server. Can be omitted when creating a user.

firstName
string

The first name of the user. Maximum length of 250 characters. Cannot be omitted.

lastName
string

The user's last name. Maximum length of 250 characters. Cannot be omitted.

externallyManaged
boolean

True if the user is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

virtualUser
boolean

True if the user is purely virtual (they weren't created as the result of an LDAP sync, for instance) and thus can't be edited in the Unblu UI. If omitted, the property is set to false, and the user is considered to be a physical user.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Responses

Request samples

Content type
application/json

update user

{
  • "$_type": "User",
  • "id": "d5_2rD019scCA7eEB48U6ab",
  • "creationTimestamp": 1546300800000,
  • "modificationTimestamp": 1548979200000,
  • "version": 1,
  • "accountId": "A7d9E_0-c3cC4aoFDb85t6n",
  • "avatar": null,
  • "username": "r@email.com",
  • "email": "r@email.com",
  • "phone": "+41 61 511 11 50",
  • "teamId": "JZh4ADRnEeasYZ5xEoyudw",
  • "authorizationRole": "REGISTERED_USER",
  • "displayName": null,
  • "firstName": "John",
  • "lastName": "Smith",
  • "externallyManaged": false,
  • "virtualUser": false,
  • "configuration": null,
  • "metadata": null
}

Response samples

Content type
application/json
{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

WebhookRegistrations

Service to manage all webhook registrations

create

Creates the given entity in the system. The ID of the entity is ignored for create operations, a new one is generated.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The entity to create

$_type
string
Default: "WebhookRegistration"
Value: "WebhookRegistration"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the webhook registration. Maximum length of 250 characters. Can not be omitted.

status
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

description
string

Description of the webhook registration. Maximum length of 500 characters. Can be omitted.

endpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can be omitted, but should not.

apiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

secret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

events
Array of strings

Events for which the webhook endpoint is called, if they occur. Can not be omitted. Check the Webhook Events for possible values.

Responses

Callbacks

Request samples

Content type
application/json
{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

Response samples

Content type
application/json
{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

Callback payload samples

Callback
Content type
application/json
{
  • "$_type": "AccountModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

delete

Deletes the webhook registration with the given ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
registrationId
required
string

The ID of the webhook registration which should be deleted

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

getByName

Returns the webhook registration for the given name.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
query Parameters
name
string

The name of the requested webhook registration

Responses

Response samples

Content type
application/json
{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

read

Returns the webhook registration with the given ID

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
registrationId
required
string

ID of the webhook registration which should be returned

Responses

Response samples

Content type
application/json
{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

readMultiple

Gets a list of webhook registrations with the given IDs. IDs that can't be found are ignored.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The IDs of the webhook registrations to fetch

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "$_type": "WebhookRegistrationList",
  • "items": [
    ]
}

search

Search for webhook registrations in the current account

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json
$_type
string
Default: "WebhookRegistrationQuery"
Value: "WebhookRegistrationQuery"
Array of any (WebhookRegistrationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (WebhookRegistrationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

Responses

Request samples

Content type
application/json
{
  • "$_type": "WebhookRegistrationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

Response samples

Content type
application/json
{
  • "$_type": "WebhookRegistrationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

sendPing

Sends a "ping" webhook to the endpoint of the given registration.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
path Parameters
registrationId
required
string

Id of the registration to send the ping webhook to.

Responses

Response samples

Content type
application/json
{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

update

Updates the entity in the system with the given entity.

required-entry-path: INTERNAL
required-role: ["ADMIN"]
Authorizations:
Request Body schema: application/json

The entity to update

$_type
string
Default: "WebhookRegistration"
Value: "WebhookRegistration"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the webhook registration. Maximum length of 250 characters. Can not be omitted.

status
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

description
string

Description of the webhook registration. Maximum length of 500 characters. Can be omitted.

endpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can be omitted, but should not.

apiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

secret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

events
Array of strings

Events for which the webhook endpoint is called, if they occur. Can not be omitted. Check the Webhook Events for possible values.

Responses

Request samples

Content type
application/json
{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

Response samples

Content type
application/json
{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

Schemas

AcceptLinkData

$_type
string
Default: "AcceptLinkData"
Value: "AcceptLinkData"
accountId
string

The account ID of the conversation

conversationId
string

The conversation ID

Array of objects (ConversationLink) [ items ]

List of links to accept the invitation and open the corresponding conversation.
Only one link may be used.

expirationTimestamp
integer <int64>

Unix timestamp after which the invitation is no longer valid

{
  • "$_type": "AcceptLinkData",
  • "accountId": "string",
  • "conversationId": "string",
  • "links": [
    ],
  • "expirationTimestamp": 0
}

AcceptTimestampCallSearchFilter

$_type
string
Default: "AcceptTimestampCallSearchFilter"
Value: "AcceptTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "AcceptTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

Account

$_type
string
Default: "Account"
Value: "Account"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

name
string

The name of the account. Maximum length of 250 characters and can not be empty.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object

A map of localized versions of the name of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

{
  • "$_type": "Account",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "name": "string",
  • "avatar": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    },
  • "text": {
    }
}

AccountChangeAuditChangeSearchFilter

$_type
string
Default: "AccountChangeAuditChangeSearchFilter"
Value: "AccountChangeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (BooleanOperator)
{
  • "$_type": "AccountChangeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AccountData

$_type
string
Default: "AccountData"
Value: "AccountData"
id
string

Unique id of the account.

displayName
string

Display-Name of the account

object

Localized Display-Name of the account

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the account: id that can be expanded.

{
  • "$_type": "AccountData",
  • "id": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string"
}

AccountIngressStatus

$_type
string
Default: "AccountIngressStatus"
Value: "AccountIngressStatus"
enabled
boolean

Whether or not ingress should be enabled for the account.
This property can be changed by IAccountStorageService.enableAccountIngress and IAccountStorageService.disableAccountIngress

ingressStatus
string (EIngressStatus)
Enum: "ACCOUNT" "GLOBAL" "BLOCKED"
enum-descriptions: ["ACCOUNT: Account-specific ingress enabled (using custom origin)","GLOBAL: Account is accessible via global ingress","BLOCKED: Account is blocked, i.e. because ingress is configured but not valid"]

How ingress is handled

migrationStatus
string (EIngressMigrationStatus)
Enum: "MIGRATING" "DONE_INGRESS_ACTIVE" "DONE_INGRESS_INACTIVE" "ERROR"
enum-descriptions: ["MIGRATING: The system is migrating the user uniqueness scope to its desired state (according to the ingress_enabled flag). If ingress_enabled is true, the username_scope column of all existing users is updated to the accountId. If ingress_enabled is false, then the username_scope column of all existing users is updated to GLOBAL.","DONE_INGRESS_ACTIVE: All users are migrated and the account is active with ingress (if configuration is valid)","DONE_INGRESS_INACTIVE: All users are migrated and the account is active without ingress","ERROR: The migration has failed (for example because the account contains usernames that also exist in a different account that isn't using ingress). The migration can be retried using the 'try again' action. If doing so isn't too expensive, the UI shows a list of the users causing conflicts."]

Status of the ingress activation. This status represents the status of the users in the account regarding the scope of the username uniqueness. In order for an account ingress to be fully active, the following conditions must be met: ingress_enabled=true, ingress_activation_status=ACTIVE and ingress configuration is valid.

errorDetails
Array of strings

High severity ingress configuration and migration issues that arose during the last ingress activation or deactivation process. Any error will block ingress from being activated or deactivated.

warningDetails
Array of strings

Low severity ingress configuration and migration issues that arose during the last ingress activation or deactivation process. Ingress can still be successfully activated or deactivated if warnings are present.

{
  • "$_type": "AccountIngressStatus",
  • "enabled": true,
  • "ingressStatus": "ACCOUNT",
  • "migrationStatus": "MIGRATING",
  • "errorDetails": [
    ],
  • "warningDetails": [
    ]
}

AccountList

$_type
string
Default: "AccountList"
Value: "AccountList"
Array of objects (Account) [ items ]

The list of mapped entities

{
  • "$_type": "AccountList",
  • "items": [
    ]
}

AccountModificationEvent

$_type
string
Default: "AccountModificationEvent"
Value: "AccountModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Account)

Model of an account

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "AccountModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

AccountOrderBy

$_type
string
Default: "AccountOrderBy"
Value: "AccountOrderBy"
field
string (EAccountOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "AccountOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

AccountQuery

$_type
string
Default: "AccountQuery"
Value: "AccountQuery"
Array of any (AccountSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AccountOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "AccountQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

AccountQuotaUsageData

$_type
string
Default: "AccountQuotaUsageData"
Value: "AccountQuotaUsageData"
object (QuotaUsageData)

Information on the current quota usage value and its limit

object (QuotaUsageData)

Information on the current quota usage value and its limit

object (QuotaUsageData)

Information on the current quota usage value and its limit

object (QuotaUsageData)

Information on the current quota usage value and its limit

{
  • "$_type": "AccountQuotaUsageData",
  • "apiKeys": {
    },
  • "domains": {
    },
  • "teams": {
    },
  • "users": {
    }
}

AccountResult

$_type
string
Default: "AccountResult"
Value: "AccountResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Account) [ items ]

The returned list of entities

{
  • "$_type": "AccountResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

AccountSearchFilter

$_type
string
Default: "CreationTimestampAccountSearchFilter"
Value: "CreationTimestampAccountSearchFilter"
field
string (EAccountSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampAccountSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AccountSecret

$_type
string
Default: "AccountSecret"
Value: "AccountSecret"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

secretKey
string
{
  • "$_type": "AccountSecret",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "secretKey": "string"
}

AccountSidSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "AccountSidSmsExternalMessengerChannelSearchFilter"
Value: "AccountSidSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
{
  • "$_type": "AccountSidSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

AccountTranslation

$_type
string
Default: "AccountTranslation"
Value: "AccountTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "AccountTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

AccountUserContainer

$_type
string
Default: "AccountUserContainer"
Value: "AccountUserContainer"
object (Account)

Model of an account

object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

{
  • "$_type": "AccountUserContainer",
  • "account": {
    },
  • "adminUser": {
    }
}

AgentAvailabilityStateData

$_type
string
Default: "AgentAvailabilityStateData"
Value: "AgentAvailabilityStateData"
availabilityState
string (EAvailabilityState)
Enum: "AVAILABLE" "BUSY" "UNAVAILABLE"
enum-descriptions: ["AVAILABLE: There is at least one agent available for the specified named area and locale.","BUSY: There is at least one agent watching the inbound queue for the specified named area and locale but the max capacity of parallel conversations is reached. It is very likely, that an agent will be available in a short time.","UNAVAILABLE: There is currently no agent handling any inbound queue items. It is very unlikely, that an agent will be available in a short time."]

Possible state for agents availability

isAvailable
boolean

Whether the agent is available for inbound conversation requests

{
  • "$_type": "AgentAvailabilityStateData",
  • "availabilityState": "AVAILABLE",
  • "isAvailable": true
}

AgentForwardingCreatedEvent

$_type
string
Default: "AgentForwardingCreatedEvent"
Value: "AgentForwardingCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

Array of objects (ConversationLink) [ items ]

List of links to accept the agent forwarding event with the token.
Only one link may be used.

{
  • "$_type": "AgentForwardingCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "links": [
    ]
}

AgentForwardingRedeemedEvent

$_type
string
Default: "AgentForwardingRedeemedEvent"
Value: "AgentForwardingRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AgentForwardingRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "redeemingPerson": {
    }
}

AgentForwardingRevokedEvent

$_type
string
Default: "AgentForwardingRevokedEvent"
Value: "AgentForwardingRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

{
  • "$_type": "AgentForwardingRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string"
}

AgentInvitationCreatedEvent

$_type
string
Default: "AgentInvitationCreatedEvent"
Value: "AgentInvitationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

Array of objects (ConversationLink) [ items ]

List of links to accept the agent invitation event with the token.
Only one link may be used.

{
  • "$_type": "AgentInvitationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true,
  • "links": [
    ]
}

AgentInvitationRedeemedEvent

$_type
string
Default: "AgentInvitationRedeemedEvent"
Value: "AgentInvitationRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AgentInvitationRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true,
  • "redeemingPerson": {
    }
}

AgentInvitationRevokedEvent

$_type
string
Default: "AgentInvitationRevokedEvent"
Value: "AgentInvitationRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

{
  • "$_type": "AgentInvitationRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true
}

AgentLabelSelectionPersonVisibilityRuleSearchFilter

$_type
string
Default: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
Value: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (VisibilityRuleLabelSelectionOperator)
{
  • "$_type": "AgentLabelSelectionPersonVisibilityRuleSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

AgentPersonStateChangedEvent

$_type
string
Default: "AgentPersonStateChangedEvent"
Value: "AgentPersonStateChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (AgentPersonStateData)

State data of an agent person

{
  • "$_type": "AgentPersonStateChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "personState": {
    }
}

AgentPersonStateData

$_type
string
Default: "AgentPersonStateData"
Value: "AgentPersonStateData"
personId
string

The ID of the person this state data belongs to

onlineState
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

type
string (EPersonStateType)
Enum: "AGENT" "VISITOR"
enum-descriptions: ["AGENT","VISITOR"]
statusMessage
string

The agent's status message. The message is displayed in the person's details in the UI.

pauseNotificationsMode
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

pauseNotificationsState
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

pauseNotificationsEndTimestamp
integer <int64>

The Unix timestamp (ms) when pausing notifications should end

Array of objects (AutoPauseNotificationsReasonData) [ items ]

A list of reasons based on which the agent's notifications should be auto-paused

{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

AgentPersonStateResult

$_type
string
Default: "AgentPersonStateResult"
Value: "AgentPersonStateResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (AgentPersonStateData) [ items ]

The returned list of entities

{
  • "$_type": "AgentPersonStateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

AgentStateOrderBy

$_type
string
Default: "AgentStateOrderBy"
Value: "AgentStateOrderBy"
field
string (EAgentStateOrderByField)
Enum: "PERSON_ID" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute","STATUS_MESSAGE: Sort by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Sort by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Sort by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Sort by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Sort by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "AgentStateOrderBy",
  • "field": "PERSON_ID",
  • "order": "ASCENDING"
}

AgentStateQuery

$_type
string
Default: "AgentStateQuery"
Value: "AgentStateQuery"
Array of any (AgentStateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AgentStateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "AgentStateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

AgentStateSearchFilter

$_type
string
Default: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
Value: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (TimestampOperator)
Example
{
  • "$_type": "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter",
  • "field": "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP",
  • "operator": {
    }
}

AgentTargetData

$_type
string
Default: "PersonData"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Example
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

AgentUserIdDeputyRelationshipSearchFilter

$_type
string
Default: "AgentUserIdDeputyRelationshipSearchFilter"
Value: "AgentUserIdDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AgentUserIdDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

AllEqualIdListOperator

$_type
string
Default: "AllEqualIdListOperator"
Value: "AllEqualIdListOperator"
type
string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
{
  • "$_type": "AllEqualIdListOperator",
  • "type": "ALL_OF",
  • "values": [
    ]
}

AllOfIdListOperator

$_type
string
Default: "AllOfIdListOperator"
Value: "AllOfIdListOperator"
type
string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
{
  • "$_type": "AllOfIdListOperator",
  • "type": "ALL_OF",
  • "values": [
    ]
}

AndCompoundOperator

$_type
string
Default: "AndCompoundOperator"
Value: "AndCompoundOperator"
type
string (ECompoundOperatorType)
Enum: "AND" "OR"
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
{
  • "$_type": "AndCompoundOperator",
  • "type": "AND"
}

AnyOfIdListOperator

$_type
string
Default: "AnyOfIdListOperator"
Value: "AnyOfIdListOperator"
type
string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
{
  • "$_type": "AnyOfIdListOperator",
  • "type": "ALL_OF",
  • "values": [
    ]
}

ApiKey

$_type
string
Default: "ApiKey"
Value: "ApiKey"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

apiKey
string

Api key string. When creating the entity it can be set to a specific value or omitted (in the second case a random value will be generated by the server). Can not be updated.

name
string

Name of the api key. Maximum of 250 characters. Can be omitted, but should not.

description
string

Description of the api key. E.g. where or for what it is used. Maximum of 500 characters. Can be omitted.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

ApiKeyApiKeySearchFilter

$_type
string
Default: "ApiKeyApiKeySearchFilter"
Value: "ApiKeyApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "ApiKeyApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ApiKeyList

$_type
string
Default: "ApiKeyList"
Value: "ApiKeyList"
Array of objects (ApiKey) [ items ]

The list of mapped entities

{
  • "$_type": "ApiKeyList",
  • "items": [
    ]
}

ApiKeyModificationEvent

$_type
string
Default: "ApiKeyModificationEvent"
Value: "ApiKeyModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (ApiKey)

Model of an ApiKey. Api keys identify the usage of unblu to a certain account. There can be multiple api keys per account to define different configurations

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "ApiKeyModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

ApiKeyOrderBy

$_type
string
Default: "ApiKeyOrderBy"
Value: "ApiKeyOrderBy"
field
string (EApiKeyOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","API_KEY: Sort by the 'apiKey' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ApiKeyOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ApiKeyQuery

$_type
string
Default: "ApiKeyQuery"
Value: "ApiKeyQuery"
Array of any (ApiKeySearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ApiKeyOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ApiKeyQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ApiKeyResult

$_type
string
Default: "ApiKeyResult"
Value: "ApiKeyResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ApiKey) [ items ]

The returned list of entities

{
  • "$_type": "ApiKeyResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ApiKeySearchFilter

$_type
string
Default: "ApiKeyApiKeySearchFilter"
Value: "ApiKeyApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
Example
{
  • "$_type": "ApiKeyApiKeySearchFilter",
  • "field": "API_KEY",
  • "operator": {
    }
}

ApprovalRequestMessageData

$_type
string
Default: "ApprovalRequestMessageData"
Value: "ApprovalRequestMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

{
  • "$_type": "ApprovalRequestMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING"
}

AssigneePersonIdConversationHistorySearchFilter

$_type
string
Default: "AssigneePersonIdConversationHistorySearchFilter"
Value: "AssigneePersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AssigneePersonIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

AssigneePersonIdConversationSearchFilter

$_type
string
Default: "AssigneePersonIdConversationSearchFilter"
Value: "AssigneePersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AssigneePersonIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AssignmentRequestCreatedEvent

$_type
string
Default: "AssignmentRequestCreatedEvent"
Value: "AssignmentRequestCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ConversationLink) [ items ]

List of links to accept the assignment request event with the token.
Only one link may be used.

{
  • "$_type": "AssignmentRequestCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "links": [
    ]
}

AssignmentRequestRedeemedEvent

$_type
string
Default: "AssignmentRequestRedeemedEvent"
Value: "AssignmentRequestRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AssignmentRequestRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "redeemingPerson": {
    }
}

AssignmentRequestRevokedEvent

$_type
string
Default: "AssignmentRequestRevokedEvent"
Value: "AssignmentRequestRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

{
  • "$_type": "AssignmentRequestRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    }
}

AssignmentRequestUnansweredEvent

$_type
string
Default: "AssignmentRequestUnansweredEvent"
Value: "AssignmentRequestUnansweredEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ConversationLink) [ items ]

List of links to accept the agent invitation event with the token.
Only one link may be used.

{
  • "$_type": "AssignmentRequestUnansweredEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "links": [
    ]
}

AuditChange

$_type
string
Default: "AuditChange"
Value: "AuditChange"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

accountId
string
interactionType
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
interactionName
string
userName
string
userId
string
userRole
string
userAnonymous
boolean
userVirtual
boolean
userPropagated
boolean
userImpersonationType
string
impersonationAccountId
string
impersonationUserId
string
userAuthInfo
string
sourceIp
string
productVersion
string
changeType
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
entityType
string
entityName
string
entityId
string
oldState
string
newState
string
ownerType
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

ownerId
string
ownerEntity
string
globalChange
boolean
  • SUPER_ADMIN can view:
     (globalChange==true or (accountChange==true and accountId=<superadmin's account id>)) 
  • ADMIN can view:
     accountChange==true and accountId=<admin's account id> 
accountChange
boolean
  • SUPER_ADMIN can view:
     (globalChange==true or (accountChange==true and accountId=<superadmin's account id>)) 
  • ADMIN can view:
     accountChange==true and accountId=<admin's account id> 
{
  • "$_type": "AuditChange",
  • "id": "string",
  • "creationTimestamp": 0,
  • "accountId": "string",
  • "interactionType": "API",
  • "interactionName": "string",
  • "userName": "string",
  • "userId": "string",
  • "userRole": "string",
  • "userAnonymous": true,
  • "userVirtual": true,
  • "userPropagated": true,
  • "userImpersonationType": "string",
  • "impersonationAccountId": "string",
  • "impersonationUserId": "string",
  • "userAuthInfo": "string",
  • "sourceIp": "string",
  • "productVersion": "string",
  • "changeType": "CREATE",
  • "entityType": "string",
  • "entityName": "string",
  • "entityId": "string",
  • "oldState": "string",
  • "newState": "string",
  • "ownerType": "GLOBAL",
  • "ownerId": "string",
  • "ownerEntity": "string",
  • "globalChange": true,
  • "accountChange": true
}

AuditChangeInteractionTypeOperator

$_type
string
Default: "EqualsAuditChangeInteractionTypeOperator"
Value: "EqualsAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
Example
{
  • "$_type": "EqualsAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "value": "API"
}

AuditChangeOrderBy

$_type
string
Default: "AuditChangeOrderBy"
Value: "AuditChangeOrderBy"
field
string (EAuditChangeOrderByField)
Enum: "ID" "CREATION_TIMESTAMP" "ENTITY_TYPE" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["ID","CREATION_TIMESTAMP","ENTITY_TYPE","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "AuditChangeOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

AuditChangeQuery

$_type
string
Default: "AuditChangeQuery"
Value: "AuditChangeQuery"
Array of any (AuditChangeSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AuditChangeOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "AuditChangeQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

AuditChangeResult

$_type
string
Default: "AuditChangeResult"
Value: "AuditChangeResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (AuditChange) [ items ]

The returned list of entities

{
  • "$_type": "AuditChangeResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

AuditChangeSearchFilter

$_type
string
Default: "AccountChangeAuditChangeSearchFilter"
Value: "AccountChangeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (BooleanOperator)
Example
{
  • "$_type": "AccountChangeAuditChangeSearchFilter",
  • "field": "ACCOUNT_CHANGE",
  • "operator": {
    }
}

AuditChangeType

string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
"CREATE"

AuditChangeTypeOperator

$_type
string
Default: "EqualsAuditChangeTypeOperator"
Value: "EqualsAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
Example
{
  • "$_type": "EqualsAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "value": "CREATE"
}

AuditInteractionType

string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
"API"

AuthenticationTokenCreationResult

$_type
string
Default: "AuthenticationTokenCreationResult"
Value: "AuthenticationTokenCreationResult"
token
string
{
  • "$_type": "AuthenticationTokenCreationResult",
  • "token": "string"
}

AuthenticatorCreateAuthenticationTokenBody

username
string

The username for which the token is created

password
string

The password of the user to authenticate

{
  • "username": "string",
  • "password": "string"
}

AuthenticatorImpersonateBody

username
string

If set and userid is set to null, the user is searched by the name

userId
string

If set, the username is ignored and the user for the given id is impersonated

keepRole
boolean

If true, the impersonated user keeps the SUPER_ADMIN role even if they don't normally have it.

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "username": "string",
  • "userId": "string",
  • "keepRole": true,
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthenticatorLoginBody

username
string

user to use for login

password
string

password to use for login

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "username": "string",
  • "password": "string",
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthenticatorLogoutBody

redirectOnSuccess
string

redirection URL when the operation is successful

{
  • "redirectOnSuccess": "string"
}

AuthenticatorResetImpersonationBody

redirectOnSuccess
string

redirection URL when the operation is successful. Also if nothing needed to be done.

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthenticatorSetDefaultLocaleBody

locale
string

The new locale in the language-tag format (as defined in the IETF BCP 47) which should be used (e.g. en - english, de - german, fr - french, it - italian)

{
  • "locale": "string"
}

AuthenticatorSwitchToAccountBody

accountId
string

the account id to impersonate on

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "accountId": "string",
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthorizationRoleAuditChangeSearchFilter

$_type
string
Default: "AuthorizationRoleAuditChangeSearchFilter"
Value: "AuthorizationRoleAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRoleAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AuthorizationRoleOperator

$_type
string
Default: "EqualsAuthorizationRoleOperator"
Value: "EqualsAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

Example
{
  • "$_type": "EqualsAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "value": "SUPER_ADMIN"
}

AuthorizationRolePersonSearchFilter

$_type
string
Default: "AuthorizationRolePersonSearchFilter"
Value: "AuthorizationRolePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRolePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

AuthorizationRolePersonTypedSearchFilter

$_type
string
Default: "AuthorizationRolePersonTypedSearchFilter"
Value: "AuthorizationRolePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRolePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

AuthorizationRoleUserSearchFilter

$_type
string
Default: "AuthorizationRoleUserSearchFilter"
Value: "AuthorizationRoleUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRoleUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

AutoPauseNotificationsReasonData

$_type
string
Default: "AutoPauseNotificationsReasonData"
Value: "AutoPauseNotificationsReasonData"
sourceId
string

A custom identifier for the reason to auto-pause notifications.
Max length is 36 characters.

displayName
string

The name of the reason to auto-pause notifications that will appear in the UI

expirationTimestamp
integer <int64>

The Unix timestamp (ms) when the auto-pause expires

{
  • "$_type": "AutoPauseNotificationsReasonData",
  • "sourceId": "string",
  • "displayName": "string",
  • "expirationTimestamp": 0
}

AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter

$_type
string
Default: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
Value: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (TimestampOperator)
{
  • "$_type": "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter

$_type
string
Default: "AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter"
Value: "AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

Avatar

$_type
string
Default: "Avatar"
Value: "Avatar"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

imageZoomFactor
number <float>

Zoom factor to crop the original image. Must be bigger than 1. If omitted a minimal factor will be computed.

imageXPositionRatio
number <float>

Ratio to determine the horizontal position of the cropping area. Must be between 0 and 1: 0 means moved at the left border, 1 means moved at the right border. If omitted 0.5 will be used.

imageYPositionRatio
number <float>

Ratio to determine the vertical position of the cropping area. Must be between 0 and 1: 0 means moved at the top border, 1 means moved at the bottom border. If omitted 0.5 will be used.

imageRotationAngle
integer <int32>

Clockwise angle in degree (0-380) for rotation. If omitted 0 will be used.

imageData
string

Image content as data URL scheme (RFC2397 - data:[<mediatype>][;base64],<data>)

{
  • "$_type": "Avatar",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "imageZoomFactor": 0,
  • "imageXPositionRatio": 0,
  • "imageYPositionRatio": 0,
  • "imageRotationAngle": 0,
  • "imageData": "string"
}

AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter

$_type
string
Default: "AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter"
Value: "AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

AwaitedPersonTypeChangeTimestampConversationSearchFilter

$_type
string
Default: "AwaitedPersonTypeChangeTimestampConversationSearchFilter"
Value: "AwaitedPersonTypeChangeTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "AwaitedPersonTypeChangeTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AwaitedPersonTypeChangedEvent

$_type
string
Default: "AwaitedPersonTypeChangedEvent"
Value: "AwaitedPersonTypeChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "AwaitedPersonTypeChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

AwaitedPersonTypeConversationHistorySearchFilter

$_type
string
Default: "AwaitedPersonTypeConversationHistorySearchFilter"
Value: "AwaitedPersonTypeConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (AwaitedPersonTypeOperator)
{
  • "$_type": "AwaitedPersonTypeConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

AwaitedPersonTypeConversationSearchFilter

$_type
string
Default: "AwaitedPersonTypeConversationSearchFilter"
Value: "AwaitedPersonTypeConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (AwaitedPersonTypeOperator)
{
  • "$_type": "AwaitedPersonTypeConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AwaitedPersonTypeOperator

$_type
string
Default: "EqualsAwaitedPersonTypeOperator"
Value: "EqualsAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

Example
{
  • "$_type": "EqualsAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

BooleanOperator

$_type
string
Default: "EqualsBooleanOperator"
Value: "EqualsBooleanOperator"
type
string (EBooleanOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
value
boolean
Example
{
  • "$_type": "EqualsBooleanOperator",
  • "type": "EQUALS",
  • "value": true
}

BotBoardingOfferResponse

$_type
string
Default: "BotBoardingOfferResponse"
Value: "BotBoardingOfferResponse"
offerAccepted
boolean
{
  • "$_type": "BotBoardingOfferResponse",
  • "offerAccepted": true
}

BotDialogClosedEvent

$_type
string
Default: "BotDialogClosedEvent"
Value: "BotDialogClosedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

conversationId
string

The ID of the conversation this dialog belongs to.

counterpartPersonId
string

The ID of the person the bot is talking to.

{
  • "$_type": "BotDialogClosedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "conversationId": "string",
  • "counterpartPersonId": "string"
}

BotDialogClosedRequest

$_type
string
Default: "BotDialogClosedRequest"
Value: "BotDialogClosedRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

conversationId
string

The ID of the conversation this dialog belongs to.

counterpartPersonId
string

The ID of the person the bot is talking to.

{
  • "$_type": "BotDialogClosedRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "conversationId": "string",
  • "counterpartPersonId": "string"
}

BotDialogClosedResponse

$_type
string
Default: "BotDialogClosedResponse"
Value: "BotDialogClosedResponse"
{
  • "$_type": "BotDialogClosedResponse"
}

BotDialogCounterpartChanged

$_type
string
Default: "BotDialogCounterpartChanged"
Value: "BotDialogCounterpartChanged"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotDialogCounterpartChanged",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "oldCounterpartPerson": {
    },
  • "newCounterpartPerson": {
    }
}

BotDialogCounterpartChangedRequest

$_type
string
Default: "BotDialogCounterpartChangedRequest"
Value: "BotDialogCounterpartChangedRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotDialogCounterpartChangedRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "oldCounterpartPerson": {
    },
  • "newCounterpartPerson": {
    }
}

BotDialogCounterpartChangedResponse

$_type
string
Default: "BotDialogCounterpartChangedResponse"
Value: "BotDialogCounterpartChangedResponse"
{
  • "$_type": "BotDialogCounterpartChangedResponse"
}

BotDialogMessageEvent

$_type
string
Default: "BotDialogMessageEvent"
Value: "BotDialogMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "BotDialogMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "conversationMessage": {
    }
}

BotDialogMessageRequest

$_type
string
Default: "BotDialogMessageRequest"
Value: "BotDialogMessageRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "BotDialogMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "conversationMessage": {
    }
}

BotDialogMessageResponse

$_type
string
Default: "BotDialogMessageResponse"
Value: "BotDialogMessageResponse"
{
  • "$_type": "BotDialogMessageResponse"
}

BotDialogMessageStateEvent

$_type
string
Default: "BotDialogMessageStateEvent"
Value: "BotDialogMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

messageId
string

The ID of the message which state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

botPersonId
string

The ID of the bot that sent the message

conversationId
string

The conversation the message belongs to

{
  • "$_type": "BotDialogMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "botPersonId": "string",
  • "conversationId": "string"
}

BotDialogMessageStateRequest

$_type
string
Default: "BotDialogMessageStateRequest"
Value: "BotDialogMessageStateRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

messageId
string

The ID of the message whose state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

botPersonId
string

The ID of the bot that sent the message

conversationId
string

The conversation the message belongs to

{
  • "$_type": "BotDialogMessageStateRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "botPersonId": "string",
  • "conversationId": "string"
}

BotDialogMessageStateResponse

$_type
string
Default: "BotDialogMessageStateResponse"
Value: "BotDialogMessageStateResponse"
{
  • "$_type": "BotDialogMessageStateResponse"
}

BotDialogOpenEvent

$_type
string
Default: "BotDialogOpenEvent"
Value: "BotDialogOpenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

dialogType
string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotDialogOpenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "dialogType": "ONBOARDING",
  • "counterpartPerson": {
    },
  • "conversation": {
    }
}

BotDialogOpenRequest

$_type
string
Default: "BotDialogOpenRequest"
Value: "BotDialogOpenRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

dialogType
string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotDialogOpenRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "dialogType": "ONBOARDING",
  • "counterpartPerson": {
    },
  • "conversation": {
    }
}

BotDialogOpenResponse

$_type
string
Default: "BotDialogOpenResponse"
Value: "BotDialogOpenResponse"
{
  • "$_type": "BotDialogOpenResponse"
}

BotDialogPostMessage

$_type
string
Default: "BotDialogPostMessage"
Value: "BotDialogPostMessage"
dialogToken
string

The token belonging to the dialog the bot wants the message to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

{
  • "$_type": "BotDialogPostMessage",
  • "dialogToken": "string",
  • "messageData": {
    }
}

BotOffboardingOfferEvent

$_type
string
Default: "BotOffboardingOfferEvent"
Value: "BotOffboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The unique dialog token for this bot, used to identify this offboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

offboardingReason
string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOffboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "offboardingPerson": {
    },
  • "offboardingReason": "FORWARDED",
  • "conversation": {
    }
}

BotOffboardingOfferRequest

$_type
string
Default: "BotOffboardingOfferRequest"
Value: "BotOffboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The unique dialog token for this bot, used to identify this offboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

offboardingReason
string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOffboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "offboardingPerson": {
    },
  • "offboardingReason": "FORWARDED",
  • "conversation": {
    }
}

BotOnboardingOfferEvent

$_type
string
Default: "BotOnboardingOfferEvent"
Value: "BotOnboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The unique dialog token for this bot, used to identify this onboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOnboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "onboardingPerson": {
    },
  • "conversation": {
    }
}

BotOnboardingOfferRequest

$_type
string
Default: "BotOnboardingOfferRequest"
Value: "BotOnboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The unique dialog token for this bot, used to identify this onboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOnboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "onboardingPerson": {
    },
  • "conversation": {
    }
}

BotParticipantData

$_type
string
Default: "BotParticipantData"
Value: "BotParticipantData"
personId
string

Person ID of the bot

hidden
boolean

Indicates if the bot is a hidden participant

{
  • "$_type": "BotParticipantData",
  • "personId": "string",
  • "hidden": true
}

BotParticipantHistoryData

$_type
string
Default: "BotParticipantHistoryData"
Value: "BotParticipantHistoryData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the bot's participation was created (timestamp when the state was set to EConversationParticipationState.CREATED)

joinedTimestamp
integer <int64>

Unix timestamp (ms) when bot joined (timestamp when the state was set to EConversationParticipationState.ONBOARDING)

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated, may be null (timestamp when the state was set to EConversationParticipationState.ACTIVE)

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when bot started offboarding, may be null (timestamp when the state was set to EConversationParticipationState.OFFBOARDING)

leftTimestamp
integer <int64>

Unix timestamp (ms) when the bot left, may be null (timestamp when the state was set to EConversationParticipationState.ENDED)

hidden
boolean

Indicates whether the bot's participation is hidden in the current conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotParticipantHistoryData",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "joinedTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "hidden": true,
  • "person": {
    }
}

BotPersonIdDialogBotSearchFilter

$_type
string
Default: "BotPersonIdDialogBotSearchFilter"
Value: "BotPersonIdDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "BotPersonIdDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

BotPostMessage

$_type
string
Default: "BotPostMessage"
Value: "BotPostMessage"
conversationId
string

The id of the conversation to which this message belongs to

senderPersonId
string

ID of the bot person that sent the message.

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If it is null, all active participations are recipients

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone. Cannot be set for REPLY message type.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

{
  • "$_type": "BotPostMessage",
  • "conversationId": "string",
  • "senderPersonId": "string",
  • "recipientPersonIds": [
    ],
  • "internal": true,
  • "replyToMessageId": "string",
  • "messageData": {
    }
}

BotReboardingOfferEvent

$_type
string
Default: "BotReboardingOfferEvent"
Value: "BotReboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The dialog token for this bot, used to identify this reboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotReboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "reboardingPerson": {
    },
  • "conversation": {
    }
}

BotReboardingOfferRequest

$_type
string
Default: "BotReboardingOfferRequest"
Value: "BotReboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The dialog token for this bot, used to identify this reboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotReboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "reboardingPerson": {
    },
  • "conversation": {
    }
}

BotsCancelDialogBotTypingIndicatorBody

dialogToken
string

The token that belongs to the bot's dialog

{
  • "dialogToken": "string"
}

BotsCancelPendingDialogQuestionsBody

dialogToken
string

The token belonging to the dialog

{
  • "dialogToken": "string"
}

BotsCancelPendingQuestionBody

conversationId
string

The ID of the conversation the question message was sent to

questionMessageId
string

The ID of the question message that will be canceled

{
  • "conversationId": "string",
  • "questionMessageId": "string"
}

BotsDialogMessageDeliveredBody

dialogToken
string

The token that belongs to the bot's dialog

messageId
string

The ID of the delivered message

{
  • "dialogToken": "string",
  • "messageId": "string"
}

BotsDialogMessageReadBody

dialogToken
string

The token that belongs to the bot's dialog

messageId
string

The ID of the message that was read

{
  • "dialogToken": "string",
  • "messageId": "string"
}

BotsFinishDialogBody

dialogToken
string

The dialog token contained in each bot dialog webhook.

reason
string (EBotDialogFinishReason)
Enum: "HAND_OFF" "SOLVED" "ABORTED"
enum-descriptions: ["HAND_OFF: The bot is done with his part and the next bot can to the on-, re- or offboarding.","SOLVED: The problem of the dialog was solved and therefore no further bots are invoked.","ABORTED: The dialog was not successful and the on-, re- or offboarding has to be aborted."]

Reason why a bot finished a dialog.

{
  • "dialogToken": "string",
  • "reason": "HAND_OFF"
}

BotsRestrictDialogCounterpartBody

dialogToken
string

The dialog token included in each bot dialog webhook

maxChatInputLength
integer <int32>

The maximum number of characters in a message

{
  • "dialogToken": "string",
  • "maxChatInputLength": 0
}

BotsStartDialogBotTypingIndicatorBody

dialogToken
string

The token that belongs to the bot's dialog

{
  • "dialogToken": "string"
}

Call

$_type
string
Default: "Call"
Value: "Call"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

conversationId
string

Conversation ID the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

The call initiator's person ID

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that participant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

endTimestamp
integer <int64>

UTC timestamp (ms) when the call ended

endReason
string (ECallEndReason)
Enum: "NOT_ANSWERED" "ABORTED_BY_INITIATOR" "DECLINED" "DECLINED_BECAUSE_UNAVAILABLE" "LAST_MANDATORY_PARTICIPANT_LEFT" "CONVERSATION_ENDED" "RECORDING_DENIED" "SYSTEM_SHUTDOWN" "UNKNOWN"
enum-descriptions: ["NOT_ANSWERED: The call was not answered","ABORTED_BY_INITIATOR: The initiator aborted the call while it was still ringing","DECLINED: The call was declined","DECLINED_BECAUSE_UNAVAILABLE: The call was declined because all conversation participants called were unavailable","LAST_MANDATORY_PARTICIPANT_LEFT: The call ended because the last mandatory participant left","CONVERSATION_ENDED: The call ended because the conversation ended","RECORDING_DENIED: The call ended because conversation recording was denied","SYSTEM_SHUTDOWN: The call ended because the collaboration server pod was shut down","UNKNOWN: The call ended for another reason"]

The reason a call has ended

Array of objects (CallParticipation) [ items ]
{
  • "$_type": "Call",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0,
  • "endTimestamp": 0,
  • "endReason": "NOT_ANSWERED",
  • "participations": [
    ]
}

CallAcceptedEvent

$_type
string
Default: "CallAcceptedEvent"
Value: "CallAcceptedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

{
  • "$_type": "CallAcceptedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0
}

CallDialInPublication

$_type
string
Default: "CallDialInPublication"
Value: "CallDialInPublication"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

type
string (ECallPublicationType)
Enum: "DIAL_IN" "MEDIA"
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of the dial-in service provider

dialInNumber
string

Dial-in phone number used for this publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

endTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication ended

{
  • "$_type": "CallDialInPublication",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "type": "DIAL_IN",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

CallDialInPublicationEndedEvent

$_type
string
Default: "CallDialInPublicationEndedEvent"
Value: "CallDialInPublicationEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of dial-in service provider

dialInNumber
string

Dial-in phone number used for the publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

endTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication ended

{
  • "$_type": "CallDialInPublicationEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

CallDialInPublicationStartedEvent

$_type
string
Default: "CallDialInPublicationStartedEvent"
Value: "CallDialInPublicationStartedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of dial-in service provider

dialInNumber
string

Dial-in phone number used for the publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

{
  • "$_type": "CallDialInPublicationStartedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0
}

CallEndedEvent

$_type
string
Default: "CallEndedEvent"
Value: "CallEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

endTimestamp
integer <int64>

UTC timestamp (ms) when the call ended

endReason
string (ECallEndReason)
Enum: "NOT_ANSWERED" "ABORTED_BY_INITIATOR" "DECLINED" "DECLINED_BECAUSE_UNAVAILABLE" "LAST_MANDATORY_PARTICIPANT_LEFT" "CONVERSATION_ENDED" "RECORDING_DENIED" "SYSTEM_SHUTDOWN" "UNKNOWN"
enum-descriptions: ["NOT_ANSWERED: The call was not answered","ABORTED_BY_INITIATOR: The initiator aborted the call while it was still ringing","DECLINED: The call was declined","DECLINED_BECAUSE_UNAVAILABLE: The call was declined because all conversation participants called were unavailable","LAST_MANDATORY_PARTICIPANT_LEFT: The call ended because the last mandatory participant left","CONVERSATION_ENDED: The call ended because the conversation ended","RECORDING_DENIED: The call ended because conversation recording was denied","SYSTEM_SHUTDOWN: The call ended because the collaboration server pod was shut down","UNKNOWN: The call ended for another reason"]

The reason a call has ended

{
  • "$_type": "CallEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0,
  • "endTimestamp": 0,
  • "endReason": "NOT_ANSWERED"
}

CallEstablishedEvent

$_type
string
Default: "CallEstablishedEvent"
Value: "CallEstablishedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

{
  • "$_type": "CallEstablishedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0
}

CallInitiatedEvent

$_type
string
Default: "CallInitiatedEvent"
Value: "CallInitiatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

{
  • "$_type": "CallInitiatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0
}

CallMediaPublication

$_type
string
Default: "CallMediaPublication"
Value: "CallMediaPublication"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

type
string (ECallPublicationType)
Enum: "DIAL_IN" "MEDIA"
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

publicationType
string (EMediaPublicationType)
Enum: "AUDIO" "VIDEO" "AUDIO_VIDEO" "NONE"
enum-descriptions: ["AUDIO: Only audio is being shared (typically through a microphone)","VIDEO: Only video is being shared (typically through a camera)","AUDIO_VIDEO: Both audio and video are being shared (typically microphone & camera)","NONE: No media is being published, the participant is only watching / listening to the call"]

The media being published during the participation of a call

publicationTimestamp
integer <int64>

UTC timestamp (ms) when the media publication started

{
  • "$_type": "CallMediaPublication",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "type": "DIAL_IN",
  • "publicationType": "AUDIO",
  • "publicationTimestamp": 0
}

CallOrderBy

$_type
string
Default: "CallOrderBy"
Value: "CallOrderBy"
field
string (ECallOrderByField)
Enum: "ID" "CONVERSATION_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","INITIATION_TIMESTAMP: Sort by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Sort by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Sort by the 'establishedTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CallOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CallParticipantConnectedEvent

$_type
string
Default: "CallParticipantConnectedEvent"
Value: "CallParticipantConnectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call. Null if the participant never answered the call.

{
  • "$_type": "CallParticipantConnectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0,
  • "connectedTimestamp": 0
}

CallParticipantJoinedEvent

$_type
string
Default: "CallParticipantJoinedEvent"
Value: "CallParticipantJoinedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

{
  • "$_type": "CallParticipantJoinedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0
}

CallParticipantLeftEvent

$_type
string
Default: "CallParticipantLeftEvent"
Value: "CallParticipantLeftEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call. Null if the participant never answered the call.

leftTimestamp
integer <int64>

UTC timestamp (ms) when the participant left the call

leftReason
string (ECallParticipationLeftReason)
Enum: "HANG_UP" "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "CALL_ENDED" "CALL_ABORTED" "DIAL_IN_ENDED" "REMOVED" "SYSTEM_ABORT" "UNKNOWN"
enum-descriptions: ["HANG_UP: The participant hung up","MISSED_BECAUSE_TIMEOUT: The participant missed the call because they didn't answer it","MISSED_BECAUSE_TERMINATED: The participant missed the call because the caller ended it before they could answer it","CALL_ENDED: The participation ended because the call ended","CALL_ABORTED: The participation ended because the call was aborted before they could answer it","DIAL_IN_ENDED: The participant hung up the dialed-in phone","REMOVED: The participant was removed from the conversation","SYSTEM_ABORT: The participation ended because the system aborted the call","UNKNOWN: The participant left for unknown reason"]

The reason a participant left a call they had joined earlier

{
  • "$_type": "CallParticipantLeftEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0,
  • "connectedTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "HANG_UP"
}

CallParticipation

$_type
string
Default: "CallParticipation"
Value: "CallParticipation"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person has joined

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person has left (may not be present or -1 if still online)

personId
string

Person id representing the participant

ringingTimestamp
integer <int64>

utc timestamp when this call participation actually starts ringing

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call

leftReason
string (ECallParticipationLeftReason)
Enum: "HANG_UP" "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "CALL_ENDED" "CALL_ABORTED" "DIAL_IN_ENDED" "REMOVED" "SYSTEM_ABORT" "UNKNOWN"
enum-descriptions: ["HANG_UP: The participant hung up","MISSED_BECAUSE_TIMEOUT: The participant missed the call because they didn't answer it","MISSED_BECAUSE_TERMINATED: The participant missed the call because the caller ended it before they could answer it","CALL_ENDED: The participation ended because the call ended","CALL_ABORTED: The participation ended because the call was aborted before they could answer it","DIAL_IN_ENDED: The participant hung up the dialed-in phone","REMOVED: The participant was removed from the conversation","SYSTEM_ABORT: The participation ended because the system aborted the call","UNKNOWN: The participant left for unknown reason"]

The reason a participant left a call they had joined earlier

Array of any (CallPublication) [ items ]
{
  • "$_type": "CallParticipation",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "joinedTimestamp": 0,
  • "leftTimestamp": 0,
  • "personId": "string",
  • "ringingTimestamp": 0,
  • "connectedTimestamp": 0,
  • "leftReason": "HANG_UP",
  • "publications": [
    ]
}

CallPublication

$_type
string
Default: "CallDialInPublication"
Value: "CallDialInPublication"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

type
string (ECallPublicationType)
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of the dial-in service provider

dialInNumber
string

Dial-in phone number used for this publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

endTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication ended

Example
{
  • "$_type": "CallDialInPublication",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "type": "DIAL_IN",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

CallQuery

$_type
string
Default: "CallQuery"
Value: "CallQuery"
Array of any (CallSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CallOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CallQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CallResult

$_type
string
Default: "CallResult"
Value: "CallResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Call) [ items ]

The returned list of entities

{
  • "$_type": "CallResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CallSearchFilter

$_type
string
Default: "AcceptTimestampCallSearchFilter"
Value: "AcceptTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "AcceptTimestampCallSearchFilter",
  • "field": "ACCEPT_TIMESTAMP",
  • "operator": {
    }
}

CallServiceProviderOperator

$_type
string
Default: "EqualsCallServiceProviderOperator"
Value: "EqualsCallServiceProviderOperator"
type
string (ECallServiceProviderOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
Example
{
  • "$_type": "EqualsCallServiceProviderOperator",
  • "type": "EQUALS",
  • "value": "ACS"
}

CannedResponse

$_type
string
Default: "CannedResponse"
Value: "CannedResponse"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

ownerId
string

Id of the owner of the entity. Can not be omitted.

ownerType
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

Array of objects (Placeholder) [ items ]
title
string

The title of a canned response as unique identifier. Maximum of 250 characters.

text
string

The text of a canned response. Can be omitted, but should not.

language
string

The language of a canned response, specified using the language tag format as defined in IETF BCP 47. This field can be omitted, but doing so may lead to behavior that doesn't matches users' expectations.

Only canned responses matching a conversation's language are displayed in the UI.
The following rules apply:

  • Canned response with no language defined are displayed for all conversations.
  • If the conversation language (e.g. "en-us") is more specific than the language of the canned response (e.g. "en"), the canned response is also displayed.
  • If the language of the canned response (e.g. "en-us") is more specific than the conversation language (e.g. "en"), the canned response isn't displayed.
{
  • "$_type": "CannedResponse",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "ownerId": "string",
  • "ownerType": "GLOBAL",
  • "placeholders": [
    ],
  • "title": "string",
  • "text": "string",
  • "language": "string"
}

CannedResponseIdCannedResponseUsageSearchFilter

$_type
string
Default: "CannedResponseIdCannedResponseUsageSearchFilter"
Value: "CannedResponseIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "CannedResponseIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

CannedResponseList

$_type
string
Default: "CannedResponseList"
Value: "CannedResponseList"
Array of objects (CannedResponse) [ items ]

The list of mapped entities

{
  • "$_type": "CannedResponseList",
  • "items": [
    ]
}

CannedResponseOrderBy

$_type
string
Default: "CannedResponseOrderBy"
Value: "CannedResponseOrderBy"
field
string (ECannedResponseOrderByField)
Enum: "ID" "KEY" "TITLE" "TEXT" "OWNER_TYPE" "OWNER_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","KEY: Sort by the 'key' attribute","TITLE: Sort by the 'title' attribute","TEXT: Sort by the 'text' attribute","OWNER_TYPE: Sort by the 'ownerType' attribute","OWNER_ID: Sort by the 'ownerId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CannedResponseOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CannedResponseQuery

$_type
string
Default: "CannedResponseQuery"
Value: "CannedResponseQuery"
Array of any (CannedResponseSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CannedResponseOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CannedResponseQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CannedResponseResult

$_type
string
Default: "CannedResponseResult"
Value: "CannedResponseResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (CannedResponse) [ items ]

The returned list of entities

{
  • "$_type": "CannedResponseResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CannedResponseSearchFilter

$_type
string
Default: "CreationTimestampCannedResponseSearchFilter"
Value: "CreationTimestampCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampCannedResponseSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

CannedResponseUsage

$_type
string
Default: "CannedResponseUsage"
Value: "CannedResponseUsage"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

cannedResponseId
string

The ID of the canned response used by a person within a message

personId
string

The ID of the person who used the canned response within a message

messageId
string

The ID of the message where a canned response was used

conversationId
string

The ID of the conversation where a canned response was used

{
  • "$_type": "CannedResponseUsage",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "cannedResponseId": "string",
  • "personId": "string",
  • "messageId": "string",
  • "conversationId": "string"
}

CannedResponseUsageCountQuery

$_type
string
Default: "CannedResponseUsageCountQuery"
Value: "CannedResponseUsageCountQuery"
Array of any (CannedResponseUsageSearchFilter) [ items ]

List of filters to narrow the search of entities

{
  • "$_type": "CannedResponseUsageCountQuery",
  • "searchFilters": [
    ]
}

CannedResponseUsageOrderBy

$_type
string
Default: "CannedResponseUsageOrderBy"
Value: "CannedResponseUsageOrderBy"
field
string (ECannedResponseUsageOrderByField)
Enum: "ID" "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_ID: Sort by the 'personId' attribute","CANNED_RESPONSE_ID: Sort by the 'cannedResponseId' attribute","MESSAGE_ID: Sort by the 'messageId' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CannedResponseUsageOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CannedResponseUsageQuery

$_type
string
Default: "CannedResponseUsageQuery"
Value: "CannedResponseUsageQuery"
Array of any (CannedResponseUsageSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CannedResponseUsageOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CannedResponseUsageQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CannedResponseUsageResult

$_type
string
Default: "CannedResponseUsageResult"
Value: "CannedResponseUsageResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (CannedResponseUsage) [ items ]

The returned list of entities

{
  • "$_type": "CannedResponseUsageResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CannedResponseUsageSearchFilter

$_type
string
Default: "CannedResponseIdCannedResponseUsageSearchFilter"
Value: "CannedResponseIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "CannedResponseIdCannedResponseUsageSearchFilter",
  • "field": "CANNED_RESPONSE_ID",
  • "operator": {
    }
}

CannedResponseUsedEvent

$_type
string
Default: "CannedResponseUsedEvent"
Value: "CannedResponseUsedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

Array of objects (CannedResponse) [ items ]

The list of the used canned responses

{
  • "$_type": "CannedResponseUsedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    },
  • "usedCannedResponses": [
    ]
}

CardMessageData

$_type
string
Default: "CardMessageData"
Value: "CardMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

imageUrl
string

URL of the image displayed at the top of the card.

imageAltText
string

Alt text for the image.

title
string

Title displayed bold below the image.

body
string

Body text which may optionally contain markdown.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MessageAction) [ items ]

Actions which will be displayed at the bottom of the card.

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "CardMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

CardPostMessageData

$_type
string
Default: "CardPostMessageData"
Value: "CardPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

imageUrl
string

URL of the image displayed at the top of the card. (optional)

  • The image is always displayed with an aspect ratio of 16:9
  • If the image doesn't fit the aspect ratio it's magnified to cover the whole area
  • Depending on the chat windows size, the image is displayed with a width of 200-400px.

imageAltText
string

Alt text for the image. Required if imageUrl is set.

title
string

Title displayed below the image. (optional)

Max length is 64 characters.

body
string

Body text. May optionally contain Markdown. (optional)

Max length is 640 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MessageAction) [ items ]

Actions to be displayed at the bottom of the card. (optional)

Max number of actions is 5.

Array of objects (QuickReply) [ items ]

List of quick replies available to the message's recipients. (optional)

Max number of quick replies is 13.

{
  • "$_type": "CardPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

ChangeTypeAuditChangeSearchFilter

$_type
string
Default: "ChangeTypeAuditChangeSearchFilter"
Value: "ChangeTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (AuditChangeTypeOperator)
{
  • "$_type": "ChangeTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ChatSuggestionRequest

$_type
string
Default: "ChatSuggestionRequest"
Value: "ChatSuggestionRequest"
accountId
string
serviceName
string
suggestionId
string

Unique ID of the request

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

Array of any (MessageData) [ items ]

The messages for which the person is requesting a suggestion

object (ChatSuggestionRequestCapabilities)
{
  • "$_type": "ChatSuggestionRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "suggestionId": "string",
  • "requestingPerson": {
    },
  • "conversation": {
    },
  • "relatedMessages": [
    ],
  • "capabilities": {
    }
}

ChatSuggestionRequestCapabilities

$_type
string
Default: "ChatSuggestionRequestCapabilities"
Value: "ChatSuggestionRequestCapabilities"
markdownSupported
boolean

Indicates whether the caller of the request supports markdown syntax in the response or not

maxCharsSupported
integer <int32>

The maximum number of characters in the response that are supported by the caller

{
  • "$_type": "ChatSuggestionRequestCapabilities",
  • "markdownSupported": true,
  • "maxCharsSupported": 0
}

ChatSuggestionResponse

$_type
string
Default: "EmptyChatSuggestionResponse"
Value: "EmptyChatSuggestionResponse"
type
string (EChatSuggestionResponseType)
enum-descriptions: ["EMPTY","TEXT"]
reason
string (EEmptyChatSuggestionReason)
Enum: "NO_SUGGESTION" "NOT_AVAILABLE" "OTHER"
enum-descriptions: ["NO_SUGGESTION","NOT_AVAILABLE","OTHER"]
hint
string
Example
{
  • "$_type": "EmptyChatSuggestionResponse",
  • "type": "EMPTY",
  • "reason": "NO_SUGGESTION",
  • "hint": "string"
}

CompoundOperator

$_type
string
Default: "AndCompoundOperator"
Value: "AndCompoundOperator"
type
string (ECompoundOperatorType)
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
Example
{
  • "$_type": "AndCompoundOperator",
  • "type": "AND"
}

ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
Value: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (StringOperator)
{
  • "$_type": "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter"
Value: "ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (ContactIdentifierFieldTypeOperator)
{
  • "$_type": "ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ContactIdentifierFieldTypeOperator

$_type
string
Default: "EqualsContactIdentifierFieldTypeOperator"
Value: "EqualsContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

Example
{
  • "$_type": "EqualsContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "value": "EMAIL"
}

ContainsStringOperator

$_type
string
Default: "ContainsStringOperator"
Value: "ContainsStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string

The value to check if it is contained within the searched field. Mandatory.

caseSensitive
boolean

Whether the search should be case sensitive. Optional, false if not provided.

{
  • "$_type": "ContainsStringOperator",
  • "type": "EQUALS",
  • "value": "string",
  • "caseSensitive": true
}

ContextPersonIdConversationHistorySearchFilter

$_type
string
Default: "ContextPersonIdConversationHistorySearchFilter"
Value: "ContextPersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ContextPersonIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ContextPersonIdConversationSearchFilter

$_type
string
Default: "ContextPersonIdConversationSearchFilter"
Value: "ContextPersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ContextPersonIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ContextPersonInfo

$_type
string
Default: "ContextPersonInfo"
Value: "ContextPersonInfo"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

osName
string

The operation system name of the visitors computer

osVersion
string

The version of the operation system of the visitors computer

browserName
string

The name of the browser the visitor uses

browserVersion
string

The version of the browser the visitor uses

locale
string

The locale defined in the browser of the visitor (BCP 47 language tag form including region if available)

city
string

The city in which the visitor is (probably)

country
string

The country in which the visitor is (probable)

{
  • "$_type": "ContextPersonInfo",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "osName": "string",
  • "osVersion": "string",
  • "browserName": "string",
  • "browserVersion": "string",
  • "locale": "string",
  • "city": "string",
  • "country": "string"
}

ConversationActiveEvent

$_type
string
Default: "ConversationActiveEvent"
Value: "ConversationActiveEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationActiveEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationCreatedEvent

$_type
string
Default: "ConversationCreatedEvent"
Value: "ConversationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationCreationBotParticipantData

$_type
string
Default: "ConversationCreationBotParticipantData"
Value: "ConversationCreationBotParticipantData"
personId
string

Person ID of the bot. Mandatory.

hidden
boolean

Indicates if the bot should be a hidden participant. Optional, false by default.

{
  • "$_type": "ConversationCreationBotParticipantData",
  • "personId": "string",
  • "hidden": true
}

ConversationCreationData

$_type
string
Default: "ConversationCreationData"
Value: "ConversationCreationData"
topic
string

Topic of the conversation. Optional unless the initial engagement type is EInitialEngagementType.SCHEDULED_CONVERSATION, in which case it's mandatory.

scheduledTimestamp
integer <int64>

Unix timestamp (ms) when the conversation is scheduled. Can only be set for conversations with the initial engagement typeEInitialEngagementType.SCHEDULED_CONVERSATION.

object (ConversationCreationRecipientData)

The recipient of a conversation when creating a new conversation

Array of objects (ConversationCreationParticipantData) [ items ]

Participants taking part in the conversation through Unblu. There must be at least one participant in this list or in the externalParticipants list.

Array of objects (ConversationCreationExternalParticipantData) [ items ]

Participants taking part in the conversation through an external messenger. There must be at least one participant in this list or in theparticipants list. It must be omitted if externalMessengerChannelId is not set.

Array of objects (ConversationCreationBotParticipantData) [ items ]

Bots taking part in the conversation. Optional.

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

locale
string

The locale of the conversation language as a BCP 47 language tag, including the region if available. Optional, if not provided, the account default locale will be used.

visitorData
string

Custom data for the visitor. This has no specific format. Optional.

conversationTemplateId
string

Template ID of the conversation. If omitted, the default conversation template is retrieved based on the initial engagement type. If provided the value ofinitialEngagementType has to match the initial engagement type of the template.

externalMessengerChannelId
string

ID of the external messenger channel the conversation should be linked to. If this property is null the conversation is an Unblu conversation and not linked to an external messenger channel.

sourceId
string

Custom ID to identify the source of the conversation. Typically used in connection with an external messenger to create a link to the external conversation.
If this ID is specified, it has to be unique for each external channel. Even if the external channel is not used (null), the custom ID must be unique for this "null".

sourceUrl
string

URL identifying the system where the conversation was created, for example a CRM. Optional.

initialEngagementUrl
string

The URL where the conversation originated. Optional.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

{
  • "$_type": "ConversationCreationData",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "initialEngagementUrl": "string",
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

ConversationCreationExternalParticipantData

$_type
string
Default: "ConversationCreationExternalParticipantData"
Value: "ConversationCreationExternalParticipantData"
externalMessengerContactId
string

The ID of the ExternalMessengerContact for the person in question

participationType
string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ConversationCreationExternalParticipantData",
  • "externalMessengerContactId": "string",
  • "participationType": "CONTEXT_PERSON"
}

ConversationCreationParticipantData

$_type
string
Default: "ConversationCreationParticipantData"
Value: "ConversationCreationParticipantData"
personId
string

The participant's person ID. Mandatory.

hidden
boolean

Indicates if the participant should be a hidden participant. This can only be set for agents and not for visitors. Optional, not hidden by default.

conversationStarred
boolean

Indicates whether the conversation is starred for the participant. Optional.

participationType
string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ConversationCreationParticipantData",
  • "personId": "string",
  • "hidden": true,
  • "conversationStarred": true,
  • "participationType": "ASSIGNED_AGENT"
}

ConversationCreationRecipientData

$_type
string
Default: "ConversationCreationRecipientData"
Value: "ConversationCreationRecipientData"
type
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

id
string

The recipient's ID. Mandatory.

{
  • "$_type": "ConversationCreationRecipientData",
  • "type": "AGENT",
  • "id": "string"
}

ConversationData

$_type
string
Default: "ConversationData"
Value: "ConversationData"
creationTimestamp
integer <int64>

Unix timestamp (ms) when the entity was created. It is defined when the entity is stored the first time in the system.

endTimestamp
integer <int64>

Unix timestamp (ms) when the conversation has ended (all participants have finished their offboarding).

id
string

The unique ID of the conversation

accountId
string

The ID of the account the conversation belongs to

topic
string

Topic of the conversation

scheduledTimestamp
integer <int64>

Unix timestamp (ms) when the conversation is scheduled for. Only present for conversations with the initial engagement type SCHEDULED_CONVERSATION.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ParticipantData) [ items ]

The current participants of the conversation

Array of objects (ExternalParticipantData) [ items ]

The current participants of the conversation who are connected through an external messenger

Array of objects (BotParticipantData) [ items ]

The current bots of the conversation

state
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

locale
string

Locale of the conversation language (as BCP 47 language tag form including region if available)

tokboxSessionId
string

Tokbox session ID

visitorData
string

Custom data for the visitor. This has no specific format.

conversationTemplateId
string

Template ID that this conversation is based on

inheritConfigurationAndTexts
boolean

True if the conversation inherits all configuration and texts from its conversation template. If omitted, the value based onConversationTemplate.inheritConfigurationAndTexts will be used.

Array of objects (ConversationLink) [ items ]

Links to open the conversation

externalMessengerChannelId
string

ID of the external messenger channel the conversation is linked to. If this property is null the conversation is an Unblu conversation and not linked to a messenger channel.

sourceId
string

Custom ID to identify the source of the conversation. Typically used in connection with an external messenger to create a link to the external conversation.

sourceUrl
string

URL identifying the system where the conversation was created. Null if created in Unblu.

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

initialEngagementUrl
string

The URL where the conversation originated. The following conversations always have an initial engagement URL:

  • Conversations initiated by a visitor on a customer's website where Unblu is integrated
  • PIN-based conversations, provided a visitor redeems the PIN on a customer's website where Unblu is integrated
  • Conversations created using the Web API, provided an initial engagement URL was included when the conversation was created
Conversations initiated from the mobile SDK don't have an initial engagement URL.

awaitedPersonType
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

awaitedPersonTypeChangeTimestamp
integer <int64>

Unix timestamp (ms) when the awaited person type last changed

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

ConversationEndReasonOperator

$_type
string
Default: "EqualsConversationEndReasonOperator"
Value: "EqualsConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

Example
{
  • "$_type": "EqualsConversationEndReasonOperator",
  • "type": "EQUALS",
  • "value": "ENDED_BY_PARTICIPANT"
}

ConversationEndedEvent

$_type
string
Default: "ConversationEndedEvent"
Value: "ConversationEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

endComment
string

The comment provided when ending the conversation. May be null.

{
  • "$_type": "ConversationEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    },
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endPerson": {
    },
  • "endComment": "string"
}

ConversationFileData

$_type
string
Default: "ConversationFileData"
Value: "ConversationFileData"
conversationId
string

The id of the Conversation, in which the file was shared/sent

ownerPersonId
string

The id of the owner Person, who shared/sent this file in the conversation

name
string

The name of the file, which was shared/sent in the conversation

mimeType
string

The mime type of the file, which was shared/sent in the conversation

source
string

The source of the file, which was shared/sent in the conversation (is either the name of the uploading person or the uploading system)

fileStoreId
string

The file store id of the actual content of the file, which was shared/sent in the conversation. Stored at the collaboration server.

totalSize
integer <int64>

The total size in bytes of the file, which was shared/sent in the conversation. Note that it is not always set.

Array of objects (DownloadLink) [ items ]

URLs to download the file. One link is to download the file via the web API, the other is to download the file from the Agent Desk. The URLs are only accessible to authenticated users that have access to the referenced conversation. Authentication is possible with basic authentication or a valid session cookie.
If the file is currently being reviewed by one or more file interceptors, calling one of the URLs returns a 403 code until the file upload has been approved.

creationTimestamp
integer <int64>

Creation timestamp, when the file was shared/sent in the conversation

{
  • "$_type": "ConversationFileData",
  • "conversationId": "string",
  • "ownerPersonId": "string",
  • "name": "string",
  • "mimeType": "string",
  • "source": "string",
  • "fileStoreId": "string",
  • "totalSize": 0,
  • "downloadLinks": [
    ],
  • "creationTimestamp": 0
}

ConversationFileDataList

$_type
string
Default: "ConversationFileDataList"
Value: "ConversationFileDataList"
Array of objects (ConversationFileData) [ items ]

The list of mapped entities

{
  • "$_type": "ConversationFileDataList",
  • "items": [
    ]
}

ConversationHistoryData

$_type
string
Default: "ConversationHistoryData"
Value: "ConversationHistoryData"
id
string

Id of the conversation

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

Array of objects (ParticipantHistoryData) [ items ]

The (current and earlier) participants of the conversation

Array of objects (ExternalParticipantHistoryData) [ items ]

The (current and earlier) participants of the conversation who are connected through an external messenger

Array of objects (BotParticipantHistoryData) [ items ]

The (current and earlier) bots of the conversation

createdTimestamp
integer <int64>

Unix timestamp (ms) when the conversation was created (timestamp when the state was set to EConversationState.CREATED)

assigneeJoinTimestamp
integer <int64>

Unix timestamp (ms) when the assignee joined the conversation (timestamp when the state of the first agent participant was set toEConversationParticipationState.ACTIVE) Value is null of no assignee has joined yet.

endTimestamp
integer <int64>

Unix timestamp (ms) when the conversation has ended (all active participants have finished their offboarding; timestamp when the state was set toEConversationState.ENDED)

lastMessageTimestamp
integer <int64>

Unix timestamp (ms) when the last conversation message was sent. Null if there hasn't been any yet.

lastCompletedRecordingTimestamp
integer <int64>

Unix timestamp (ms) when the last recording was completed. Null if there hasn't been any yet.

state
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

locale
string

Locale of the conversation language (as BCP 47 language tag form including region if available)

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

endComment
string
tokboxSessionId
string

Tokbox sessionId.

conversationTemplateId
string

Template ID of the conversation.

externalMessengerChannelIconId
string

External messenger channel id.

externalMessengerChannelName
string

External messenger name.

topic
string

Topic of the conversation.

sourceUrl
string

Source URL of the conversation.

scheduledTimestamp
integer <int64>

Unix timestamp (ms) when the conversation is scheduled for. Can be set only for conversations with initialEngagementType :EInitialEngagementType.SCHEDULED_CONVERSATION

dueDeletionTimestamp
integer <int64>
  • Unix timestamp (ms) when this conversation will be automatically deleted. See getRetentionIntervalConversationSeconds for details.
initialEngagementUrl
string

The URL where the conversation originated. The following conversations always have an initial engagement URL:

  • Conversations initiated by a visitor on a customer's website where Unblu is integrated
  • PIN-based conversations, provided a visitor redeems the PIN on a customer's website where Unblu is integrated
  • Conversations created using the Web API, provided an initial engagement URL was included when the conversation was created
Conversations initiated from the mobile SDK don't have an initial engagement URL.

awaitedPersonType
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

awaitedPersonTypeChangeTimestamp
integer <int64>

Unix timestamp (ms) when the awaited person type last changed

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

Array of objects (ConversationStateChangeData) [ items ]

List of conversation state changes that occurred in a conversation with corresponding time stamps

{
  • "$_type": "ConversationHistoryData",
  • "id": "string",
  • "recipient": {
    },
  • "endPerson": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "createdTimestamp": 0,
  • "assigneeJoinTimestamp": 0,
  • "endTimestamp": 0,
  • "lastMessageTimestamp": 0,
  • "lastCompletedRecordingTimestamp": 0,
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "locale": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endComment": "string",
  • "tokboxSessionId": "string",
  • "conversationTemplateId": "string",
  • "externalMessengerChannelIconId": "string",
  • "externalMessengerChannelName": "string",
  • "topic": "string",
  • "sourceUrl": "string",
  • "scheduledTimestamp": 0,
  • "dueDeletionTimestamp": 0,
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "conversationVisibility": "PRIVATE",
  • "stateChanges": [
    ]
}

ConversationHistoryDataResult

$_type
string
Default: "ConversationHistoryDataResult"
Value: "ConversationHistoryDataResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationHistoryData) [ items ]

The returned list of entities

{
  • "$_type": "ConversationHistoryDataResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationHistoryMessageData

$_type
string
Default: "ConversationHistoryMessageData"
Value: "ConversationHistoryMessageData"
id
string

ID of the message.

conversationId
string

ID of the conversation to which this message belongs.

sendTimestamp
integer <int64>

UTC time stamp when the message was sent from the client.

serverTimestamp
integer <int64>

UTC time stamp when the message was received on the Unblu server.

senderPersonId
string

ID of the person that send the message. May be null for system messages.

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

recipientPersonIds
Array of strings

IDs of persons that the message was addressed to.

If it is null, all active participations are regarded as recipients.

botThreadId
string

ID of the bot thread the message is part of. Always null for messages outside bot threads.

rejectionSeverity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

rejectionReason
string

The reason why a message was rejected. Null for messages that weren't rejected.

text
string

Text representation of the message.

{
  • "$_type": "ConversationHistoryMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "sendTimestamp": 0,
  • "serverTimestamp": 0,
  • "senderPersonId": "string",
  • "type": "TEXT",
  • "internal": true,
  • "replyToMessageId": "string",
  • "recipientPersonIds": [
    ],
  • "botThreadId": "string",
  • "rejectionSeverity": "HIGH",
  • "rejectionReason": "string",
  • "text": "string"
}

ConversationHistoryOrderBy

$_type
string
Default: "ConversationHistoryOrderBy"
Value: "ConversationHistoryOrderBy"
field
string (EConversationHistoryOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON" "AWAITED_PERSON_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE" "LAST_MESSAGE_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON: Sort by the 'awaitedPerson' attribute","AWAITED_PERSON_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute","LAST_MESSAGE_TIMESTAMP: Sort by the 'lastMessageTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationHistoryOrderBy",
  • "field": "CREATION_TIMESTAMP",
  • "order": "ASCENDING"
}

ConversationHistoryQuery

$_type
string
Default: "ConversationHistoryQuery"
Value: "ConversationHistoryQuery"
Array of any (ConversationHistorySearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationHistoryOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationHistoryQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationHistorySearchFilter

$_type
string
Default: "AssigneePersonIdConversationHistorySearchFilter"
Value: "AssigneePersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "AssigneePersonIdConversationHistorySearchFilter",
  • "field": "ASSIGNEE_PERSON_ID",
  • "operator": {
    }
}

ConversationIdCallSearchFilter

$_type
string
Default: "ConversationIdCallSearchFilter"
Value: "ConversationIdCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationIdCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ConversationIdCannedResponseUsageSearchFilter

$_type
string
Default: "ConversationIdCannedResponseUsageSearchFilter"
Value: "ConversationIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

ConversationIdConversationInvitationSearchFilter

$_type
string
Default: "ConversationIdConversationInvitationSearchFilter"
Value: "ConversationIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

ConversationInvitationData

$_type
string
Default: "ConversationInvitationData"
Value: "ConversationInvitationData"
accountId
string

The account ID the invitation originated from.

invitationType
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
invitationState
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

id
string

Id of the invitation

conversationId
string

Id of the conversation that this invitation is for

token
string

Token (digits for pin or character sequence) required to redeem or revoke the invitation

createdTimestamp
integer <int64>

Unix timestamp of when the invitation was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

creatorPersonId
string

If the creator is an agent or visitor, then this contains the ID of the corresponding person.

targetId
string

ID of the recipient that is expected to redeem this invitation

targetType
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
Array of objects (ConversationLink) [ items ]

List of links to accept this invitation and open the corresponding conversation.
Only one link may be used.

redeemingPersonId
string

ID of the person that redeemed this invitation. (Not present as long as the invitation is not redeemed)

comment
string

Text provided by the creator of the invitation which will be displayed to the target of the invitation.

joinHidden
boolean

Determines if the target of the invitation joins the conversation as a hidden participant

email
string

Email address that will be used if an anonymous visitor redeems this invitation (only possible for Invitations of type VISITOR_INVITATION and PIN_CONVERSATION). The email address will be stored on the corresponding visitor's person.

nickname
string

Nickname that will be used if an anonymous visitor redeems this invitation (only possible for Invitations of type VISITOR_INVITATION and PIN_CONVERSATION). The nickname will be stored on the corresponding visitor's person.

targetResponseStatus
string (EInvitationResponseState)
Enum: "PENDING" "DECLINED" "IGNORED" "CANCELED" "ACCEPTED"
enum-descriptions: ["PENDING: The response is pending. The user did not answer it yet.","DECLINED: The user declined the response and therefore will not accept the invitation.","IGNORED: The user ignored this invitation and the escalation should proceed","CANCELED: The invitation was canceled for that user.","ACCEPTED: The user accepted the invitation."]

The state of the response for an invitation itself or one of its secondary targets

Array of objects (ConversationInvitationSecondaryTargetData) [ items ]

The secondary invitation targets for this invitation

expirationTimestamp
integer <int64>

Unix timestamp after which the invitation is no longer valid

{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

ConversationInvitationOrderBy

$_type
string
Default: "ConversationInvitationOrderBy"
Value: "ConversationInvitationOrderBy"
field
string (EConversationInvitationOrderByField)
Enum: "TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_ID" "REDEEMER_PERSON_ID" "SUBTYPE"
enum-descriptions: ["TYPE: Sort by the 'type' attribute","TARGET_TYPE: Sort by the 'targetType' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","TARGET_ID: Sort by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","CREATOR_TYPE: Sort by the 'creatorType' attribute","CREATOR_ID: Sort by the 'creatorId' attribute","REDEEMER_PERSON_ID: Sort by the 'redeemerPersonId' attribute","SUBTYPE: Sort by the 'subtype' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationInvitationOrderBy",
  • "field": "TYPE",
  • "order": "ASCENDING"
}

ConversationInvitationQuery

$_type
string
Default: "ConversationInvitationQuery"
Value: "ConversationInvitationQuery"
Array of any (ConversationInvitationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationInvitationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationInvitationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationInvitationResult

$_type
string
Default: "ConversationInvitationResult"
Value: "ConversationInvitationResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationInvitationData) [ items ]

The returned list of entities

{
  • "$_type": "ConversationInvitationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationInvitationSearchFilter

$_type
string
Default: "ConversationIdConversationInvitationSearchFilter"
Value: "ConversationIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "ConversationIdConversationInvitationSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ConversationInvitationSecondaryTargetData

$_type
string
Default: "ConversationInvitationSecondaryTargetData"
Value: "ConversationInvitationSecondaryTargetData"
personId
string

The id of the person to who this secondary invitation target belongs to

responseState
string (EInvitationResponseState)
Enum: "PENDING" "DECLINED" "IGNORED" "CANCELED" "ACCEPTED"
enum-descriptions: ["PENDING: The response is pending. The user did not answer it yet.","DECLINED: The user declined the response and therefore will not accept the invitation.","IGNORED: The user ignored this invitation and the escalation should proceed","CANCELED: The invitation was canceled for that user.","ACCEPTED: The user accepted the invitation."]

The state of the response for an invitation itself or one of its secondary targets

{
  • "$_type": "ConversationInvitationSecondaryTargetData",
  • "personId": "string",
  • "responseState": "PENDING"
}

ConversationMessageStateEvent

$_type
string
Default: "ConversationMessageStateEvent"
Value: "ConversationMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageId
string

The id of the message which state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

conversationId
string

The conversation to which the message belongs to

{
  • "$_type": "ConversationMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "conversationId": "string"
}

ConversationNewMessageEvent

$_type
string
Default: "ConversationNewMessageEvent"
Value: "ConversationNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "ConversationNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    }
}

ConversationOffboardingEvent

$_type
string
Default: "ConversationOffboardingEvent"
Value: "ConversationOffboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

endComment
string

The comment provided when ending the conversation. May be null.

{
  • "$_type": "ConversationOffboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    },
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endPerson": {
    },
  • "endComment": "string"
}

ConversationOnboardingEvent

$_type
string
Default: "ConversationOnboardingEvent"
Value: "ConversationOnboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationOnboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationOrderBy

$_type
string
Default: "ConversationOrderBy"
Value: "ConversationOrderBy"
field
string (EConversationOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Sort by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonTypeChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationOrderBy",
  • "field": "CREATION_TIMESTAMP",
  • "order": "ASCENDING"
}

ConversationParticipationData

$_type
string
Default: "ConversationParticipationData"
Value: "ConversationParticipationData"
id
string

Unique ID of the participation

state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the participation was created. It is set when the entity is stored for the first time.

onboardingTimestamp
integer <int64>

Unix timestamp (ms) when the participation started the onboarding process. Null if the participant hasn't yet started the onboarding.

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated. Null if the participation hasn't being activated yet.

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when the participation started the offboarding process. Null if the participant hasn't yet started the offboarding.

leftTimestamp
integer <int64>

Unix timestamp (ms) when the participant left the conversation after finishing offboarding. Null if the participant is still part of the conversation.

leftReason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

leftComment
string

The comment on why the participant left the conversation. If provided, this attribute is set when offboarding starts and is null if the participant is still part of the conversation.

conversationRating
number <float>

The rating the participant gave the conversation. The rating is mapped to a number from 0-1. Null until the participant rates the conversation.

hidden
boolean

Flag indicating whether the participant is hidden

conversationStarred
boolean

Flag indictaing whether the participant has starred this conversation

conversationId
string

The ID of the conversation the participation belongs to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "ConversationParticipationData",
  • "id": "string",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "onboardingTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "FORWARDED",
  • "leftComment": "string",
  • "conversationRating": 0,
  • "hidden": true,
  • "conversationStarred": true,
  • "conversationId": "string",
  • "person": {
    }
}

ConversationQuery

$_type
string
Default: "ConversationQuery"
Value: "ConversationQuery"
Array of any (ConversationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationQueuedEvent

$_type
string
Default: "ConversationQueuedEvent"
Value: "ConversationQueuedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationQueuedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationReboardingEvent

$_type
string
Default: "ConversationReboardingEvent"
Value: "ConversationReboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationReboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationRecipientData

$_type
string
Default: "AccountData"
id
string

Unique id of the account.

displayName
string

Display-Name of the account

object

Localized Display-Name of the account

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the account: id that can be expanded.

Example
{
  • "$_type": "AccountData",
  • "id": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string"
}

ConversationRecipientTypeOperator

$_type
string
Default: "EqualsConversationRecipientTypeOperator"
Value: "EqualsConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

Example
{
  • "$_type": "EqualsConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

ConversationRecordingAvailableEvent

$_type
string
Default: "ConversationRecordingAvailableEvent"
Value: "ConversationRecordingAvailableEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

Id of the conversation this recording belongs to

blobStoreId
string

The blob store id of the actual recording.

mimeType
string

The mime type of the recording

totalSize
integer <int64>

The total size in bytes of this recording

Array of objects (DownloadLink) [ items ]

URLs to download the recording. The URLs are only accessible to authenticated users that have access to the referenced conversation. Authentication is possible with basic authentication or a valid session cookie.

recordingStartTimestamp
integer <int64>

utc timestamp when the conversation recording has started

recordingEndTimestamp
integer <int64>

utc timestamp when the conversation recording has ended

endReason
string (ERecordingEndReason)
Enum: "NORMAL" "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["NORMAL: Recording ended normally","ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
{
  • "$_type": "ConversationRecordingAvailableEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "blobStoreId": "string",
  • "mimeType": "string",
  • "totalSize": 0,
  • "downloadLinks": [
    ],
  • "recordingStartTimestamp": 0,
  • "recordingEndTimestamp": 0,
  • "endReason": "NORMAL"
}

ConversationRecordingFailedEvent

$_type
string
Default: "ConversationRecordingFailedEvent"
Value: "ConversationRecordingFailedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation this recording belongs to

recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording has started. Null if the recording failed to start.

failureReason
string (ERecordingFailedReason)
Enum: "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
{
  • "$_type": "ConversationRecordingFailedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0,
  • "failureReason": "ABORT_SYSTEM"
}

ConversationRecordingHistoryData

$_type
string
Default: "ConversationRecordingHistoryData"
Value: "ConversationRecordingHistoryData"
conversationId
string

ID of the conversation this recording belongs to

blobStoreId
string

The blob store ID of the recording

fileName
string

The filename of this recording

mimeType
string

The MIME type of the recording

totalSize
integer <int64>

The total size of this recording in bytes

Array of objects (DownloadLink) [ items ]

URLs to download the recordings. The URLs are only accessible to authenticated users that have access to the referenced conversation. Authentication is possible with either basic authentication or a valid session cookie.

recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording started

recordingEndTimestamp
integer <int64>

UTC timestamp when the conversation recording ended

status
string (ERecordingStatus)
Enum: "INITIALIZING" "PENDING" "COMPLETE"
enum-descriptions: ["INITIALIZING: Recording initializing","PENDING: Recording pending","COMPLETE: Recording completed"]
endReason
string (ERecordingEndReason)
Enum: "NORMAL" "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["NORMAL: Recording ended normally","ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
callIds
Array of strings

A list of call IDs held during this recording

{
  • "$_type": "ConversationRecordingHistoryData",
  • "conversationId": "string",
  • "blobStoreId": "string",
  • "fileName": "string",
  • "mimeType": "string",
  • "totalSize": 0,
  • "downloadLinks": [
    ],
  • "recordingStartTimestamp": 0,
  • "recordingEndTimestamp": 0,
  • "status": "INITIALIZING",
  • "endReason": "NORMAL",
  • "recordingType": "AUDIO",
  • "callIds": [
    ]
}

ConversationRecordingHistoryDataList

$_type
string
Default: "ConversationRecordingHistoryDataList"
Value: "ConversationRecordingHistoryDataList"
Array of objects (ConversationRecordingHistoryData) [ items ]

The list of mapped entities

{
  • "$_type": "ConversationRecordingHistoryDataList",
  • "items": [
    ]
}

ConversationRecordingStartedEvent

$_type
string
Default: "ConversationRecordingStartedEvent"
Value: "ConversationRecordingStartedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation this recording belongs to

recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording started

{
  • "$_type": "ConversationRecordingStartedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0
}

ConversationRecordingState

$_type
string
Default: "ConversationRecordingState"
Value: "ConversationRecordingState"
conversationId
string

Id of the conversation this recording belongs to

recordingState
string (EConversationRecordingState)
Enum: "IDLE" "INITIALIZING" "WAITING_READY" "READY" "STARTED" "STOPPED" "FAILED"
enum-descriptions: ["IDLE: Conversation recording is ready to be initialized","INITIALIZING: Conversation recording is initializing","WAITING_READY: Conversation recording is waiting for the recording entry point to become available","READY: Conversation recording is ready to start recording","STARTED: Conversation recording has started to record","STOPPED: Conversation recording has stopped recording","FAILED: Conversation recording has failed"]
recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

utc timestamp when the conversation recording has started

{
  • "$_type": "ConversationRecordingState",
  • "conversationId": "string",
  • "recordingState": "IDLE",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0
}

ConversationRequeuedEvent

$_type
string
Default: "ConversationRequeuedEvent"
Value: "ConversationRequeuedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationRequeuedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationResult

$_type
string
Default: "ConversationResult"
Value: "ConversationResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationData) [ items ]

The returned list of entities

{
  • "$_type": "ConversationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationSearchFilter

$_type
string
Default: "AssigneePersonIdConversationSearchFilter"
Value: "AssigneePersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "AssigneePersonIdConversationSearchFilter",
  • "field": "ASSIGNEE_PERSON_ID",
  • "operator": {
    }
}

ConversationStateChangeData

$_type
string
Default: "ConversationStateChangeData"
Value: "ConversationStateChangeData"
state
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

timestamp
integer <int64>

Unix timestamp when the conversation state was set (in ms).

{
  • "$_type": "ConversationStateChangeData",
  • "state": "CREATED",
  • "timestamp": 0
}

ConversationStateOperator

$_type
string
Default: "EqualsConversationStateOperator"
Value: "EqualsConversationStateOperator"
type
string (EConversationStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

Example
{
  • "$_type": "EqualsConversationStateOperator",
  • "type": "EQUALS",
  • "value": "CREATED"
}

ConversationTemplate

$_type
string
Default: "ConversationTemplate"
Value: "ConversationTemplate"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the conversation template. Maximum of 250 characters. Mandatory.

description
string

Description of the conversation template. Maximum of 500 characters. Optional.

defaultTemplate
boolean

If true, this will be the default template for the initial engagement Type

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object

A map of localized versions of the name and description of this entity

inheritConfigurationAndTexts
boolean

True if conversations, created from this template, inherit all configuration and texts. If omitted, the property is set to false. New conversations receive a copy of this conversation template's configuration and texts.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "ConversationTemplate",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "defaultTemplate": true,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_REQUEST",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

ConversationTemplateIdConversationHistorySearchFilter

$_type
string
Default: "ConversationTemplateIdConversationHistorySearchFilter"
Value: "ConversationTemplateIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationTemplateIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ConversationTemplateIdConversationSearchFilter

$_type
string
Default: "ConversationTemplateIdConversationSearchFilter"
Value: "ConversationTemplateIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationTemplateIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ConversationTemplateList

$_type
string
Default: "ConversationTemplateList"
Value: "ConversationTemplateList"
Array of objects (ConversationTemplate) [ items ]

The list of mapped entities

{
  • "$_type": "ConversationTemplateList",
  • "items": [
    ]
}

ConversationTemplateOrderBy

$_type
string
Default: "ConversationTemplateOrderBy"
Value: "ConversationTemplateOrderBy"
field
string (EConversationTemplateOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","DEFAULT_TEMPLATE: Sort by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationTemplateOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ConversationTemplateQuery

$_type
string
Default: "ConversationTemplateQuery"
Value: "ConversationTemplateQuery"
Array of any (ConversationTemplateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationTemplateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationTemplateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationTemplateResult

$_type
string
Default: "ConversationTemplateResult"
Value: "ConversationTemplateResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationTemplate) [ items ]

The returned list of entities

{
  • "$_type": "ConversationTemplateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationTemplateSearchFilter

$_type
string
Default: "CreationTimestampConversationTemplateSearchFilter"
Value: "CreationTimestampConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampConversationTemplateSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ConversationTemplateTranslation

$_type
string
Default: "ConversationTemplateTranslation"
Value: "ConversationTemplateTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "ConversationTemplateTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

ConversationUnassignedEvent

$_type
string
Default: "ConversationUnassignedEvent"
Value: "ConversationUnassignedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationUnassignedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationUpdatedEvent

$_type
string
Default: "ConversationUpdatedEvent"
Value: "ConversationUpdatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationUpdatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationVisibilityOperator

$_type
string
Default: "EqualsConversationVisibilityOperator"
Value: "EqualsConversationVisibilityOperator"
type
string (EConversationVisibilityOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

Example
{
  • "$_type": "EqualsConversationVisibilityOperator",
  • "type": "EQUALS",
  • "value": "PRIVATE"
}

ConversationsAddExternalParticipantBody

externalMessengerContactId
string

The ID of the ExternalMessengerContact to add

{
  • "externalMessengerContactId": "string"
}

ConversationsAddParticipantBody

personId
string

Id of the person to add

hidden
boolean

If the person should be hidden or not. Note: only secondary agents and bots may be hidden.

conversationStarred
boolean

If this conversation should be marked as starred for the person. If null, the default value is false

{
  • "personId": "string",
  • "hidden": true,
  • "conversationStarred": true
}

ConversationsChangeParticipantVisibilityBody

personId
string
hidden
boolean
{
  • "personId": "string",
  • "hidden": true
}

ConversationsEndBody

reason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

comment
string
{
  • "reason": "ENDED_BY_PARTICIPANT",
  • "comment": "string"
}

ConversationsOffboardParticipantBody

personId
string
reason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

comment
string
{
  • "personId": "string",
  • "reason": "FORWARDED",
  • "comment": "string"
}

ConversationsSetAssigneePersonBody

personId
string
{
  • "personId": "string"
}

ConversationsSetAwaitedPersonTypeBody

awaitedPersonType
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

{
  • "awaitedPersonType": "NONE"
}

ConversationsSetContextPersonBody

personId
string
{
  • "personId": "string"
}

ConversationsSetLocaleBody

locale
string

the new locale

{
  • "locale": "string"
}

ConversationsSetScheduledTimestampBody

scheduledTimestamp
integer <int64>

the new scheduledTimestamp rounded to nearest minute

{
  • "scheduledTimestamp": 0
}

ConversationsSetStarredBody

personId
string

the person for whom the starred status will be set

starred
boolean

the starred status to b set

{
  • "personId": "string",
  • "starred": true
}

ConversationsSetTopicBody

topic
string

the new topic

{
  • "topic": "string"
}

ConversationsSetVisibilityBody

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

{
  • "conversationVisibility": "PRIVATE"
}

ConversationsSetVisitorDataBody

$_type
string
Default: "ConversationsSetVisitorDataBody"
Value: "ConversationsSetVisitorDataBody"
visitorData
string

Custom visitor data in any format.

{
  • "$_type": "ConversationsSetVisitorDataBody",
  • "visitorData": "string"
}

CountResult

$_type
string
Default: "CountResult"
Value: "CountResult"
count
integer <int64>

Number of entities found

{
  • "$_type": "CountResult",
  • "count": 0
}

CreationTimestampAccountSearchFilter

$_type
string
Default: "CreationTimestampAccountSearchFilter"
Value: "CreationTimestampAccountSearchFilter"
field
string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampAccountSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampApiKeySearchFilter

$_type
string
Default: "CreationTimestampApiKeySearchFilter"
Value: "CreationTimestampApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampAuditChangeSearchFilter

$_type
string
Default: "CreationTimestampAuditChangeSearchFilter"
Value: "CreationTimestampAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

CreationTimestampCannedResponseSearchFilter

$_type
string
Default: "CreationTimestampCannedResponseSearchFilter"
Value: "CreationTimestampCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

CreationTimestampCannedResponseUsageSearchFilter

$_type
string
Default: "CreationTimestampCannedResponseUsageSearchFilter"
Value: "CreationTimestampCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

CreationTimestampConversationHistorySearchFilter

$_type
string
Default: "CreationTimestampConversationHistorySearchFilter"
Value: "CreationTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

CreationTimestampConversationInvitationSearchFilter

$_type
string
Default: "CreationTimestampConversationInvitationSearchFilter"
Value: "CreationTimestampConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

CreationTimestampConversationSearchFilter

$_type
string
Default: "CreationTimestampConversationSearchFilter"
Value: "CreationTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

CreationTimestampConversationTemplateSearchFilter

$_type
string
Default: "CreationTimestampConversationTemplateSearchFilter"
Value: "CreationTimestampConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampCustomExternalMessengerChannelSearchFilter"
Value: "CreationTimestampCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampDeputyRelationshipSearchFilter

$_type
string
Default: "CreationTimestampDeputyRelationshipSearchFilter"
Value: "CreationTimestampDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

CreationTimestampDialogBotSearchFilter

$_type
string
Default: "CreationTimestampDialogBotSearchFilter"
Value: "CreationTimestampDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampDomainSearchFilter

$_type
string
Default: "CreationTimestampDomainSearchFilter"
Value: "CreationTimestampDomainSearchFilter"
field
string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampDomainSearchFilter",
  • "field": "DOMAIN_NAME",
  • "operator": {
    }
}

CreationTimestampExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerChannelSearchFilter"
Value: "CreationTimestampExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampExternalMessengerContactSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerContactSearchFilter"
Value: "CreationTimestampExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

CreationTimestampFileUploadInterceptorSearchFilter

$_type
string
Default: "CreationTimestampFileUploadInterceptorSearchFilter"
Value: "CreationTimestampFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampFileUploadInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampMessageInterceptorSearchFilter

$_type
string
Default: "CreationTimestampMessageInterceptorSearchFilter"
Value: "CreationTimestampMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampMessageInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampNamedAreaSearchFilter

$_type
string
Default: "CreationTimestampNamedAreaSearchFilter"
Value: "CreationTimestampNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampSmsExternalMessengerChannelSearchFilter"
Value: "CreationTimestampSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampSuggestionSourceSearchFilter

$_type
string
Default: "CreationTimestampSuggestionSourceSearchFilter"
Value: "CreationTimestampSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampSuggestionSourceSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampTeamSearchFilter

$_type
string
Default: "CreationTimestampTeamSearchFilter"
Value: "CreationTimestampTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampUserSearchFilter

$_type
string
Default: "CreationTimestampUserSearchFilter"
Value: "CreationTimestampUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

CreationTimestampWebhookRegistrationSearchFilter

$_type
string
Default: "CreationTimestampWebhookRegistrationSearchFilter"
Value: "CreationTimestampWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreatorPersonIdConversationInvitationSearchFilter

$_type
string
Default: "CreatorPersonIdConversationInvitationSearchFilter"
Value: "CreatorPersonIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "CreatorPersonIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

CreatorTypeConversationInvitationSearchFilter

$_type
string
Default: "CreatorTypeConversationInvitationSearchFilter"
Value: "CreatorTypeConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationCreatorTypeOperator)
{
  • "$_type": "CreatorTypeConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

CustomActionData

$_type
string
Default: "CustomConversationActionData"
Value: "CustomConversationActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionBarPosition
string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

apiEventTriggerFilter
string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

Example
{
  • "$_type": "CustomConversationActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "actionBarPosition": "ALWAYS_VISIBLE",
  • "apiEventTriggerFilter": "SELF"
}

CustomActionInvocationErrorResponse

$_type
string
Default: "CustomActionInvocationErrorResponse"
Value: "CustomActionInvocationErrorResponse"
type
string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
errorText
string

The error text why the request failed

{
  • "$_type": "CustomActionInvocationErrorResponse",
  • "type": "EXECUTED",
  • "errorText": "string"
}

CustomActionInvocationExecutedResponse

$_type
string
Default: "CustomActionInvocationExecutedResponse"
Value: "CustomActionInvocationExecutedResponse"
type
string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
{
  • "$_type": "CustomActionInvocationExecutedResponse",
  • "type": "EXECUTED"
}

CustomActionInvocationExecutionStartedResponse

$_type
string
Default: "CustomActionInvocationExecutionStartedResponse"
Value: "CustomActionInvocationExecutionStartedResponse"
type
string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
{
  • "$_type": "CustomActionInvocationExecutionStartedResponse",
  • "type": "EXECUTED"
}

CustomActionInvocationResponse

$_type
string
Default: "CustomActionInvocationErrorResponse"
Value: "CustomActionInvocationErrorResponse"
type
string (ECustomActionInvocationResponseType)
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
errorText
string

The error text why the request failed

Example
{
  • "$_type": "CustomActionInvocationErrorResponse",
  • "type": "ERROR",
  • "errorText": "string"
}

CustomActionOrderBy

$_type
string
Default: "CustomActionOrderBy"
Value: "CustomActionOrderBy"
field
string (ECustomActionOrderByField)
Enum: "ID" "KEY"
enum-descriptions: ["ID: Sort by the 'ID' attribute","KEY: Sort by the 'key' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CustomActionOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CustomActionQuery

$_type
string
Default: "CustomActionQuery"
Value: "CustomActionQuery"
Array of any (CustomActionSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CustomActionOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CustomActionQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CustomActionResult

$_type
string
Default: "CustomActionResult"
Value: "CustomActionResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of any (CustomActionData) [ items ]

The returned list of entities

{
  • "$_type": "CustomActionResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CustomActionSearchFilter

$_type
string
Default: "KeyCustomActionSearchFilter"
Value: "KeyCustomActionSearchFilter"
field
string (ECustomActionSearchFilterField)
enum-descriptions: ["KEY: Filter by the 'key' attribute"]
any (StringOperator)
{
  • "$_type": "KeyCustomActionSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

CustomActionTranslation

$_type
string
Default: "CustomActionTranslation"
Value: "CustomActionTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "CustomActionTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

CustomActionWebhookRegistration

$_type
string
Default: "CustomActionWebhookRegistration"
Value: "CustomActionWebhookRegistration"
endpoint
string

The endpoint URL of the webhook registration. Requests for the webhook events triggered by the related custom action invocation are made to this URL. Maximum length of 4000 characters. Cannot be omitted.

apiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

secret
string

A secret which is sent with each webhook event. Maximum length of 4000 characters. Can be omitted.

outboundTimeout
integer <int64>

Timeout time for the outbound requests.

{
  • "$_type": "CustomActionWebhookRegistration",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "outboundTimeout": 0
}

CustomChannelContactIdentifierTranslation

$_type
string
Default: "CustomChannelContactIdentifierTranslation"
Value: "CustomChannelContactIdentifierTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

{
  • "$_type": "CustomChannelContactIdentifierTranslation",
  • "id": "string",
  • "name": "string"
}

CustomConversationActionData

$_type
string
Default: "CustomConversationActionData"
Value: "CustomConversationActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionBarPosition
string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

apiEventTriggerFilter
string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

{
  • "$_type": "CustomConversationActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "actionBarPosition": "ALWAYS_VISIBLE",
  • "apiEventTriggerFilter": "SELF"
}

CustomConversationActionInvocationEvent

$_type
string
Default: "CustomConversationActionInvocationEvent"
Value: "CustomConversationActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "CustomConversationActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    }
}

CustomConversationActionInvocationRequest

$_type
string
Default: "CustomConversationActionInvocationRequest"
Value: "CustomConversationActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "CustomConversationActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    }
}

CustomExternalMessengerChannel

$_type
string
Default: "CustomExternalMessengerChannel"
Value: "CustomExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can not be omitted.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the external messenger are dispatched.

outboundSupported
boolean

Defines if outbound requests to create external messenger contacts or conversations are supported

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

contactIdentifierFieldName
string

The name of the field that contacts can be identified by in the external messenger. This can be an email address, a phone number, a number, or some other identifier.

contactIdentifierFieldType
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

object

The translations for the contact identifier field

supportsMultipleConversationsPerContact
boolean

The channel supports multiple conversations for a contact. If false, there can be only one active conversation for that contact.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "channelIcon": "string",
  • "sourceId": "string",
  • "type": "CUSTOM",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": true,
  • "outboundSupported": true,
  • "outboundTimeoutMillis": 0,
  • "contactIdentifierFieldName": "string",
  • "contactIdentifierFieldType": "EMAIL",
  • "contactIdentifierTranslations": {
    },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": {
    }
}

CustomExternalMessengerChannelOrderBy

$_type
string
Default: "CustomExternalMessengerChannelOrderBy"
Value: "CustomExternalMessengerChannelOrderBy"
field
string (ECustomExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CustomExternalMessengerChannelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CustomExternalMessengerChannelQuery

$_type
string
Default: "CustomExternalMessengerChannelQuery"
Value: "CustomExternalMessengerChannelQuery"
Array of any (CustomExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CustomExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CustomExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CustomExternalMessengerChannelResult

$_type
string
Default: "CustomExternalMessengerChannelResult"
Value: "CustomExternalMessengerChannelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (CustomExternalMessengerChannel) [ items ]

The returned list of entities

{
  • "$_type": "CustomExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
Value: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (StringOperator)
Example
{
  • "$_type": "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter",
  • "field": "CONTACT_IDENTIFIER_FIELD_NAME",
  • "operator": {
    }
}

CustomMessageActionData

$_type
string
Default: "CustomMessageActionData"
Value: "CustomMessageActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

messageTypes
Array of strings (EMessageType)
Items Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"

The message types the action will be available for

fileMessageMimeTypeRegex
string

A regular expression that matches all MIME types of file messages the action can be carried out on. The regular expression must conform to both Java and JavaScript syntax as it is validated on both the server and the client.

invocableForMessagesSentBy
Array of strings (EMessageSenderType)
Items Enum: "SELF" "OTHER_VISITOR" "OTHER_AGENT" "BOT"

A list of types of sender of the messages the action will be available for

apiEventTriggerFilter
string (ECustomMessageActionEventTriggerFilter)
Enum: "SENDER" "SELF" "OTHERS" "ALL"
enum-descriptions: ["SENDER: Trigger the custom action API event only for the sender of the target message","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom message action API event should be triggered for

{
  • "$_type": "CustomMessageActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "messageTypes": [
    ],
  • "fileMessageMimeTypeRegex": "string",
  • "invocableForMessagesSentBy": [
    ],
  • "apiEventTriggerFilter": "SENDER"
}

CustomMessageActionInvocationEvent

$_type
string
Default: "CustomMessageActionInvocationEvent"
Value: "CustomMessageActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "CustomMessageActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "message": {
    }
}

CustomMessageActionInvocationRequest

$_type
string
Default: "CustomMessageActionInvocationRequest"
Value: "CustomMessageActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "CustomMessageActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "message": {
    }
}

CustomPersonActionData

$_type
string
Default: "CustomPersonActionData"
Value: "CustomPersonActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

availableForTargetPersonTypes
Array of strings (ECustomPersonActionTargetPersonType)
Items Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"

The person types the action can be invoked on

availableForTargetFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends of the person the action can be invoked on. If omitted, the action can be invoked on any of the target person's frontends, even if they aren't present in the conversation at that time.

apiEventTriggerFilter
string (ECustomPersonActionEventTriggerFilter)
Enum: "TARGET_PERSON" "SELF" "OTHERS" "ALL"
enum-descriptions: ["TARGET_PERSON: Trigger the custom action API event only for the target person","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom person action API event should be triggered for

{
  • "$_type": "CustomPersonActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "availableForTargetPersonTypes": [
    ],
  • "availableForTargetFrontends": [
    ],
  • "apiEventTriggerFilter": "TARGET_PERSON"
}

CustomPersonActionInvocationEvent

$_type
string
Default: "CustomPersonActionInvocationEvent"
Value: "CustomPersonActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "CustomPersonActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "person": {
    }
}

CustomPersonActionInvocationRequest

$_type
string
Default: "CustomPersonActionInvocationRequest"
Value: "CustomPersonActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "CustomPersonActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "person": {
    }
}

DefaultTemplateConversationTemplateSearchFilter

$_type
string
Default: "DefaultTemplateConversationTemplateSearchFilter"
Value: "DefaultTemplateConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (BooleanOperator)
{
  • "$_type": "DefaultTemplateConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DeputyDefinition

$_type
string
Default: "DeputyDefinition"
Value: "DeputyDefinition"
type
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
id
string

The id of the deputy. This is either a user ID, if it is an agent or a team ID if the deputy is a team.

{
  • "$_type": "DeputyDefinition",
  • "type": "AGENT",
  • "id": "string"
}

DeputyDelegationEscalationLevelOperator

$_type
string
Default: "EqualsDeputyDelegationEscalationLevelOperator"
Value: "EqualsDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

Example
{
  • "$_type": "EqualsDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "value": "LEVEL_1"
}

DeputyDelegationPushNotificationEvent

$_type
string
Default: "DeputyDelegationPushNotificationEvent"
Value: "DeputyDelegationPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation delegated to the deputy

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "DeputyDelegationPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string",
  • "primaryAgentPerson": {
    }
}

DeputyIdDeputyRelationshipSearchFilter

$_type
string
Default: "DeputyIdDeputyRelationshipSearchFilter"
Value: "DeputyIdDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "DeputyIdDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

DeputyRelationship

$_type
string
Default: "DeputyRelationship"
Value: "DeputyRelationship"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

agentUserId
string

The agent user id to which the defined deputy belongs to

deputyType
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
deputyId
string

The id of the user or team which is the deputy of the defined agent user

escalationLevel
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

{
  • "$_type": "DeputyRelationship",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "agentUserId": "string",
  • "deputyType": "AGENT",
  • "deputyId": "string",
  • "escalationLevel": "LEVEL_1"
}

DeputyRelationshipList

$_type
string
Default: "DeputyRelationshipList"
Value: "DeputyRelationshipList"
Array of objects (DeputyRelationship) [ items ]

The list of mapped entities

{
  • "$_type": "DeputyRelationshipList",
  • "items": [
    ]
}

DeputyRelationshipModificationEvent

$_type
string
Default: "DeputyRelationshipModificationEvent"
Value: "DeputyRelationshipModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (DeputyRelationship)

Model of a deputy relation ship.
It is a link between one agent and an deputy agent or team

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "DeputyRelationshipModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

DeputyRelationshipOrderBy

$_type
string
Default: "DeputyRelationshipOrderBy"
Value: "DeputyRelationshipOrderBy"
field
string (EDeputyRelationshipOrderByField)
Enum: "ID" "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","AGENT_USER_ID: Sort by the 'agentUserId' attribute","DEPUTY_TYPE: Sort by the 'deputyType' attribute","DEPUTY_ID: Sort by the 'deputyId' attribute","ESCALATION_LEVEL: Sort by the 'escalationLevel' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "DeputyRelationshipOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

DeputyRelationshipQuery

$_type
string
Default: "DeputyRelationshipQuery"
Value: "DeputyRelationshipQuery"
Array of any (DeputyRelationshipSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DeputyRelationshipOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "DeputyRelationshipQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

DeputyRelationshipResult

$_type
string
Default: "DeputyRelationshipResult"
Value: "DeputyRelationshipResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (DeputyRelationship) [ items ]

The returned list of entities

{
  • "$_type": "DeputyRelationshipResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

DeputyRelationshipSearchFilter

$_type
string
Default: "AgentUserIdDeputyRelationshipSearchFilter"
Value: "AgentUserIdDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "AgentUserIdDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

DeputyTypeDeputyRelationshipSearchFilter

$_type
string
Default: "DeputyTypeDeputyRelationshipSearchFilter"
Value: "DeputyTypeDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (DeputyTypeOperator)
{
  • "$_type": "DeputyTypeDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

DeputyTypeOperator

$_type
string
Default: "EqualsDeputyTypeOperator"
Value: "EqualsDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
Example
{
  • "$_type": "EqualsDeputyTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

DescriptionApiKeySearchFilter

$_type
string
Default: "DescriptionApiKeySearchFilter"
Value: "DescriptionApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionConversationTemplateSearchFilter

$_type
string
Default: "DescriptionConversationTemplateSearchFilter"
Value: "DescriptionConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionNamedAreaSearchFilter

$_type
string
Default: "DescriptionNamedAreaSearchFilter"
Value: "DescriptionNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionTeamSearchFilter

$_type
string
Default: "DescriptionTeamSearchFilter"
Value: "DescriptionTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionWebhookRegistrationSearchFilter

$_type
string
Default: "DescriptionWebhookRegistrationSearchFilter"
Value: "DescriptionWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DeviceInfo

$_type
string
Default: "DeviceInfo"
Value: "DeviceInfo"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

osName
string

Operation system name

osVersion
string

Operation system version

browserName
string

Browser name

browserVersion
string

Browser version

userAgent
string

Original user agent string from the browser

screenWidth
integer <int32>

Screen width of the device

screenHeight
integer <int32>

Screen height of the device

screenPixelRatio
number <float>

Screen pixel ratio of the device

type
string (EDeviceType)
Enum: "MOBILE" "DESKTOP"
enum-descriptions: ["MOBILE: Mobile phone / tablet / etc","DESKTOP: Desktop computer"]

The device type of the physical device

identifier
string

Device identifier (via fingerprinting in browser and MobileSDK)

identifierSource
string (EIdentifierSource)
Enum: "COOKIE" "DEVICE_ID"
enum-descriptions: ["COOKIE: Cookie from browser","DEVICE_ID: Device id of MobileSDK"]

The source of the identifier (for devices)

pushToken
string

Token for pushing mobile notifications.

pushKitToken
string

Token for pushing mobile ios voip notifications.

mobilePushNotificationVersion
integer <int32>

Push Notification version supported by the device.

ownerPersonId
string

The person id of the device info owner

{
  • "$_type": "DeviceInfo",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "osName": "string",
  • "osVersion": "string",
  • "browserName": "string",
  • "browserVersion": "string",
  • "userAgent": "string",
  • "screenWidth": 0,
  • "screenHeight": 0,
  • "screenPixelRatio": 0,
  • "type": "MOBILE",
  • "identifier": "string",
  • "identifierSource": "COOKIE",
  • "pushToken": "string",
  • "pushKitToken": "string",
  • "mobilePushNotificationVersion": 0,
  • "ownerPersonId": "string"
}

DialogBotData

$_type
string
Default: "DialogBotData"
Value: "DialogBotData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the dialog bot. Maximum length of 250 characters. Can not be omitted.

description
string

Description of the dialog bot. Maximum length of 500 characters. Can be omitted.

botPersonId
string

ID of the person representing the bot

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters.

Based on the configured filters/flags the following events will be sent to the endpoint:

  • TypedEvent.BOT_ONBOARDING_OFFER: When a person matching the onboarding filter joins a conversation.
  • TypedEvent.BOT_REBOARDING_OFFER: When a person writes a message to an unassigned conversation and the reboardingEnabled flag is set to true.
  • TypedEvent.BOT_OFFBOARDING_OFFER: When a person matching the offboarding filter leaves a conversation or the conversation ends.
  • TypedEvent.BOT_DIALOG_OPENED: When a preaviously accepted bot dialog starts
  • TypedEvent.BOT_DIALOG_MESSAGE: On each message of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_MESSAGE_STATE: On each message state update of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_COUNTERPART_CHANGED: When the counterpart person of dialog changes during a dialog.
  • TypedEvent.BOT_DIALOG_CLOSED: When a previously accepted bot dialog closes.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory for webhookApiVersion greater than 3.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret which is send with each webhook event.

Maximum length of 4000 characters.

onboardingOrder
integer <int32>

Defines the onboarding order of this bot.

If more than one bots want to participate in an onboarding, the one with the lowest order value will go first.

reboardingOrder
integer <int32>

Defines the reboarding order of this bot.

If more than one bots want to participate in an reboarding, the one with the lowest order value will go first.

offboardingOrder
integer <int32>

Defines the offboarding priority of this bot.

If more than one bots want to participate in an offboarding, the one with the lowest order value will go first.

onboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
reboardingEnabled
boolean

Defines if this bot can reboard.

A reboarding offer will be sent only if this flag is enabled, giving the bot the chance to be part of the reboarding.

offboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
needsCounterpartPresence
boolean

Defines if the counterpart has to be online for the onboarding to start. E.g. if questions have to be answered live.

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the bot are dispatched.

automaticTypingStateHandlingEnabled
boolean

Defines if the bot should automatically display a typing indicator after receiving a message from the counterpart person. The indication starts 1s after the message is received. The typing state can also be influenced through the web API, independently of this property.

onTimeoutBehavior
string (EBotDialogTimeoutBehavior)
Enum: "ABORT" "HAND_OFF"
enum-descriptions: ["ABORT: Abort on-boarding the conversation when it comes to timeout. Default for internal bots.","HAND_OFF: Proceed further in on-boarding the conversation when it comes to timeout. Default for external bots."]

Defines what should happen with the conversation when it comes to timeout during on-boarding.
When omitted the default for external bots is set to HAND_OFF.

{
  • "$_type": "DialogBotData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "botPersonId": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "outboundTimeoutMillis": 0,
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "onboardingOrder": 0,
  • "reboardingOrder": 0,
  • "offboardingOrder": 0,
  • "onboardingFilter": "VISITORS",
  • "reboardingEnabled": true,
  • "offboardingFilter": "VISITORS",
  • "needsCounterpartPresence": true,
  • "messageStateHandledExternally": true,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "ABORT"
}

DialogBotOrderBy

$_type
string
Default: "DialogBotOrderBy"
Value: "DialogBotOrderBy"
field
string (EDialogBotOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "DialogBotOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

DialogBotQuery

$_type
string
Default: "DialogBotQuery"
Value: "DialogBotQuery"
Array of any (DialogBotSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DialogBotOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "DialogBotQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

DialogBotResult

$_type
string
Default: "DialogBotResult"
Value: "DialogBotResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (DialogBotData) [ items ]

The returned list of entities

{
  • "$_type": "DialogBotResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

DialogBotSearchFilter

$_type
string
Default: "BotPersonIdDialogBotSearchFilter"
Value: "BotPersonIdDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "BotPersonIdDialogBotSearchFilter",
  • "field": "BOT_PERSON_ID",
  • "operator": {
    }
}

Domain

$_type
string
Default: "Domain"
Value: "Domain"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

domainName
string

The name/address of the domain. It should normally contain a protocol (e.g. http:// or https://) and the url of the domain (e.g. www.unblu.com). Maximum of 250 characters. Can not be omitted. 250 characters.

{
  • "$_type": "Domain",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "domainName": "string"
}

DomainList

$_type
string
Default: "DomainList"
Value: "DomainList"
Array of objects (Domain) [ items ]

The list of mapped entities

{
  • "$_type": "DomainList",
  • "items": [
    ]
}

DomainModificationEvent

$_type
string
Default: "DomainModificationEvent"
Value: "DomainModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Domain)

Model of a domain

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "DomainModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

DomainNameDomainSearchFilter

$_type
string
Default: "DomainNameDomainSearchFilter"
Value: "DomainNameDomainSearchFilter"
field
string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DomainNameDomainSearchFilter",
  • "field": "DOMAIN_NAME",
  • "operator": {
    }
}

DomainOrderBy

$_type
string
Default: "DomainOrderBy"
Value: "DomainOrderBy"
field
string (EDomainOrderByField)
Enum: "ID" "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","DOMAIN_NAME: Sort by the 'domainName' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "DomainOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

DomainQuery

$_type
string
Default: "DomainQuery"
Value: "DomainQuery"
Array of any (DomainSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DomainOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "DomainQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

DomainResult

$_type
string
Default: "DomainResult"
Value: "DomainResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Domain) [ items ]

The returned list of entities

{
  • "$_type": "DomainResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

DomainSearchFilter

$_type
string
Default: "CreationTimestampDomainSearchFilter"
Value: "CreationTimestampDomainSearchFilter"
field
string (EDomainSearchFilterField)
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampDomainSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EAccountOrderByField

string (EAccountOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EAccountSearchFilterField

string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EActionBarItemPosition

string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

"ALWAYS_VISIBLE"

EAgentRemovalType

string (EAgentRemovalType)
Enum: "KEEP_AGENTS" "REMOVE_ASSIGNED_AGENT" "REMOVE_ALL_AGENTS"
enum-descriptions: ["KEEP_AGENTS","REMOVE_ASSIGNED_AGENT","REMOVE_ALL_AGENTS"]
"KEEP_AGENTS"

EAgentStateOrderByField

string (EAgentStateOrderByField)
Enum: "PERSON_ID" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute","STATUS_MESSAGE: Sort by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Sort by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Sort by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Sort by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Sort by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
"PERSON_ID"

EAgentStateSearchFilterField

string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
"PERSON_ID"

EAnswerStatus

string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

"PENDING"

EApiKeyOrderByField

string (EApiKeyOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","API_KEY: Sort by the 'apiKey' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EApiKeySearchFilterField

string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EAuditChangeInteractionTypeOperatorType

string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EAuditChangeOrderByField

string (EAuditChangeOrderByField)
Enum: "ID" "CREATION_TIMESTAMP" "ENTITY_TYPE" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["ID","CREATION_TIMESTAMP","ENTITY_TYPE","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
"ID"

EAuditChangeSearchFilterField

string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
"CREATION_TIMESTAMP"

EAuditChangeTypeOperatorType

string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EAuthorizationRole

string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

"SUPER_ADMIN"

EAuthorizationRoleOperatorType

string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EAvailabilityState

string (EAvailabilityState)
Enum: "AVAILABLE" "BUSY" "UNAVAILABLE"
enum-descriptions: ["AVAILABLE: There is at least one agent available for the specified named area and locale.","BUSY: There is at least one agent watching the inbound queue for the specified named area and locale but the max capacity of parallel conversations is reached. It is very likely, that an agent will be available in a short time.","UNAVAILABLE: There is currently no agent handling any inbound queue items. It is very unlikely, that an agent will be available in a short time."]

Possible state for agents availability

"AVAILABLE"

EAwaitedPersonType

string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

"NONE"

EAwaitedPersonTypeOperatorType

string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EBooleanOperatorType

string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
"EQUALS"

EBotDialogFilter

string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
"VISITORS"

EBotDialogFinishReason

string (EBotDialogFinishReason)
Enum: "HAND_OFF" "SOLVED" "ABORTED"
enum-descriptions: ["HAND_OFF: The bot is done with his part and the next bot can to the on-, re- or offboarding.","SOLVED: The problem of the dialog was solved and therefore no further bots are invoked.","ABORTED: The dialog was not successful and the on-, re- or offboarding has to be aborted."]

Reason why a bot finished a dialog.

"HAND_OFF"

EBotDialogTimeoutBehavior

string (EBotDialogTimeoutBehavior)
Enum: "ABORT" "HAND_OFF"
enum-descriptions: ["ABORT: Abort on-boarding the conversation when it comes to timeout. Default for internal bots.","HAND_OFF: Proceed further in on-boarding the conversation when it comes to timeout. Default for external bots."]

Defines what should happen with the conversation when it comes to timeout during on-boarding.
When omitted the default for external bots is set to HAND_OFF.

"ABORT"

EBotDialogType

string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

"ONBOARDING"

ECallEndReason

string (ECallEndReason)
Enum: "NOT_ANSWERED" "ABORTED_BY_INITIATOR" "DECLINED" "DECLINED_BECAUSE_UNAVAILABLE" "LAST_MANDATORY_PARTICIPANT_LEFT" "CONVERSATION_ENDED" "RECORDING_DENIED" "SYSTEM_SHUTDOWN" "UNKNOWN"
enum-descriptions: ["NOT_ANSWERED: The call was not answered","ABORTED_BY_INITIATOR: The initiator aborted the call while it was still ringing","DECLINED: The call was declined","DECLINED_BECAUSE_UNAVAILABLE: The call was declined because all conversation participants called were unavailable","LAST_MANDATORY_PARTICIPANT_LEFT: The call ended because the last mandatory participant left","CONVERSATION_ENDED: The call ended because the conversation ended","RECORDING_DENIED: The call ended because conversation recording was denied","SYSTEM_SHUTDOWN: The call ended because the collaboration server pod was shut down","UNKNOWN: The call ended for another reason"]

The reason a call has ended

"NOT_ANSWERED"

ECallOrderByField

string (ECallOrderByField)
Enum: "ID" "CONVERSATION_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","INITIATION_TIMESTAMP: Sort by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Sort by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Sort by the 'establishedTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute"]
"ID"

ECallParticipationEndReason

string (ECallParticipationEndReason)
Enum: "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "MISSED_BECAUSE_UNAVAILABLE" "TERMINATED_BY_PARTICIPANT" "TERMINATED_BY_SYSTEM_ABORT"
enum-descriptions: ["MISSED_BECAUSE_TIMEOUT: The participation was ended because of a timeout on the participant's side.","MISSED_BECAUSE_TERMINATED: The participation ended because the initiator terminated the call before the other participant answered it","MISSED_BECAUSE_UNAVAILABLE: The participation ended because nobody was available to answer the call","TERMINATED_BY_PARTICIPANT: The participation ended normally","TERMINATED_BY_SYSTEM_ABORT: The participation ended because the system aborted the call"]

Determines the reason why the participation on a call ended.

"MISSED_BECAUSE_TIMEOUT"

ECallParticipationLeftReason

string (ECallParticipationLeftReason)
Enum: "HANG_UP" "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "CALL_ENDED" "CALL_ABORTED" "DIAL_IN_ENDED" "REMOVED" "SYSTEM_ABORT" "UNKNOWN"
enum-descriptions: ["HANG_UP: The participant hung up","MISSED_BECAUSE_TIMEOUT: The participant missed the call because they didn't answer it","MISSED_BECAUSE_TERMINATED: The participant missed the call because the caller ended it before they could answer it","CALL_ENDED: The participation ended because the call ended","CALL_ABORTED: The participation ended because the call was aborted before they could answer it","DIAL_IN_ENDED: The participant hung up the dialed-in phone","REMOVED: The participant was removed from the conversation","SYSTEM_ABORT: The participation ended because the system aborted the call","UNKNOWN: The participant left for unknown reason"]

The reason a participant left a call they had joined earlier

"HANG_UP"

ECallPublicationType

string (ECallPublicationType)
Enum: "DIAL_IN" "MEDIA"
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

"DIAL_IN"

ECallSearchFilterField

string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
"CONVERSATION_ID"

ECallServiceProvider

string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
"ACS"

ECallServiceProviderOperatorType

string (ECallServiceProviderOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

ECallState

string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

"IDLE"

ECallType

string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

"AUDIO"

ECannedResponseOrderByField

string (ECannedResponseOrderByField)
Enum: "ID" "KEY" "TITLE" "TEXT" "OWNER_TYPE" "OWNER_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","KEY: Sort by the 'key' attribute","TITLE: Sort by the 'title' attribute","TEXT: Sort by the 'text' attribute","OWNER_TYPE: Sort by the 'ownerType' attribute","OWNER_ID: Sort by the 'ownerId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ECannedResponseSearchFilterField

string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"KEY"

ECannedResponseUsageOrderByField

string (ECannedResponseUsageOrderByField)
Enum: "ID" "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_ID: Sort by the 'personId' attribute","CANNED_RESPONSE_ID: Sort by the 'cannedResponseId' attribute","MESSAGE_ID: Sort by the 'messageId' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
"ID"

ECannedResponseUsageSearchFilterField

string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"PERSON_ID"

EChatSuggestionResponseType

string (EChatSuggestionResponseType)
Enum: "EMPTY" "TEXT"
enum-descriptions: ["EMPTY","TEXT"]
"EMPTY"

ECompoundOperatorType

string (ECompoundOperatorType)
Enum: "AND" "OR"
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
"AND"

EContactIdentifierFieldType

string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

"EMAIL"

EContactIdentifierFieldTypeOperatorType

string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationEndReason

string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

"ENDED_BY_PARTICIPANT"

EConversationEndReasonOperatorType

string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationFileStatus

string (EConversationFileStatus)
Enum: "UPLOADING" "COMPLETED" "CANCELED" "FAILED" "DELETED" "SCANNING" "REJECTED"
enum-descriptions: ["UPLOADING","COMPLETED","CANCELED","FAILED","DELETED","SCANNING","REJECTED"]

Status of a file which is/was uploaded to the collaboration server

"UPLOADING"

EConversationHistoryOrderByField

string (EConversationHistoryOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON" "AWAITED_PERSON_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE" "LAST_MESSAGE_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON: Sort by the 'awaitedPerson' attribute","AWAITED_PERSON_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute","LAST_MESSAGE_TIMESTAMP: Sort by the 'lastMessageTimestamp' attribute"]
"CREATION_TIMESTAMP"

EConversationHistorySearchFilterField

string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
"COMPOUND"

EConversationImpactingParticipationType

string (EConversationImpactingParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR","GHOST"]

This enum contains all human participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

"ASSIGNED_AGENT"

EConversationInvitationOrderByField

string (EConversationInvitationOrderByField)
Enum: "TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_ID" "REDEEMER_PERSON_ID" "SUBTYPE"
enum-descriptions: ["TYPE: Sort by the 'type' attribute","TARGET_TYPE: Sort by the 'targetType' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","TARGET_ID: Sort by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","CREATOR_TYPE: Sort by the 'creatorType' attribute","CREATOR_ID: Sort by the 'creatorId' attribute","REDEEMER_PERSON_ID: Sort by the 'redeemerPersonId' attribute","SUBTYPE: Sort by the 'subtype' attribute"]
"TYPE"

EConversationInvitationSearchFilterField

string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
"INVITATION_TYPE"

EConversationLeftReason

string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

"FORWARDED"

EConversationLinkType

string (EConversationLinkType)
Enum: "ACCEPT_IN_AGENT_DESK" "ACCEPT_IN_AGENT_SINGLE_VIEW" "ACCEPT_IN_VISITOR_DESK" "OPEN_IN_AGENT_DESK" "OPEN_IN_AGENT_SINGLE_VIEW" "OPEN_IN_VISITOR_DESK" "OPEN_PUBLIC_LINK"
enum-descriptions: ["ACCEPT_IN_AGENT_DESK: Link that accepts the invitation and loads the agent desk to display the conversation","ACCEPT_IN_AGENT_SINGLE_VIEW: Link that accepts the invitation and display the conversation in a single view <p> The single view only displays the conversation without any navigation and other agent desk features and can be used for integration into third party applications.","ACCEPT_IN_VISITOR_DESK: Link that accepts the invitation and display the conversation in a visitor desk","OPEN_IN_AGENT_DESK: Link to open an existing conversation in the agent desk to display the conversation","OPEN_IN_AGENT_SINGLE_VIEW: Link to open an existing conversation in a single view <p> The single view only displays the conversation without any navigation and other agent desk features and can be used for integration into third party applications.","OPEN_IN_VISITOR_DESK: Link to open an existing conversation in a visitor desk","OPEN_PUBLIC_LINK: Link to open an existing conversation. It will first go to the visitor desk, it it can be detected, that the user is an agent, it will redirect to the single view for the agent."]

Type of link used to accept an invitation.

"ACCEPT_IN_AGENT_DESK"

EConversationMessageActionType

string (EConversationMessageActionType)
Enum: "LINK_INTERNAL" "LINK_EXTERNAL" "LINK_COBROWSABLE" "REPLY_MESSAGE" "REPLY_MESSAGE_WITH_TECHNICAL_VALUE"
enum-descriptions: ["LINK_INTERNAL: An internal link that will open in the same tab as the unblu chat when clicked. <p> The action will be displayed as a link using the action's label as text.","LINK_EXTERNAL: An external link that will open in a new tab when clicked. <p> The action will be displayed as a link with an \"external\" icon using the action's label as text.","LINK_COBROWSABLE: A link that will start universal co-browsing session of provided address when clicked. <p> The action will be displayed as a link with a \"collaborate on website\" icon using the action's label as text.","REPLY_MESSAGE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type TextMessage will be sent in the name of the clicking person containing the action's value as the message text.","REPLY_MESSAGE_WITH_TECHNICAL_VALUE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type ReplyMessage will be sent in the name of the clicking person. It will reference the message this action is part of as questionMessage, contain the action's value as the reply's value and the label as text visible to the user. message text."]

Type of message action used in Card and List messages.

"LINK_INTERNAL"

EConversationMessageTextType

string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

"SIMPLE_TEXT"

EConversationOrderByField

string (EConversationOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Sort by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonTypeChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute"]
"CREATION_TIMESTAMP"

EConversationParticipationState

string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

"CREATED"

EConversationRealParticipationType

string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

"ASSIGNED_AGENT"

EConversationRealVisitorParticipationType

string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

"CONTEXT_PERSON"

EConversationRecipientType

string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

"AGENT"

EConversationRecipientTypeOperatorType

string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationRecordingState

string (EConversationRecordingState)
Enum: "IDLE" "INITIALIZING" "WAITING_READY" "READY" "STARTED" "STOPPED" "FAILED"
enum-descriptions: ["IDLE: Conversation recording is ready to be initialized","INITIALIZING: Conversation recording is initializing","WAITING_READY: Conversation recording is waiting for the recording entry point to become available","READY: Conversation recording is ready to start recording","STARTED: Conversation recording has started to record","STOPPED: Conversation recording has stopped recording","FAILED: Conversation recording has failed"]
"IDLE"

EConversationSearchFilterField

string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
"CREATION_TIMESTAMP"

EConversationState

string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

"CREATED"

EConversationStateOperatorType

string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationTemplateOrderByField

string (EConversationTemplateOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","DEFAULT_TEMPLATE: Sort by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EConversationTemplateSearchFilterField

string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EConversationVisibility

string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

"PRIVATE"

EConversationVisibilityOperatorType

string (EConversationVisibilityOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

ECustomActionInvocationResponseType

string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
"EXECUTED"

ECustomActionOrderByField

string (ECustomActionOrderByField)
Enum: "ID" "KEY"
enum-descriptions: ["ID: Sort by the 'ID' attribute","KEY: Sort by the 'key' attribute"]
"ID"

ECustomActionSearchFilterField

string (ECustomActionSearchFilterField)
Value: "KEY"
enum-descriptions: ["KEY: Filter by the 'key' attribute"]
"KEY"

ECustomActionState

string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

"ACTIVE"

ECustomActionType

string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

"CONVERSATION"

ECustomConversationActionEventTriggerFilter

string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

"SELF"

ECustomExternalMessengerChannelOrderByField

string (ECustomExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ECustomExternalMessengerChannelSearchFilterField

string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
"NAME"

ECustomMessageActionEventTriggerFilter

string (ECustomMessageActionEventTriggerFilter)
Enum: "SENDER" "SELF" "OTHERS" "ALL"
enum-descriptions: ["SENDER: Trigger the custom action API event only for the sender of the target message","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom message action API event should be triggered for

"SENDER"

ECustomPersonActionEventTriggerFilter

string (ECustomPersonActionEventTriggerFilter)
Enum: "TARGET_PERSON" "SELF" "OTHERS" "ALL"
enum-descriptions: ["TARGET_PERSON: Trigger the custom action API event only for the target person","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom person action API event should be triggered for

"TARGET_PERSON"

ECustomPersonActionTargetPersonType

string (ECustomPersonActionTargetPersonType)
Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"
enum-descriptions: ["AGENT: Agent participant","ANONYMOUS_VISITOR: Anonymous visitor participant","AUTHENTICATED_VISITOR: Authenticated visitor participant","BOT: Bot participant"]

The type of the target person of a custom person action

"AGENT"

EDeputyDelegationEscalationLevel

string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

"LEVEL_1"

EDeputyDelegationEscalationLevelOperatorType

string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EDeputyRelationshipOrderByField

string (EDeputyRelationshipOrderByField)
Enum: "ID" "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","AGENT_USER_ID: Sort by the 'agentUserId' attribute","DEPUTY_TYPE: Sort by the 'deputyType' attribute","DEPUTY_ID: Sort by the 'deputyId' attribute","ESCALATION_LEVEL: Sort by the 'escalationLevel' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EDeputyRelationshipSearchFilterField

string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"AGENT_USER_ID"

EDeputyType

string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
"AGENT"

EDeputyTypeOperatorType

string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EDeviceType

string (EDeviceType)
Enum: "MOBILE" "DESKTOP"
enum-descriptions: ["MOBILE: Mobile phone / tablet / etc","DESKTOP: Desktop computer"]

The device type of the physical device

"MOBILE"

EDialInServiceProvider

string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
"VONAGE"

EDialogBotOrderByField

string (EDialogBotOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EDialogBotSearchFilterField

string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EDomainOrderByField

string (EDomainOrderByField)
Enum: "ID" "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","DOMAIN_NAME: Sort by the 'domainName' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EDomainSearchFilterField

string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"DOMAIN_NAME"

EDownloadLinkType

string (EDownloadLinkType)
Enum: "WEB_API" "AGENT_DESK"
enum-descriptions: ["WEB_API: Download URL via the web API","AGENT_DESK: Download URL from the Agent Desk"]

Type of link used to download files.

"WEB_API"

EEmptyChatSuggestionReason

string (EEmptyChatSuggestionReason)
Enum: "NO_SUGGESTION" "NOT_AVAILABLE" "OTHER"
enum-descriptions: ["NO_SUGGESTION","NOT_AVAILABLE","OTHER"]
"NO_SUGGESTION"

EExternalMessengerChannelOrderByField

string (EExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute","TYPE: Sort by the 'type' attribute"]
"ID"

EExternalMessengerChannelSearchFilterField

string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
"NAME"

EExternalMessengerChannelType

string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

"CUSTOM"

EExternalMessengerChannelTypeOperatorType

string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EExternalMessengerContactCreationResponseType

string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

"USE_EXISTING"

EExternalMessengerContactOrderByField

string (EExternalMessengerContactOrderByField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'messengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","PERSON_ID: Sort by the 'personId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EExternalMessengerContactSearchFilterField

string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"ID"

EExternalMessengerConversationCreationResponseType

string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

"USE_EXISTING"

EFileUploadInterceptorOrderByField

string (EFileUploadInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EFileUploadInterceptorSearchFilterField

string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
"NAME"

EFileUploadInterceptorSource

string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

"BOT"

EFrontend

string (EFrontend)
Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"
enum-descriptions: ["VISITOR_SITE_INTEGRATION: Sites that integrate Unblu using the Floating Visitor UI","VISITOR_SITE_EMBEDDED: Sites that integrate Unblu using the Embedded Visitor UI","VISITOR_DESK: Sites for visitors to join a session, but the page isn't integrated into any other page","VISITOR_MOBILE: Sites for mobile visitor frontend and pop-out that display the Individual UI of the visitor site integration","VISITOR_POPOUT: Sites for site integration pop-outs","AGENT_DESK: The Agent Desk","TEAMS_AGENT_DESK: The MS Teams Agent Desk","AGENT_SINGLE_CONVERSATION_DESK: Single conversation page for the agent","AGENT_MOBILE: Sites for the mobile agent frontend that display the agent inbox and the conversation UI"]

All the different Unblu conversation frontends users can interact with

"VISITOR_SITE_INTEGRATION"

EIdListOperatorType

string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

"ALL_OF"

EIdOperatorType

string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

"EQUALS"

EIdentifierSource

string (EIdentifierSource)
Enum: "COOKIE" "DEVICE_ID"
enum-descriptions: ["COOKIE: Cookie from browser","DEVICE_ID: Device id of MobileSDK"]

The source of the identifier (for devices)

"COOKIE"

EImpersonationType

string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

"NONE"

EImpersonationTypeOperatorType

string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EIngressMigrationStatus

string (EIngressMigrationStatus)
Enum: "MIGRATING" "DONE_INGRESS_ACTIVE" "DONE_INGRESS_INACTIVE" "ERROR"
enum-descriptions: ["MIGRATING: The system is migrating the user uniqueness scope to its desired state (according to the ingress_enabled flag). If ingress_enabled is true, the username_scope column of all existing users is updated to the accountId. If ingress_enabled is false, then the username_scope column of all existing users is updated to GLOBAL.","DONE_INGRESS_ACTIVE: All users are migrated and the account is active with ingress (if configuration is valid)","DONE_INGRESS_INACTIVE: All users are migrated and the account is active without ingress","ERROR: The migration has failed (for example because the account contains usernames that also exist in a different account that isn't using ingress). The migration can be retried using the 'try again' action. If doing so isn't too expensive, the UI shows a list of the users causing conflicts."]

Status of the ingress activation. This status represents the status of the users in the account regarding the scope of the username uniqueness. In order for an account ingress to be fully active, the following conditions must be met: ingress_enabled=true, ingress_activation_status=ACTIVE and ingress configuration is valid.

"MIGRATING"

EIngressStatus

string (EIngressStatus)
Enum: "ACCOUNT" "GLOBAL" "BLOCKED"
enum-descriptions: ["ACCOUNT: Account-specific ingress enabled (using custom origin)","GLOBAL: Account is accessible via global ingress","BLOCKED: Account is blocked, i.e. because ingress is configured but not valid"]

How ingress is handled

"ACCOUNT"

EInitialEngagementType

string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

"CHAT_REQUEST"

EInitialEngagementTypeOperatorType

string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EInternalMessageInterceptorStatus

string (EInternalMessageInterceptorStatus)
Enum: "ACTIVE" "INACTIVE"
enum-descriptions: ["ACTIVE: The interceptor is active and participates in all conversations where it is configured","INACTIVE: The interceptor isn't active and doesn't participate in any conversation"]

The status of an internal message interceptor.

"ACTIVE"

EInvitationCreatorType

string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

"WEB_API"

EInvitationCreatorTypeOperatorType

string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EInvitationResponseState

string (EInvitationResponseState)
Enum: "PENDING" "DECLINED" "IGNORED" "CANCELED" "ACCEPTED"
enum-descriptions: ["PENDING: The response is pending. The user did not answer it yet.","DECLINED: The user declined the response and therefore will not accept the invitation.","IGNORED: The user ignored this invitation and the escalation should proceed","CANCELED: The invitation was canceled for that user.","ACCEPTED: The user accepted the invitation."]

The state of the response for an invitation itself or one of its secondary targets

"PENDING"

EInvitationState

string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

"OPEN"

EInvitationStateOperatorType

string (EInvitationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EInvitationTargetType

string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
"ANONYMOUS"

EInvitationTargetTypeOperatorType

string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EInvitationType

string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
"ASSIGNMENT_REQUEST"

EInvitationTypeOperatorType

string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

ELicenseState

string (ELicenseState)
Enum: "NO_LICENSE" "ACTIVE" "INVALID" "INCOMPATIBLE" "EXPIRED"
enum-descriptions: ["NO_LICENSE: No license installed. All licensed features can not be used.","ACTIVE: Valid license installed, this default state to use Unblu.","INVALID: Invalid license installed. All licensed features can not be used.","INCOMPATIBLE: The license type of the installed license is not compatible with this server. All licensed features can not be used.","EXPIRED: Valid license installed, but with an expiration date in the past. All licensed features can not be used."]

State of the global server license

"NO_LICENSE"

EMediaPublicationType

string (EMediaPublicationType)
Enum: "AUDIO" "VIDEO" "AUDIO_VIDEO" "NONE"
enum-descriptions: ["AUDIO: Only audio is being shared (typically through a microphone)","VIDEO: Only video is being shared (typically through a camera)","AUDIO_VIDEO: Both audio and video are being shared (typically microphone & camera)","NONE: No media is being published, the participant is only watching / listening to the call"]

The media being published during the participation of a call

"AUDIO"

EMessageExportFilterField

string (EMessageExportFilterField)
Value: "SEND_TIMESTAMP"
enum-descriptions: ["SEND_TIMESTAMP: Filter by the 'sendTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"SEND_TIMESTAMP"

EMessageExportOrderByField

string (EMessageExportOrderByField)
Enum: "ID" "CONVERSATION_ID" "SEND_TIMESTAMP" "SERVER_TIMESTAMP" "SENDER_PERSON_ID" "TYPE" "TEXT"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","SEND_TIMESTAMP: Sort by the 'sendTimestamp' attribute","SERVER_TIMESTAMP: Sort by the 'serverTimestamp' attribute","SENDER_PERSON_ID: Sort by the 'senderPersonId' attribute","TYPE: Sort by the 'type' attribute","TEXT: Sort by the 'text' attribute"]
"ID"

EMessageInterceptionPoint

string (EMessageInterceptionPoint)
Enum: "BEFORE_PERSISTING" "AFTER_PERSISTING"
enum-descriptions: ["BEFORE_PERSISTING: Messages are intercepted before the message is persisted. The first interception takes place on the client side before the message is sent to the server. A second validation occurs before the message is persisted and added to the conversation in case the client-side validation was skipped for some reason. <p> If this point of interception is selected, Unblu doesn't store any information about rejected chat messages. It isn't possible to see rejected chat messages, or to be notified of rejected chat messages through logs or webhooks.","AFTER_PERSISTING: Messages are intercepted after they've been persisted and added to the conversation. Until the interception phase is over, the messages are only visible to the sender. If the message is rejected, only participation types with the appropriate rights can see the message. <p> If this interception point is chosen, every message is stored in Unblu and can be accessed later. It is possible to receive a webhook and logs when a message is rejected."]

Identifies the point where an interceptor intercepts messages

"BEFORE_PERSISTING"

EMessageInterceptorMessageFilter

string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
"AGENT"

EMessageInterceptorOrderByField

string (EMessageInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EMessageInterceptorOutboundResponseType

string (EMessageInterceptorOutboundResponseType)
Enum: "APPROVE" "REJECT"
enum-descriptions: ["APPROVE","REJECT"]
"APPROVE"

EMessageInterceptorSearchFilterField

string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EMessageInterceptorTimeoutBehavior

string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

"REJECT"

EMessageInterceptorType

string (EMessageInterceptorType)
Enum: "EXTERNAL" "INTERNAL"
enum-descriptions: ["EXTERNAL","INTERNAL"]
"EXTERNAL"

EMessageSenderType

string (EMessageSenderType)
Enum: "SELF" "OTHER_VISITOR" "OTHER_AGENT" "BOT"
enum-descriptions: ["SELF: The person sent the message themselves","OTHER_VISITOR: Another visitor sent the message","OTHER_AGENT: Another agent sent the message","BOT: Bot sent the message"]

The type of participant who sent a message

"SELF"

EMessageState

string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

"DELIVERED"

EMessageType

string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

"TEXT"

ENamedAreaOrderByField

string (ENamedAreaOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","SITE_ID: Sort by the 'siteId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ENamedAreaSearchFilterField

string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

ENamedAreaType

string (ENamedAreaType)
Enum: "META_TAG" "DOMAIN"
enum-descriptions: ["META_TAG: A meta tag","DOMAIN: a (sub)domain"]

Type of a named area

"META_TAG"

EOffboardingReason

string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

"FORWARDED"

EOnlineState

string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

"ONLINE"

EOnlineStateOperatorType

string (EOnlineStateOperatorType)
Value: "EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator"]
"EQUALS"

EOutboundEndpointStatus

string (EOutboundEndpointStatus)
Enum: "ENABLED" "DISABLED"
enum-descriptions: ["ENABLED: The endpoint is enabled and calls are allowed.","DISABLED: The endpoint is disabled and calls should be avoided, since they won't work."]

The status of an Outbound Web-API endpoint.

"ENABLED"

EPauseNotificationsMode

string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

"ON"

EPauseNotificationsModeOperatorType

string (EPauseNotificationsModeOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EPauseNotificationsState

string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

"ON"

EPauseNotificationsStateOperatorType

string (EPauseNotificationsStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EPersonLabelManagementRole

string (EPersonLabelManagementRole)
Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"
enum-descriptions: ["SUPERVISOR: Supervisor","AGENT: Agent","AUTHENTICATED_VISITOR: Authenticated visitor","ANONYMOUS_VISITOR: Anonymous visitor"]

The person type a person label can be managed by

"SUPERVISOR"

EPersonLabelOrderByField

string (EPersonLabelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
"ID"

EPersonLabelSearchFilterField

string (EPersonLabelSearchFilterField)
Value: "NAME"
enum-descriptions: ["NAME: Filter by the 'name' attribute"]
"NAME"

EPersonLabelTargetType

string (EPersonLabelTargetType)
Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"
enum-descriptions: ["AGENT: Agent","ANONYMOUS_VISITOR: Anonymous visitor","AUTHENTICATED_VISITOR: Authenticated visitor","BOT: Bot"]

The person type a person label can be set on

"AGENT"

EPersonOrderByField

string (EPersonOrderByField)
Enum: "ID" "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_SOURCE: Sort by the 'personSource' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","SOURCE_DATA: Sort by the 'sourceData' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","PERSON_TYPE: Sort by the 'personType' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
"ID"

EPersonPresenceOrderByField

string (EPersonPresenceOrderByField)
Enum: "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"CREATION_TIMESTAMP"

EPersonPresenceSearchFilterField

string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
"JOINED_TIMESTAMP"

EPersonSearchFilterField

string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
"PERSON_SOURCE"

EPersonSource

string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

"USER_DB"

EPersonSourceOperatorType

string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EPersonStateType

string (EPersonStateType)
Enum: "AGENT" "VISITOR"
enum-descriptions: ["AGENT","VISITOR"]
"AGENT"

EPersonType

string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

"AGENT"

EPersonTypeOperatorType

string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EPersonTypedOrderByField

string (EPersonTypedOrderByField)
Enum: "ID" "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
"ID"

EPersonTypedSearchFilterField

string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
"SOURCE_ID"

EPersonVisibilityLabelSelection

string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
"ALL"

EPersonVisibilityRuleOrderByField

string (EPersonVisibilityRuleOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
"ID"

EPersonVisibilityRuleSearchFilterField

string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
"NAME"

EPlaceholderType

string (EPlaceholderType)
Enum: "TEXT" "MULTIPLE_CHOICE"
enum-descriptions: ["TEXT","MULTIPLE_CHOICE"]
"TEXT"

EPostMessageType

string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

"TEXT"

EPropertyOwnerType

string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

"GLOBAL"

EPropertyOwnerTypeOperatorType

string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
"EQUALS"

EQuestionMessageAbortReason

string (EQuestionMessageAbortReason)
Enum: "TIMEDOUT" "CANCELED"
enum-descriptions: ["TIMEDOUT: A person was to slow to answer a message","CANCELED: The question was canceled explicitly by the system, a bot or an external messenger channel"]

Reason why a question message was not answered

"TIMEDOUT"

ERecordingEndReason

string (ERecordingEndReason)
Enum: "NORMAL" "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["NORMAL: Recording ended normally","ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
"NORMAL"

ERecordingFailedReason

string (ERecordingFailedReason)
Enum: "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
"ABORT_SYSTEM"

ERecordingStatus

string (ERecordingStatus)
Enum: "INITIALIZING" "PENDING" "COMPLETE"
enum-descriptions: ["INITIALIZING: Recording initializing","PENDING: Recording pending","COMPLETE: Recording completed"]
"INITIALIZING"

ERecordingType

string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
"AUDIO"

ERegistrationStatus

string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

"ACTIVE"

ESecureTokenType

string (ESecureTokenType)
Enum: "JWT" "OIDC_ACCESS_TOKEN"
enum-descriptions: ["JWT","OIDC_ACCESS_TOKEN"]

Token type

"JWT"

ESendFailState

string (ESendFailState)
Enum: "RETRYABLE" "TERMINAL"
enum-descriptions: ["RETRYABLE: Message could not be sent, but it is not terminal and can be tried again","TERMINAL: Message could not be sent and it will not be possible to send it again"]

The failed state of a message which was sent to an external messenger

"RETRYABLE"

ESentRejectionSeverity

string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

"HIGH"

ESmsExternalMessengerChannelOrderByField

string (ESmsExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ESmsExternalMessengerChannelSearchFilterField

string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
"NAME"

EStringOperatorType

string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
"EQUALS"

ESuggestionSourceOrderByField

string (ESuggestionSourceOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ESuggestionSourceSearchFilterField

string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
"NAME"

ETeamOrderByField

string (ETeamOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","PARENT_ID: Sort by the 'parentId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ETeamSearchFilterField

string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

ETextQuestionType

string (ETextQuestionType)
Enum: "SHORT_TEXT" "LONG_TEXT" "URL" "EMAIL" "PHONE" "DATE" "TIME" "DATETIME" "NUMBER"
enum-descriptions: ["SHORT_TEXT: Reply should only be a short text.","LONG_TEXT: Reply can be be a long text. Visually displayed with a larger input field.","URL: Reply has to be a URL","EMAIL: Reply has to be a mail address","PHONE: Reply has to be a phone number","DATE: Reply has to be a date","TIME: Reply has to be a time","DATETIME: Reply has to be a date and a time","NUMBER: Reply has to be a number"]

Type of a question message. Defines the reply value of a text message.

"SHORT_TEXT"

ETimestampOperatorType

string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
"EQUALS"

EUserOrderByField

string (EUserOrderByField)
Enum: "ID" "FIRST_NAME" "LAST_NAME" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EUserSearchFilterField

string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
"FIRST_NAME"

EVisibilityRuleLabelSelectionOperatorType

string (EVisibilityRuleLabelSelectionOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EVisitorStateOrderByField

string (EVisitorStateOrderByField)
Value: "PERSON_ID"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute"]
"PERSON_ID"

EVisitorStateSearchFilterField

string (EVisitorStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
"PERSON_ID"

EWebApiVersion

string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

"V1"

EWebhookRegistrationOrderByField

string (EWebhookRegistrationOrderByField)
Enum: "ID" "NAME" "STATUS" "DESCRIPTION" "ENDPOINT" "API_VERSION" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","STATUS: Sort by the 'status' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","API_VERSION: Sort by the 'apiVersion' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EWebhookRegistrationSearchFilterField

string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EmailPersonSearchFilter

$_type
string
Default: "EmailPersonSearchFilter"
Value: "EmailPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "EmailPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

EmailPersonTypedSearchFilter

$_type
string
Default: "EmailPersonTypedSearchFilter"
Value: "EmailPersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "EmailPersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

EmailUserSearchFilter

$_type
string
Default: "EmailUserSearchFilter"
Value: "EmailUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "EmailUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

EmptyChatSuggestionResponse

$_type
string
Default: "EmptyChatSuggestionResponse"
Value: "EmptyChatSuggestionResponse"
type
string (EChatSuggestionResponseType)
Enum: "EMPTY" "TEXT"
enum-descriptions: ["EMPTY","TEXT"]
reason
string (EEmptyChatSuggestionReason)
Enum: "NO_SUGGESTION" "NOT_AVAILABLE" "OTHER"
enum-descriptions: ["NO_SUGGESTION","NOT_AVAILABLE","OTHER"]
hint
string
{
  • "$_type": "EmptyChatSuggestionResponse",
  • "type": "EMPTY",
  • "reason": "NO_SUGGESTION",
  • "hint": "string"
}

EndReasonConversationHistorySearchFilter

$_type
string
Default: "EndReasonConversationHistorySearchFilter"
Value: "EndReasonConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationEndReasonOperator)
{
  • "$_type": "EndReasonConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

EndReasonConversationSearchFilter

$_type
string
Default: "EndReasonConversationSearchFilter"
Value: "EndReasonConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationEndReasonOperator)
{
  • "$_type": "EndReasonConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EndTimestampCallSearchFilter

$_type
string
Default: "EndTimestampCallSearchFilter"
Value: "EndTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "EndTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

EndTimestampConversationHistorySearchFilter

$_type
string
Default: "EndTimestampConversationHistorySearchFilter"
Value: "EndTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "EndTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

EndTimestampConversationSearchFilter

$_type
string
Default: "EndTimestampConversationSearchFilter"
Value: "EndTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "EndTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EndpointWebhookRegistrationSearchFilter

$_type
string
Default: "EndpointWebhookRegistrationSearchFilter"
Value: "EndpointWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "EndpointWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

EntityIdAuditChangeSearchFilter

$_type
string
Default: "EntityIdAuditChangeSearchFilter"
Value: "EntityIdAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "EntityIdAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EntityModificationAction

string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

"CREATE"

EntityNameAuditChangeSearchFilter

$_type
string
Default: "EntityNameAuditChangeSearchFilter"
Value: "EntityNameAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "EntityNameAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EntityTypeAuditChangeSearchFilter

$_type
string
Default: "EntityTypeAuditChangeSearchFilter"
Value: "EntityTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "EntityTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EqualsAuditChangeInteractionTypeOperator

$_type
string
Default: "EqualsAuditChangeInteractionTypeOperator"
Value: "EqualsAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
{
  • "$_type": "EqualsAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "value": "API"
}

EqualsAuditChangeTypeOperator

$_type
string
Default: "EqualsAuditChangeTypeOperator"
Value: "EqualsAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
{
  • "$_type": "EqualsAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "value": "CREATE"
}

EqualsAuthorizationRoleOperator

$_type
string
Default: "EqualsAuthorizationRoleOperator"
Value: "EqualsAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

{
  • "$_type": "EqualsAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "value": "SUPER_ADMIN"
}

EqualsAwaitedPersonTypeOperator

$_type
string
Default: "EqualsAwaitedPersonTypeOperator"
Value: "EqualsAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

{
  • "$_type": "EqualsAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

EqualsBooleanOperator

$_type
string
Default: "EqualsBooleanOperator"
Value: "EqualsBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
value
boolean
{
  • "$_type": "EqualsBooleanOperator",
  • "type": "EQUALS",
  • "value": true
}

EqualsCallServiceProviderOperator

$_type
string
Default: "EqualsCallServiceProviderOperator"
Value: "EqualsCallServiceProviderOperator"
type
string (ECallServiceProviderOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
{
  • "$_type": "EqualsCallServiceProviderOperator",
  • "type": "EQUALS",
  • "value": "ACS"
}

EqualsContactIdentifierFieldTypeOperator

$_type
string
Default: "EqualsContactIdentifierFieldTypeOperator"
Value: "EqualsContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

{
  • "$_type": "EqualsContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "value": "EMAIL"
}

EqualsConversationEndReasonOperator

$_type
string
Default: "EqualsConversationEndReasonOperator"
Value: "EqualsConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

{
  • "$_type": "EqualsConversationEndReasonOperator",
  • "type": "EQUALS",
  • "value": "ENDED_BY_PARTICIPANT"
}

EqualsConversationRecipientTypeOperator

$_type
string
Default: "EqualsConversationRecipientTypeOperator"
Value: "EqualsConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

{
  • "$_type": "EqualsConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

EqualsConversationStateOperator

$_type
string
Default: "EqualsConversationStateOperator"
Value: "EqualsConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

{
  • "$_type": "EqualsConversationStateOperator",
  • "type": "EQUALS",
  • "value": "CREATED"
}

EqualsConversationVisibilityOperator

$_type
string
Default: "EqualsConversationVisibilityOperator"
Value: "EqualsConversationVisibilityOperator"
type
string (EConversationVisibilityOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

{
  • "$_type": "EqualsConversationVisibilityOperator",
  • "type": "EQUALS",
  • "value": "PRIVATE"
}

EqualsDeputyDelegationEscalationLevelOperator

$_type
string
Default: "EqualsDeputyDelegationEscalationLevelOperator"
Value: "EqualsDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

{
  • "$_type": "EqualsDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "value": "LEVEL_1"
}

EqualsDeputyTypeOperator

$_type
string
Default: "EqualsDeputyTypeOperator"
Value: "EqualsDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
{
  • "$_type": "EqualsDeputyTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

EqualsExternalMessengerChannelTypeOperator

$_type
string
Default: "EqualsExternalMessengerChannelTypeOperator"
Value: "EqualsExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

{
  • "$_type": "EqualsExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "value": "CUSTOM"
}

EqualsIdOperator

$_type
string
Default: "EqualsIdOperator"
Value: "EqualsIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
{
  • "$_type": "EqualsIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

EqualsImpersonationTypeOperator

$_type
string
Default: "EqualsImpersonationTypeOperator"
Value: "EqualsImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

{
  • "$_type": "EqualsImpersonationTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

EqualsInitialEngagementTypeOperator

$_type
string
Default: "EqualsInitialEngagementTypeOperator"
Value: "EqualsInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

{
  • "$_type": "EqualsInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "value": "CHAT_REQUEST"
}

EqualsInvitationCreatorTypeOperator

$_type
string
Default: "EqualsInvitationCreatorTypeOperator"
Value: "EqualsInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

{
  • "$_type": "EqualsInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "value": "WEB_API"
}

EqualsInvitationStateOperator

$_type
string
Default: "EqualsInvitationStateOperator"
Value: "EqualsInvitationStateOperator"
type
string (EInvitationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

{
  • "$_type": "EqualsInvitationStateOperator",
  • "type": "EQUALS",
  • "value": "OPEN"
}

EqualsInvitationTargetTypeOperator

$_type
string
Default: "EqualsInvitationTargetTypeOperator"
Value: "EqualsInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
{
  • "$_type": "EqualsInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "value": "ANONYMOUS"
}

EqualsInvitationTypeOperator

$_type
string
Default: "EqualsInvitationTypeOperator"
Value: "EqualsInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
{
  • "$_type": "EqualsInvitationTypeOperator",
  • "type": "EQUALS",
  • "value": "ASSIGNMENT_REQUEST"
}

EqualsOnlineStateOperator

$_type
string
Default: "EqualsOnlineStateOperator"
Value: "EqualsOnlineStateOperator"
type
string (EOnlineStateOperatorType)
Value: "EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator"]
value
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

{
  • "$_type": "EqualsOnlineStateOperator",
  • "type": "EQUALS",
  • "value": "ONLINE"
}

EqualsPauseNotificationsModeOperator

$_type
string
Default: "EqualsPauseNotificationsModeOperator"
Value: "EqualsPauseNotificationsModeOperator"
type
string (EPauseNotificationsModeOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

{
  • "$_type": "EqualsPauseNotificationsModeOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

EqualsPauseNotificationsStateOperator

$_type
string
Default: "EqualsPauseNotificationsStateOperator"
Value: "EqualsPauseNotificationsStateOperator"
type
string (EPauseNotificationsStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

{
  • "$_type": "EqualsPauseNotificationsStateOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

EqualsPersonSourceOperator

$_type
string
Default: "EqualsPersonSourceOperator"
Value: "EqualsPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

{
  • "$_type": "EqualsPersonSourceOperator",
  • "type": "EQUALS",
  • "value": "USER_DB"
}

EqualsPersonTypeOperator

$_type
string
Default: "EqualsPersonTypeOperator"
Value: "EqualsPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

{
  • "$_type": "EqualsPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

EqualsPropertyOwnerTypeOperator

$_type
string
Default: "EqualsPropertyOwnerTypeOperator"
Value: "EqualsPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
value
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

{
  • "$_type": "EqualsPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "value": "GLOBAL"
}

EqualsStringOperator

$_type
string
Default: "EqualsStringOperator"
Value: "EqualsStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string
{
  • "$_type": "EqualsStringOperator",
  • "type": "EQUALS",
  • "value": "string"
}

EqualsTimestampOperator

$_type
string
Default: "EqualsTimestampOperator"
Value: "EqualsTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "EqualsTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

EqualsVisibilityRuleLabelSelectionOperator

$_type
string
Default: "EqualsVisibilityRuleLabelSelectionOperator"
Value: "EqualsVisibilityRuleLabelSelectionOperator"
type
string (EVisibilityRuleLabelSelectionOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
{
  • "$_type": "EqualsVisibilityRuleLabelSelectionOperator",
  • "type": "EQUALS",
  • "value": "ALL"
}

Error

$_type
string
Default: "Error"
Value: "Error"
statusCode
integer <int32>

Http status code

statusDescription
string

Reason phrase corresponding to the http status

errorMessage
string

Description of the error

{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

EscalationLevelDeputyRelationshipSearchFilter

$_type
string
Default: "EscalationLevelDeputyRelationshipSearchFilter"
Value: "EscalationLevelDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (DeputyDelegationEscalationLevelOperator)
{
  • "$_type": "EscalationLevelDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

EstablishedTimestampCallSearchFilter

$_type
string
Default: "EstablishedTimestampCallSearchFilter"
Value: "EstablishedTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "EstablishedTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ExpandFields

string (ExpandFields)
Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
"actionIcon"

ExpirationTimestampConversationInvitationSearchFilter

$_type
string
Default: "ExpirationTimestampConversationInvitationSearchFilter"
Value: "ExpirationTimestampConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (TimestampOperator)
{
  • "$_type": "ExpirationTimestampConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

ExternalMessageInterceptorData

$_type
string
Default: "ExternalMessageInterceptorData"
Value: "ExternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
Enum: "EXTERNAL" "INTERNAL"
enum-descriptions: ["EXTERNAL","INTERNAL"]
webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.MESSAGE_INTERCEPTOR_NEW_MESSAGE: On each message in the conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event

Maximum length of 4000 characters.

{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

ExternalMessengerChannel

$_type
string
Default: "CustomExternalMessengerChannel"
Value: "CustomExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can not be omitted.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the external messenger are dispatched.

outboundSupported
boolean

Defines if outbound requests to create external messenger contacts or conversations are supported

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

contactIdentifierFieldName
string

The name of the field that contacts can be identified by in the external messenger. This can be an email address, a phone number, a number, or some other identifier.

contactIdentifierFieldType
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

object

The translations for the contact identifier field

supportsMultipleConversationsPerContact
boolean

The channel supports multiple conversations for a contact. If false, there can be only one active conversation for that contact.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Example
{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "channelIcon": "string",
  • "sourceId": "string",
  • "type": "CUSTOM",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": true,
  • "outboundSupported": true,
  • "outboundTimeoutMillis": 0,
  • "contactIdentifierFieldName": "string",
  • "contactIdentifierFieldType": "EMAIL",
  • "contactIdentifierTranslations": {
    },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": {
    }
}

ExternalMessengerChannelIdConversationSearchFilter

$_type
string
Default: "ExternalMessengerChannelIdConversationSearchFilter"
Value: "ExternalMessengerChannelIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ExternalMessengerChannelIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ExternalMessengerChannelIdExternalMessengerContactSearchFilter

$_type
string
Default: "ExternalMessengerChannelIdExternalMessengerContactSearchFilter"
Value: "ExternalMessengerChannelIdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ExternalMessengerChannelIdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

ExternalMessengerChannelOrderBy

$_type
string
Default: "ExternalMessengerChannelOrderBy"
Value: "ExternalMessengerChannelOrderBy"
field
string (EExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute","TYPE: Sort by the 'type' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ExternalMessengerChannelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ExternalMessengerChannelQuery

$_type
string
Default: "ExternalMessengerChannelQuery"
Value: "ExternalMessengerChannelQuery"
Array of any (ExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ExternalMessengerChannelResult

$_type
string
Default: "ExternalMessengerChannelResult"
Value: "ExternalMessengerChannelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of any (ExternalMessengerChannel) [ items ]

The returned list of entities

{
  • "$_type": "ExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerChannelSearchFilter"
Value: "CreationTimestampExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampExternalMessengerChannelSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ExternalMessengerChannelTypeOperator

$_type
string
Default: "EqualsExternalMessengerChannelTypeOperator"
Value: "EqualsExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

Example
{
  • "$_type": "EqualsExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "value": "CUSTOM"
}

ExternalMessengerContact

$_type
string
Default: "ExternalMessengerContact"
Value: "ExternalMessengerContact"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

The name of the contact

description
string

The description for the contact to give more information what the source ID is about. E.g. private or company phone number.

externalMessengerChannelId
string

The external messenger channel ID through which the contact is communicating

sourceId
string

An ID to identify the contact inside the external messenger system

personId
string

The person ID in Unblu that the contact is linked with

{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

ExternalMessengerContactList

$_type
string
Default: "ExternalMessengerContactList"
Value: "ExternalMessengerContactList"
Array of objects (ExternalMessengerContact) [ items ]

The list of mapped entities

{
  • "$_type": "ExternalMessengerContactList",
  • "items": [
    ]
}

ExternalMessengerContactOrderBy

$_type
string
Default: "ExternalMessengerContactOrderBy"
Value: "ExternalMessengerContactOrderBy"
field
string (EExternalMessengerContactOrderByField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'messengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","PERSON_ID: Sort by the 'personId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ExternalMessengerContactOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ExternalMessengerContactQuery

$_type
string
Default: "ExternalMessengerContactQuery"
Value: "ExternalMessengerContactQuery"
Array of any (ExternalMessengerContactSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ExternalMessengerContactOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ExternalMessengerContactQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ExternalMessengerContactResult

$_type
string
Default: "ExternalMessengerContactResult"
Value: "ExternalMessengerContactResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ExternalMessengerContact) [ items ]

The returned list of entities

{
  • "$_type": "ExternalMessengerContactResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ExternalMessengerContactSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerContactSearchFilter"
Value: "CreationTimestampExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampExternalMessengerContactSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ExternalMessengerContactsMigrateContactPersonWithAllConnectedConversationsBody

newPersonId
string

The new person ID to set on the external messenger contact

{
  • "newPersonId": "string"
}

ExternalMessengerCreateContactContactToPersonMismatchResponse

$_type
string
Default: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
Value: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the request failed

{
  • "$_type": "ExternalMessengerCreateContactContactToPersonMismatchResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateContactCreateResponse

$_type
string
Default: "ExternalMessengerCreateContactCreateResponse"
Value: "ExternalMessengerCreateContactCreateResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

name
string

The ID of the ExternalMessengerContact created when processing the ExternalMessengerCreateContactRequest request

sourceId
string

The source ID of the ExternalMessengerContact to identify the contact in the external messenger.

description
string

The description of the ExternalMessengerContact to give more information what the source ID is about. E.g. private or company phone number.

{
  • "$_type": "ExternalMessengerCreateContactCreateResponse",
  • "type": "USE_EXISTING",
  • "name": "string",
  • "sourceId": "string",
  • "description": "string"
}

ExternalMessengerCreateContactErrorResponse

$_type
string
Default: "ExternalMessengerCreateContactErrorResponse"
Value: "ExternalMessengerCreateContactErrorResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the request failed

{
  • "$_type": "ExternalMessengerCreateContactErrorResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateContactInvalidContactIdentifierResponse

$_type
string
Default: "ExternalMessengerCreateContactInvalidContactIdentifierResponse"
Value: "ExternalMessengerCreateContactInvalidContactIdentifierResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the contact identifier is invalid, for example, because a specific format is expected

{
  • "$_type": "ExternalMessengerCreateContactInvalidContactIdentifierResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateContactRequest

$_type
string
Default: "ExternalMessengerCreateContactRequest"
Value: "ExternalMessengerCreateContactRequest"
accountId
string
serviceName
string
externalMessengerChannelId
string

The ID of the external messenger channel to which the conversation has to be linked

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

contactIdentifier
string

The identifier of the person in the external messenger. The identifier value is based on the configured values of the CustomExternalMessengerChannelcontact identifier field name and type.

description
string

The description of the contact. Is null, if the user didn't define one.

{
  • "$_type": "ExternalMessengerCreateContactRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "externalMessengerChannelId": "string",
  • "personData": {
    },
  • "contactIdentifier": "string",
  • "description": "string"
}

ExternalMessengerCreateContactResponse

$_type
string
Default: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
Value: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
type
string (EExternalMessengerContactCreationResponseType)
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the request failed

Example
{
  • "$_type": "ExternalMessengerCreateContactContactToPersonMismatchResponse",
  • "type": "CONTACT_TO_PERSON_MISMATCH",
  • "errorText": "string"
}

ExternalMessengerCreateContactUseExistingResponse

$_type
string
Default: "ExternalMessengerCreateContactUseExistingResponse"
Value: "ExternalMessengerCreateContactUseExistingResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

externalMessengerContactId
string

The ID of the ExternalMessengerContact created when processing the ExternalMessengerCreateContactRequest request

{
  • "$_type": "ExternalMessengerCreateContactUseExistingResponse",
  • "type": "USE_EXISTING",
  • "externalMessengerContactId": "string"
}

ExternalMessengerCreateConversationCreateResponse

$_type
string
Default: "ExternalMessengerCreateConversationCreateResponse"
Value: "ExternalMessengerCreateConversationCreateResponse"
type
string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

sourceId
string

The source ID of the conversation which should be added to the creation data from the request. It has to be unique for the related external messenger channel.

sourceUrl
string

URL identifying the system where the conversation was created, for example a CRM. Optional.

object

Additional metadata which should be stored for the new conversation

{
  • "$_type": "ExternalMessengerCreateConversationCreateResponse",
  • "type": "USE_EXISTING",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "metadata": {
    }
}

ExternalMessengerCreateConversationErrorResponse

$_type
string
Default: "ExternalMessengerCreateConversationErrorResponse"
Value: "ExternalMessengerCreateConversationErrorResponse"
type
string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

errorText
string

The error text why the request failed

{
  • "$_type": "ExternalMessengerCreateConversationErrorResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateConversationRequest

$_type
string
Default: "ExternalMessengerCreateConversationRequest"
Value: "ExternalMessengerCreateConversationRequest"
accountId
string
serviceName
string
object (ConversationCreationData)

Data for creating a new conversation

{
  • "$_type": "ExternalMessengerCreateConversationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "creationData": {
    }
}

ExternalMessengerCreateConversationResponse

$_type
string
Default: "ExternalMessengerCreateConversationCreateResponse"
Value: "ExternalMessengerCreateConversationCreateResponse"
type
string (EExternalMessengerConversationCreationResponseType)
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

sourceId
string

The source ID of the conversation which should be added to the creation data from the request. It has to be unique for the related external messenger channel.

sourceUrl
string

URL identifying the system where the conversation was created, for example a CRM. Optional.

object

Additional metadata which should be stored for the new conversation

Example
{
  • "$_type": "ExternalMessengerCreateConversationCreateResponse",
  • "type": "CREATE",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "metadata": {
    }
}

ExternalMessengerCreateConversationUseExistingResponse

$_type
string
Default: "ExternalMessengerCreateConversationUseExistingResponse"
Value: "ExternalMessengerCreateConversationUseExistingResponse"
type
string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

conversationId
string

The ID of the conversation created when processing the ExternalMessengerCreateConversationRequest request

{
  • "$_type": "ExternalMessengerCreateConversationUseExistingResponse",
  • "type": "USE_EXISTING",
  • "conversationId": "string"
}

ExternalMessengerMessageStateEvent

$_type
string
Default: "ExternalMessengerMessageStateEvent"
Value: "ExternalMessengerMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageId
string

The ID of the message of which the state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

sourceId
string

The source ID of the message

externalMessengerChannelId
string

The ID if the external messenger channel

conversationId
string

The ID of the conversation to which the message belongs to

{
  • "$_type": "ExternalMessengerMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "sourceId": "string",
  • "externalMessengerChannelId": "string",
  • "conversationId": "string"
}

ExternalMessengerMessageStateRequest

$_type
string
Default: "ExternalMessengerMessageStateRequest"
Value: "ExternalMessengerMessageStateRequest"
accountId
string
serviceName
string
messageId
string

The ID of the message of which the state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

sourceId
string

The source ID of the message

externalMessengerChannelId
string

The ID if the external messenger channel

conversationId
string

The ID of the conversation the message belongs to

{
  • "$_type": "ExternalMessengerMessageStateRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "sourceId": "string",
  • "externalMessengerChannelId": "string",
  • "conversationId": "string"
}

ExternalMessengerMessageStateResponse

$_type
string
Default: "ExternalMessengerMessageStateResponse"
Value: "ExternalMessengerMessageStateResponse"
{
  • "$_type": "ExternalMessengerMessageStateResponse"
}

ExternalMessengerNewMessageEvent

$_type
string
Default: "ExternalMessengerNewMessageEvent"
Value: "ExternalMessengerNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "ExternalMessengerNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    }
}

ExternalMessengerNewMessageRequest

$_type
string
Default: "ExternalMessengerNewMessageRequest"
Value: "ExternalMessengerNewMessageRequest"
accountId
string
serviceName
string
any (MessageData)

Base class for all conversation messages

Array of objects (ExternalMessengerContact) [ items ]

The contacts that should receive the message

{
  • "$_type": "ExternalMessengerNewMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "conversationMessage": {
    },
  • "receivingContacts": [
    ]
}

ExternalMessengerNewMessageResponse

$_type
string
Default: "ExternalMessengerNewMessageResponse"
Value: "ExternalMessengerNewMessageResponse"
{
  • "$_type": "ExternalMessengerNewMessageResponse"
}

ExternalMessengerPostMessage

$_type
string
Default: "ExternalMessengerPostMessage"
Value: "ExternalMessengerPostMessage"
conversationId
string

The id of the conversation to which this message belongs to

senderExternalMessengerContactId
string

ID of the ExternalMessengerContact that sent the message.

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If it is null, all active participations are recipients

sourceId
string

An id identifying the source of the external message. Typically the id of the message in the other messaging system

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

{
  • "$_type": "ExternalMessengerPostMessage",
  • "conversationId": "string",
  • "senderExternalMessengerContactId": "string",
  • "recipientPersonIds": [
    ],
  • "sourceId": "string",
  • "replyToMessageId": "string",
  • "messageData": {
    }
}

ExternalMessengersMessageDeliveredBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message that should be marked as delivered in the conversation

externalMessengerContactId
string

The ID of the ExternalMessengerContact who received the message. If null, it's assumed that the message was delivered to all persons connected through the external messenger.

{
  • "conversationId": "string",
  • "messageId": "string",
  • "externalMessengerContactId": "string"
}

ExternalMessengersMessageReadBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message that should be marked as read in the conversation

externalMessengerContactId
string

The ID of the ExternalMessengerContact who read the message. If null, it's assumed that the message has been read by everyone connected through the external messenger.

{
  • "conversationId": "string",
  • "messageId": "string",
  • "externalMessengerContactId": "string"
}

ExternalMessengersMessageSendFailedBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message from the conversation, which should be set to the failed state

failState
string (ESendFailState)
Enum: "RETRYABLE" "TERMINAL"
enum-descriptions: ["RETRYABLE: Message could not be sent, but it is not terminal and can be tried again","TERMINAL: Message could not be sent and it will not be possible to send it again"]

The failed state of a message which was sent to an external messenger

failureText
string

A text that describes why the message couldn't be sent to the external messenger. The text is displayed to the user.

{
  • "conversationId": "string",
  • "messageId": "string",
  • "failState": "RETRYABLE",
  • "failureText": "string"
}

ExternalMessengersMessageSentSuccessfullyBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message that was successfully sent to the conversation

{
  • "conversationId": "string",
  • "messageId": "string"
}

ExternalParticipantData

$_type
string
Default: "ExternalParticipantData"
Value: "ExternalParticipantData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

externalMessengerContactId
string

ID of the ExternalMessengerContact for the person in question

personId
string

ID of the Person

sourceId
string

The source ID of the ExternalMessengerContact

participationType
string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ExternalParticipantData",
  • "state": "CREATED",
  • "externalMessengerContactId": "string",
  • "personId": "string",
  • "sourceId": "string",
  • "participationType": "CONTEXT_PERSON"
}

ExternalParticipantHistoryData

$_type
string
Default: "ExternalParticipantHistoryData"
Value: "ExternalParticipantHistoryData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the person participation was created (timestamp when the state was set to EConversationParticipationState.CREATED)

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person joined (timestamp when the state was set to EConversationParticipationState.ONBOARDING)

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated, may be null (timestamp when the state was set to EConversationParticipationState.ACTIVE)

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when the person started offboarding, may be null (timestamp when the state was set toEConversationParticipationState.OFFBOARDING)

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person left, may be null (timestamp when the state was set to EConversationParticipationState.ENDED)

leftReason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

leftComment
string

The comment on why the participant left the conversation. If provided, this attribute is set when offboarding starts and is null if the participant is still part of the conversation.

conversationRating
number <float>

Participant's rating of the conversation (between 0 and 1)

participationType
string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ExternalMessengerContact)

Contact belonging to an external messenger.
The entity acts as a storage for external channels to create a link between Collaboration Server persons and the users of an external messenger.

{
  • "$_type": "ExternalParticipantHistoryData",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "joinedTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "FORWARDED",
  • "leftComment": "string",
  • "conversationRating": 0,
  • "participationType": "CONTEXT_PERSON",
  • "person": {
    },
  • "externalMessengerContact": {
    }
}

ExternallyManagedUserSearchFilter

$_type
string
Default: "ExternallyManagedUserSearchFilter"
Value: "ExternallyManagedUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (BooleanOperator)
{
  • "$_type": "ExternallyManagedUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

FileMessageData

$_type
string
Default: "FileMessageData"
Value: "FileMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

fileName
string

The name of the file that is send

caption
string

A caption for the file that is send. Can be omitted

captionType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

mimeType
string

The mime type of the file that is send

source
string

The source of the file

fileStoreId
string

The file store id of the content inside the collaboration server

fileStatus
string (EConversationFileStatus)
Enum: "UPLOADING" "COMPLETED" "CANCELED" "FAILED" "DELETED" "SCANNING" "REJECTED"
enum-descriptions: ["UPLOADING","COMPLETED","CANCELED","FAILED","DELETED","SCANNING","REJECTED"]

Status of a file which is/was uploaded to the collaboration server

totalSize
integer <int64>

The total size of the file. Does not need to be set, when the file is send to the collaboration server

uploadedSize
integer <int64>

The amount of data that was already uploaded to the server. Does not need to be set, when the file is send to the collaboration server

Array of objects (DownloadLink) [ items ]

URLs to download the file. Access is only permitted for authenticated users that have access to the referenced conversation. Authentication is possible with basic authentication or a valid session cookie.
If the file is currently being reviewed by one or more file interceptors, calling one of the URLs returns a 403 code until the file upload has been approved.

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "FileMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "fileName": "string",
  • "caption": "string",
  • "captionType": "SIMPLE_TEXT",
  • "mimeType": "string",
  • "source": "string",
  • "fileStoreId": "string",
  • "fileStatus": "UPLOADING",
  • "totalSize": 0,
  • "uploadedSize": 0,
  • "downloadLinks": [
    ],
  • "quickReplies": [
    ]
}

FilePostMessageData

$_type
string
Default: "FilePostMessageData"
Value: "FilePostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

fileName
string

The name of the file that is send

caption
string

A caption for the file that is send. Can be omitted

captionType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

fileData
string

The the content of the file as data URL scheme (RFC2397 - data:[<mediatype>][;base64],<data>)

Array of objects (QuickReply) [ items ]

Optional list of quick replies available to the message's recipients

Max number of quick replies is 13.

{
  • "$_type": "FilePostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "fileName": "string",
  • "caption": "string",
  • "captionType": "SIMPLE_TEXT",
  • "fileData": "string",
  • "quickReplies": [
    ]
}

FileUploadInterceptorData

$_type
string
Default: "FileUploadInterceptorData"
Value: "FileUploadInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the file upload interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the file upload interceptor. Maximum length of 500 characters. Optional.

order
integer <int64>

Order of execution of the file upload interceptor among all the file upload interceptors configured in the account. Mandatory.

mimeTypeRegex
string

Regular expression used to determine if the interceptor must be used for a particular MIME type. Leave it empty to match all MIME types.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.FILE_UPLOAD_INTERCEPTOR_NEW_FILE: On each file uploaded to a conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event. Maximum length of 4000 characters.

{
  • "$_type": "FileUploadInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "order": 0,
  • "mimeTypeRegex": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

FileUploadInterceptorOrderBy

$_type
string
Default: "FileUploadInterceptorOrderBy"
Value: "FileUploadInterceptorOrderBy"
field
string (EFileUploadInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "FileUploadInterceptorOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

FileUploadInterceptorQuery

$_type
string
Default: "FileUploadInterceptorQuery"
Value: "FileUploadInterceptorQuery"
Array of any (FileUploadInterceptorSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (FileUploadInterceptorOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "FileUploadInterceptorQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

FileUploadInterceptorResult

$_type
string
Default: "FileUploadInterceptorResult"
Value: "FileUploadInterceptorResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (FileUploadInterceptorData) [ items ]

The returned list of entities

{
  • "$_type": "FileUploadInterceptorResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

FileUploadInterceptorSearchFilter

$_type
string
Default: "CreationTimestampFileUploadInterceptorSearchFilter"
Value: "CreationTimestampFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampFileUploadInterceptorSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

FileUploadInterceptorsApproveFileUploadBody

token
string

The token used to identify the file this action applies to. The token is received when approval is requested through a file_upload_interceptor.new_file webhook. Each file upload approval request contains a unique token.

{
  • "token": "string"
}

FileUploadInterceptorsRejectFileUploadBody

token
string

The token used to identify the file this action applies to. The token is received when approval is requested through a file_upload_interceptor.new_file webhook. Each file upload approval request contains a unique token.

reason
string

A text explaining why the file upload was rejected. The text is displayed to end users as it was transmitted.

{
  • "token": "string",
  • "reason": "string"
}

FirstNamePersonSearchFilter

$_type
string
Default: "FirstNamePersonSearchFilter"
Value: "FirstNamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "FirstNamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

FirstNamePersonTypedSearchFilter

$_type
string
Default: "FirstNamePersonTypedSearchFilter"
Value: "FirstNamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "FirstNamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

FirstNameUserSearchFilter

$_type
string
Default: "FirstNameUserSearchFilter"
Value: "FirstNameUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "FirstNameUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

GlobalChangeAuditChangeSearchFilter

$_type
string
Default: "GlobalChangeAuditChangeSearchFilter"
Value: "GlobalChangeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (BooleanOperator)
{
  • "$_type": "GlobalChangeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

GlobalData

$_type
string
Default: "GlobalData"
Value: "GlobalData"
serverIdentifier
string

A unique id identifying an Unblu installation. This is read only information it will be set by the server anyway.

object (LicenseData)

Entity representing the current installed license

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "GlobalData",
  • "serverIdentifier": "string",
  • "currentLicense": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

GreaterThanOrNullTimestampOperator

$_type
string
Default: "GreaterThanOrNullTimestampOperator"
Value: "GreaterThanOrNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "GreaterThanOrNullTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

GreaterThanTimestampOperator

$_type
string
Default: "GreaterThanTimestampOperator"
Value: "GreaterThanTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "GreaterThanTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

HasPasswordData

$_type
string
Default: "HasPasswordData"
Value: "HasPasswordData"
hasPassword
boolean

Whether or not the user has a password

{
  • "$_type": "HasPasswordData",
  • "hasPassword": true
}

HavingPersonLabelNameOperator

$_type
string
Default: "HavingPersonLabelNameOperator"
Value: "HavingPersonLabelNameOperator"
values
Array of strings
{
  • "$_type": "HavingPersonLabelNameOperator",
  • "values": [
    ]
}

IdExternalMessengerContactSearchFilter

$_type
string
Default: "IdExternalMessengerContactSearchFilter"
Value: "IdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "IdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

IdListOperator

$_type
string
Default: "AllEqualIdListOperator"
Value: "AllEqualIdListOperator"
type
string (EIdListOperatorType)
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
Example
{
  • "$_type": "AllEqualIdListOperator",
  • "type": "ALL_EQUAL",
  • "values": [
    ]
}

IdOperator

$_type
string
Default: "EqualsIdOperator"
Value: "EqualsIdOperator"
type
string (EIdOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
Example
{
  • "$_type": "EqualsIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

ImpersonationTypeAuditChangeSearchFilter

$_type
string
Default: "ImpersonationTypeAuditChangeSearchFilter"
Value: "ImpersonationTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (ImpersonationTypeOperator)
{
  • "$_type": "ImpersonationTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ImpersonationTypeOperator

$_type
string
Default: "EqualsImpersonationTypeOperator"
Value: "EqualsImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

Example
{
  • "$_type": "EqualsImpersonationTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

InAuditChangeInteractionTypeOperator

$_type
string
Default: "InAuditChangeInteractionTypeOperator"
Value: "InAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditInteractionType)
Items Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
{
  • "$_type": "InAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InAuditChangeTypeOperator

$_type
string
Default: "InAuditChangeTypeOperator"
Value: "InAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditChangeType)
Items Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
{
  • "$_type": "InAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InAuthorizationRoleOperator

$_type
string
Default: "InAuthorizationRoleOperator"
Value: "InAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAuthorizationRole)
Items Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
{
  • "$_type": "InAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InAwaitedPersonTypeOperator

$_type
string
Default: "InAwaitedPersonTypeOperator"
Value: "InAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAwaitedPersonType)
Items Enum: "NONE" "VISITOR" "AGENT"
{
  • "$_type": "InAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InContactIdentifierFieldTypeOperator

$_type
string
Default: "InContactIdentifierFieldTypeOperator"
Value: "InContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EContactIdentifierFieldType)
Items Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
{
  • "$_type": "InContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InConversationEndReasonOperator

$_type
string
Default: "InConversationEndReasonOperator"
Value: "InConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationEndReason)
Items Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
{
  • "$_type": "InConversationEndReasonOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InConversationRecipientTypeOperator

$_type
string
Default: "InConversationRecipientTypeOperator"
Value: "InConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationRecipientType)
Items Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "InConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InConversationStateOperator

$_type
string
Default: "InConversationStateOperator"
Value: "InConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
{
  • "$_type": "InConversationStateOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InDeputyDelegationEscalationLevelOperator

$_type
string
Default: "InDeputyDelegationEscalationLevelOperator"
Value: "InDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyDelegationEscalationLevel)
Items Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
{
  • "$_type": "InDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InDeputyTypeOperator

$_type
string
Default: "InDeputyTypeOperator"
Value: "InDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyType)
Items Enum: "AGENT" "TEAM"
{
  • "$_type": "InDeputyTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InExternalMessengerChannelTypeOperator

$_type
string
Default: "InExternalMessengerChannelTypeOperator"
Value: "InExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EExternalMessengerChannelType)
Items Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
{
  • "$_type": "InExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InIdOperator

$_type
string
Default: "InIdOperator"
Value: "InIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

values
Array of strings
{
  • "$_type": "InIdOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InImpersonationTypeOperator

$_type
string
Default: "InImpersonationTypeOperator"
Value: "InImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EImpersonationType)
Items Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
{
  • "$_type": "InImpersonationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInitialEngagementTypeOperator

$_type
string
Default: "InInitialEngagementTypeOperator"
Value: "InInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInitialEngagementType)
Items Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
{
  • "$_type": "InInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInvitationCreatorTypeOperator

$_type
string
Default: "InInvitationCreatorTypeOperator"
Value: "InInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationCreatorType)
Items Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
{
  • "$_type": "InInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInvitationTargetTypeOperator

$_type
string
Default: "InInvitationTargetTypeOperator"
Value: "InInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationTargetType)
Items Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "InInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInvitationTypeOperator

$_type
string
Default: "InInvitationTypeOperator"
Value: "InInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationType)
Items Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
{
  • "$_type": "InInvitationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InPersonSourceOperator

$_type
string
Default: "InPersonSourceOperator"
Value: "InPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonSource)
Items Enum: "USER_DB" "VIRTUAL"
{
  • "$_type": "InPersonSourceOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InPersonTypeOperator

$_type
string
Default: "InPersonTypeOperator"
Value: "InPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonType)
Items Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
{
  • "$_type": "InPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InPropertyOwnerTypeOperator

$_type
string
Default: "InPropertyOwnerTypeOperator"
Value: "InPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
values
Array of strings (EPropertyOwnerType)
Items Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
{
  • "$_type": "InPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InRangeTimestampOperator

$_type
string
Default: "InRangeTimestampOperator"
Value: "InRangeTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
minimum
integer <int64>
maximum
integer <int64>
{
  • "$_type": "InRangeTimestampOperator",
  • "type": "EQUALS",
  • "minimum": 0,
  • "maximum": 0
}

InStringOperator

$_type
string
Default: "InStringOperator"
Value: "InStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
values
Array of strings
{
  • "$_type": "InStringOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InTimestampOperator

$_type
string
Default: "InTimestampOperator"
Value: "InTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
values
Array of integers <int64> [ items <int64 > ]
{
  • "$_type": "InTimestampOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InboundRequestPushNotificationEvent

$_type
string
Default: "InboundRequestPushNotificationEvent"
Value: "InboundRequestPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

{
  • "$_type": "InboundRequestPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string"
}

IncomingCallPushNotificationEvent

$_type
string
Default: "IncomingCallPushNotificationEvent"
Value: "IncomingCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

callStartTimestamp
integer <int64>

Timestamp when the call started

callerName
string

Name of the person calling

callerPersonId
string

Person id of the person calling

{
  • "$_type": "IncomingCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE",
  • "callType": "AUDIO",
  • "callStartTimestamp": 0,
  • "callerName": "string",
  • "callerPersonId": "string"
}

InitialEngagementTypeConversationHistorySearchFilter

$_type
string
Default: "InitialEngagementTypeConversationHistorySearchFilter"
Value: "InitialEngagementTypeConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (InitialEngagementTypeOperator)
{
  • "$_type": "InitialEngagementTypeConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

InitialEngagementTypeConversationSearchFilter

$_type
string
Default: "InitialEngagementTypeConversationSearchFilter"
Value: "InitialEngagementTypeConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (InitialEngagementTypeOperator)
{
  • "$_type": "InitialEngagementTypeConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

InitialEngagementTypeConversationTemplateSearchFilter

$_type
string
Default: "InitialEngagementTypeConversationTemplateSearchFilter"
Value: "InitialEngagementTypeConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (InitialEngagementTypeOperator)
{
  • "$_type": "InitialEngagementTypeConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

InitialEngagementTypeOperator

$_type
string
Default: "EqualsInitialEngagementTypeOperator"
Value: "EqualsInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

Example
{
  • "$_type": "EqualsInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "value": "CHAT_REQUEST"
}

InitiationTimestampCallSearchFilter

$_type
string
Default: "InitiationTimestampCallSearchFilter"
Value: "InitiationTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "InitiationTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

InitiatorPersonIdCallSearchFilter

$_type
string
Default: "InitiatorPersonIdCallSearchFilter"
Value: "InitiatorPersonIdCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "InitiatorPersonIdCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

InteractionNameAuditChangeSearchFilter

$_type
string
Default: "InteractionNameAuditChangeSearchFilter"
Value: "InteractionNameAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "InteractionNameAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

InteractionTypeAuditChangeSearchFilter

$_type
string
Default: "InteractionTypeAuditChangeSearchFilter"
Value: "InteractionTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (AuditChangeInteractionTypeOperator)
{
  • "$_type": "InteractionTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

InterceptorFileRejectedEvent

$_type
string
Default: "InterceptorFileRejectedEvent"
Value: "InterceptorFileRejectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

name
string

The name of the file

mimeType
string

The file's MIME type

length
integer <int64>

The length, or size, of the file in bytes

interceptorId
string

The ID of the file upload interceptor that rejected the file upload

source
string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

personId
string

The ID of the person uploading the file. Depending on the source, this may be null.

conversationId
string

The ID of the conversation where the file is being uploaded. Depending on the source, this may be null.

reason
string

The reason the file upload was rejected

{
  • "$_type": "InterceptorFileRejectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "name": "string",
  • "mimeType": "string",
  • "length": 0,
  • "interceptorId": "string",
  • "source": "BOT",
  • "personId": "string",
  • "conversationId": "string",
  • "reason": "string"
}

InterceptorNewFileEvent

$_type
string
Default: "InterceptorNewFileEvent"
Value: "InterceptorNewFileEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

apiToken
string

The token to get the message's content and approve or reject the message

name
string

The name of the file

mimeType
string

The file's MIME type

length
integer <int64>

The length, or size, of the file in bytes

downloadLink
string

The link to retrieve the file's contents

source
string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationId
string

The ID of the conversation where the file is being uploaded. Depending on the source, this may be null.

{
  • "$_type": "InterceptorNewFileEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "apiToken": "string",
  • "name": "string",
  • "mimeType": "string",
  • "length": 0,
  • "downloadLink": "string",
  • "source": "BOT",
  • "person": {
    },
  • "conversationId": "string"
}

InterceptorNewMessageEvent

$_type
string
Default: "InterceptorNewMessageEvent"
Value: "InterceptorNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageApiToken
string

The token to approve, modify, or reject the message

any (MessageData)

Base class for all conversation messages

conversationLanguage
string

The language of the conversation

{
  • "$_type": "InterceptorNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageApiToken": "string",
  • "conversationMessage": {
    },
  • "conversationLanguage": "string"
}

InterceptorNewMessageRequest

$_type
string
Default: "InterceptorNewMessageRequest"
Value: "InterceptorNewMessageRequest"
accountId
string
serviceName
string
any (MessageData)

Base class for all conversation messages

conversationLanguage
string

The language of the conversation

{
  • "$_type": "InterceptorNewMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "conversationMessage": {
    },
  • "conversationLanguage": "string"
}

InternalMessageInterceptorData

$_type
string
Default: "InternalMessageInterceptorData"
Value: "InternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
Enum: "EXTERNAL" "INTERNAL"
enum-descriptions: ["EXTERNAL","INTERNAL"]
pointOfInterception
string (EMessageInterceptionPoint)
Enum: "BEFORE_PERSISTING" "AFTER_PERSISTING"
enum-descriptions: ["BEFORE_PERSISTING: Messages are intercepted before the message is persisted. The first interception takes place on the client side before the message is sent to the server. A second validation occurs before the message is persisted and added to the conversation in case the client-side validation was skipped for some reason. <p> If this point of interception is selected, Unblu doesn't store any information about rejected chat messages. It isn't possible to see rejected chat messages, or to be notified of rejected chat messages through logs or webhooks.","AFTER_PERSISTING: Messages are intercepted after they've been persisted and added to the conversation. Until the interception phase is over, the messages are only visible to the sender. If the message is rejected, only participation types with the appropriate rights can see the message. <p> If this interception point is chosen, every message is stored in Unblu and can be accessed later. It is possible to receive a webhook and logs when a message is rejected."]

Identifies the point where an interceptor intercepts messages

language
string

The IETF BCP 47 language tag of the interceptor. The interceptor only applies to conversations in the language specified. Can be omitted for interceptors that apply to all languages. The following rules apply:

  • Internal Message Interceptors with no language defined are used for all conversations where they have been configured no matter the language of the conversation.
  • If the conversation language (e.g. "en-us") is more specific than the language of the internal message interceptor (e.g. "en"), the internal message interceptor is also used.
  • If the language of the internal message interceptor (e.g. "en-us") is more specific than the conversation language (e.g. "en"), the internal message interceptor isn't used.
regex
string

The regular expression used to identify the messages to reject

reason
string

The reason displayed when a message is rejected. If a localized version of the reason exists in the language of the conversation, the translation is used. Otherwise, this value is used.

severity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

status
string (EInternalMessageInterceptorStatus)
Enum: "ACTIVE" "INACTIVE"
enum-descriptions: ["ACTIVE: The interceptor is active and participates in all conversations where it is configured","INACTIVE: The interceptor isn't active and doesn't participate in any conversation"]

The status of an internal message interceptor.

object

A map of localized versions of the reject reason of this entity. The key is the IETF BCP 47 representation of the locale.

{
  • "$_type": "InternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "pointOfInterception": "BEFORE_PERSISTING",
  • "language": "string",
  • "regex": "string",
  • "reason": "string",
  • "severity": "HIGH",
  • "status": "ACTIVE",
  • "translations": {
    }
}

InternalMessageInterceptorTranslation

$_type
string
Default: "InternalMessageInterceptorTranslation"
Value: "InternalMessageInterceptorTranslation"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted, the ID is generated by the server.

reason
string

The reason shown when a message is rejected. If a translation of the reason exists in the language of the conversation, it's used. Otherwise this value is used.

{
  • "$_type": "InternalMessageInterceptorTranslation",
  • "id": "string",
  • "reason": "string"
}

InvitationCreatorTypeOperator

$_type
string
Default: "EqualsInvitationCreatorTypeOperator"
Value: "EqualsInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

Example
{
  • "$_type": "EqualsInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "value": "WEB_API"
}

InvitationStateConversationInvitationSearchFilter

$_type
string
Default: "InvitationStateConversationInvitationSearchFilter"
Value: "InvitationStateConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationStateOperator)
{
  • "$_type": "InvitationStateConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

InvitationStateOperator

$_type
string
Default: "EqualsInvitationStateOperator"
Value: "EqualsInvitationStateOperator"
type
string (EInvitationStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

Example
{
  • "$_type": "EqualsInvitationStateOperator",
  • "type": "EQUALS",
  • "value": "OPEN"
}

InvitationTargetTypeOperator

$_type
string
Default: "EqualsInvitationTargetTypeOperator"
Value: "EqualsInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
Example
{
  • "$_type": "EqualsInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "value": "ANONYMOUS"
}

InvitationTypeConversationInvitationSearchFilter

$_type
string
Default: "InvitationTypeConversationInvitationSearchFilter"
Value: "InvitationTypeConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationTypeOperator)
{
  • "$_type": "InvitationTypeConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

InvitationTypeOperator

$_type
string
Default: "EqualsInvitationTypeOperator"
Value: "EqualsInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
Example
{
  • "$_type": "EqualsInvitationTypeOperator",
  • "type": "EQUALS",
  • "value": "ASSIGNMENT_REQUEST"
}

InvitationsAddSecondaryInvitationTargetBody

personId
string

The person who should be informed of the invitation additionally

{
  • "personId": "string"
}

InvitationsCancelSecondaryInvitationTargetBody

personId
string

The person ID of the secondary invitation target for whom to cancel the invitation

{
  • "personId": "string"
}

InvitationsForwardConversationToAgentBody

conversationId
string

Conversation id.

agentPersonId
string

Person ID of the agent.

comment
string

Invitation comment that will be displayed to the invited agent. Optional.

{
  • "conversationId": "string",
  • "agentPersonId": "string",
  • "comment": "string"
}

InvitationsForwardConversationToTeamBody

conversationId
string

Conversation id.

teamId
string

Team id.

comment
string

Invitation comment. Optional.

{
  • "conversationId": "string",
  • "teamId": "string",
  • "comment": "string"
}

InvitationsGetAcceptLinkBody

token
string

to return the links for

{
  • "token": "string"
}

InvitationsInviteAgentToConversationBody

conversationId
string

Conversation ID

agentPersonId
string

Person ID of the invited agent

comment
string

Invitation comment. Optional.

joinHidden
boolean

Flag deciding whether accepting the invitation resolves into a hidden participation. Optional (false by default).

{
  • "conversationId": "string",
  • "agentPersonId": "string",
  • "comment": "string",
  • "joinHidden": true
}

InvitationsInviteAnonymousVisitorToConversationWithEmailBody

conversationId
string

Conversation id.

email
string

Email address that will be applied to the visitor who accepts the invitation if they are anonymous and haven't provided an email address. Optional.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

{
  • "conversationId": "string",
  • "email": "string",
  • "nickname": "string"
}

InvitationsInviteAnonymousVisitorToConversationWithLinkBody

conversationId
string

Conversation id.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

{
  • "conversationId": "string",
  • "nickname": "string"
}

InvitationsInviteAnonymousVisitorToConversationWithPinBody

conversationId
string

Conversation id.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

{
  • "conversationId": "string",
  • "nickname": "string"
}

InvitationsInviteTeamToConversationBody

conversationId
string

Conversation ID

teamId
string

Team ID

comment
string

Invitation comment. Optional.

joinHidden
boolean

Flag deciding whether accepting the invitation resolves into a hidden participation. Optional (false by default).

{
  • "conversationId": "string",
  • "teamId": "string",
  • "comment": "string",
  • "joinHidden": true
}

InvitationsRequeueConversationBody

conversationId
string

Conversation ID

agentRemovalType
string (EAgentRemovalType)
Enum: "KEEP_AGENTS" "REMOVE_ASSIGNED_AGENT" "REMOVE_ALL_AGENTS"
enum-descriptions: ["KEEP_AGENTS","REMOVE_ASSIGNED_AGENT","REMOVE_ALL_AGENTS"]
{
  • "conversationId": "string",
  • "agentRemovalType": "KEEP_AGENTS"
}

IsNotNullBooleanOperator

$_type
string
Default: "IsNotNullBooleanOperator"
Value: "IsNotNullBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
{
  • "$_type": "IsNotNullBooleanOperator",
  • "type": "EQUALS"
}

IsNotNullIdOperator

$_type
string
Default: "IsNotNullIdOperator"
Value: "IsNotNullIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

{
  • "$_type": "IsNotNullIdOperator",
  • "type": "EQUALS"
}

IsNotNullStringOperator

$_type
string
Default: "IsNotNullStringOperator"
Value: "IsNotNullStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
{
  • "$_type": "IsNotNullStringOperator",
  • "type": "EQUALS"
}

IsNotNullTimestampOperator

$_type
string
Default: "IsNotNullTimestampOperator"
Value: "IsNotNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
{
  • "$_type": "IsNotNullTimestampOperator",
  • "type": "EQUALS"
}

IsNullBooleanOperator

$_type
string
Default: "IsNullBooleanOperator"
Value: "IsNullBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
{
  • "$_type": "IsNullBooleanOperator",
  • "type": "EQUALS"
}

IsNullIdOperator

$_type
string
Default: "IsNullIdOperator"
Value: "IsNullIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

{
  • "$_type": "IsNullIdOperator",
  • "type": "EQUALS"
}

IsNullStringOperator

$_type
string
Default: "IsNullStringOperator"
Value: "IsNullStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
{
  • "$_type": "IsNullStringOperator",
  • "type": "EQUALS"
}

IsNullTimestampOperator

$_type
string
Default: "IsNullTimestampOperator"
Value: "IsNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
{
  • "$_type": "IsNullTimestampOperator",
  • "type": "EQUALS"
}

JoinedTimestampPersonPresenceSearchFilter

$_type
string
Default: "JoinedTimestampPersonPresenceSearchFilter"
Value: "JoinedTimestampPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (TimestampOperator)
{
  • "$_type": "JoinedTimestampPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

KeyCannedResponseSearchFilter

$_type
string
Default: "KeyCannedResponseSearchFilter"
Value: "KeyCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "KeyCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

KeyCustomActionSearchFilter

$_type
string
Default: "KeyCustomActionSearchFilter"
Value: "KeyCustomActionSearchFilter"
field
string (ECustomActionSearchFilterField)
Value: "KEY"
enum-descriptions: ["KEY: Filter by the 'key' attribute"]
any (StringOperator)
{
  • "$_type": "KeyCustomActionSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

LastCompletedRecordingTimestampConversationHistorySearchFilter

$_type
string
Default: "LastCompletedRecordingTimestampConversationHistorySearchFilter"
Value: "LastCompletedRecordingTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "LastCompletedRecordingTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

LastMessageTimestampConversationHistorySearchFilter

$_type
string
Default: "LastMessageTimestampConversationHistorySearchFilter"
Value: "LastMessageTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "LastMessageTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

LastNamePersonSearchFilter

$_type
string
Default: "LastNamePersonSearchFilter"
Value: "LastNamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "LastNamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

LastNamePersonTypedSearchFilter

$_type
string
Default: "LastNamePersonTypedSearchFilter"
Value: "LastNamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "LastNamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

LastNameUserSearchFilter

$_type
string
Default: "LastNameUserSearchFilter"
Value: "LastNameUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "LastNameUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

LdapSyncJobEvent

$_type
string
Default: "LdapSyncJobEvent"
Value: "LdapSyncJobEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

numberOfCreatedUsers
integer <int32>

The number of users created in the LDAP sync.

numberOfUpdatedUsers
integer <int32>

The number of users updated in the LDAP sync.

numberOfDeletedUsers
integer <int32>

The number of users deleted in the LDAP sync.

numberOfCreatedTeams
integer <int32>

The number of teams created in the LDAP sync.

numberOfDeletedTeams
integer <int32>

The number of teams deleted in the LDAP sync.

finishedWithError
boolean

Set to true if the LDAP sync finishes with an error.

errorDescription
string

Error description if the LDAP sync finishes with an error.

{
  • "$_type": "LdapSyncJobEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "numberOfCreatedUsers": 0,
  • "numberOfUpdatedUsers": 0,
  • "numberOfDeletedUsers": 0,
  • "numberOfCreatedTeams": 0,
  • "numberOfDeletedTeams": 0,
  • "finishedWithError": true,
  • "errorDescription": "string"
}

LeftTimestampPersonPresenceSearchFilter

$_type
string
Default: "LeftTimestampPersonPresenceSearchFilter"
Value: "LeftTimestampPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (TimestampOperator)
{
  • "$_type": "LeftTimestampPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

LicenseData

$_type
string
Default: "LicenseData"
Value: "LicenseData"
state
string (ELicenseState)
Enum: "NO_LICENSE" "ACTIVE" "INVALID" "INCOMPATIBLE" "EXPIRED"
enum-descriptions: ["NO_LICENSE: No license installed. All licensed features can not be used.","ACTIVE: Valid license installed, this default state to use Unblu.","INVALID: Invalid license installed. All licensed features can not be used.","INCOMPATIBLE: The license type of the installed license is not compatible with this server. All licensed features can not be used.","EXPIRED: Valid license installed, but with an expiration date in the past. All licensed features can not be used."]

State of the global server license

licenseId
string

ID of the current license. Is null when no license is installed. This is read only information that will changed when a new license is installed.

expirationTimestamp
integer <int64>

Unix timestamp (ms) when the current license will expires. Is null when no license is installed. This is read only information that will changed when a new license is installed.

object

features contained in the license.

{
  • "$_type": "LicenseData",
  • "state": "NO_LICENSE",
  • "licenseId": "string",
  • "expirationTimestamp": 0,
  • "features": {
    }
}

ListMessageCardItem

$_type
string
Default: "ListMessageCardItem"
Value: "ListMessageCardItem"
imageUrl
string

URL of the image displayed at the top of the card.

imageAltText
string

Alt text for the image.

title
string

Title displayed bold below the image.

body
string

Body text which may optionally contain markdown.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

object (MessageAction)

Message action used in card messages and on list items.

Links are rendered with their labels below the body text of the card or list item. Reply actions are only rendered in card messages. They aren't rendered on list items.

{
  • "$_type": "ListMessageCardItem",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "action": {
    }
}

ListMessageData

$_type
string
Default: "ListMessageData"
Value: "ListMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

object (MessageHeader)

Header of a message which may contain an image, title and body.

All of these parts are optional as long as it contains at least one of them.

Array of objects (ListMessageCardItem) [ items ]

List of items of the list message

Array of objects (MessageAction) [ items ]

Actions which will be displayed at the bottom of the list

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "ListMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "header": {
    },
  • "items": [
    ],
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

ListPostMessageData

$_type
string
Default: "ListPostMessageData"
Value: "ListPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

object (MessageHeader)

Header of a message which may contain an image, title and body.

All of these parts are optional as long as it contains at least one of them.

Array of objects (PostListMessageCardItemData) [ items ]

List items which will be displayed below the header and above the actions. (optional)

Max number of list items is 10.

Array of objects (MessageAction) [ items ]

Actions which will be displayed at the bottom of the list. (optional)

Max number of actions is 5.

Array of objects (QuickReply) [ items ]

Optional list of quick replies available to the message's recipients

Max number of quick replies is 13.

{
  • "$_type": "ListPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "header": {
    },
  • "items": [
    ],
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

LoginResult

$_type
string
Default: "LoginResult"
Value: "LoginResult"
success
boolean

Whether or not the authentication operation was successful

{
  • "$_type": "LoginResult",
  • "success": true
}

LowerThanOrNullTimestampOperator

$_type
string
Default: "LowerThanOrNullTimestampOperator"
Value: "LowerThanOrNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "LowerThanOrNullTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

LowerThanTimestampOperator

$_type
string
Default: "LowerThanTimestampOperator"
Value: "LowerThanTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "LowerThanTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

MessageAction

$_type
string
Default: "MessageAction"
Value: "MessageAction"
actionType
string (EConversationMessageActionType)
Enum: "LINK_INTERNAL" "LINK_EXTERNAL" "LINK_COBROWSABLE" "REPLY_MESSAGE" "REPLY_MESSAGE_WITH_TECHNICAL_VALUE"
enum-descriptions: ["LINK_INTERNAL: An internal link that will open in the same tab as the unblu chat when clicked. <p> The action will be displayed as a link using the action's label as text.","LINK_EXTERNAL: An external link that will open in a new tab when clicked. <p> The action will be displayed as a link with an \"external\" icon using the action's label as text.","LINK_COBROWSABLE: A link that will start universal co-browsing session of provided address when clicked. <p> The action will be displayed as a link with a \"collaborate on website\" icon using the action's label as text.","REPLY_MESSAGE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type TextMessage will be sent in the name of the clicking person containing the action's value as the message text.","REPLY_MESSAGE_WITH_TECHNICAL_VALUE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type ReplyMessage will be sent in the name of the clicking person. It will reference the message this action is part of as questionMessage, contain the action's value as the reply's value and the label as text visible to the user. message text."]

Type of message action used in Card and List messages.

label
string

Text displayed in the action button / link

Max length is 24 characters.

value
string

The URL to open if the action type is a link or the reply message if the type is EConversationMessageActionType.REPLY_MESSAGE or a technical value that will be part of the reply message if the action is chosen if the type is EConversationMessageActionType.REPLY_MESSAGE_WITH_TECHNICAL_VALUE.

{
  • "$_type": "MessageAction",
  • "actionType": "LINK_INTERNAL",
  • "label": "string",
  • "value": "string"
}

MessageData

$_type
string
Default: "ApprovalRequestMessageData"
Value: "ApprovalRequestMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

Example
{
  • "$_type": "ApprovalRequestMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "APPROVAL_REQUEST",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING"
}

MessageExportFilter

$_type
string
Default: "SendTimestampMessageExportFilter"
Value: "SendTimestampMessageExportFilter"
field
string (EMessageExportFilterField)
enum-descriptions: ["SEND_TIMESTAMP: Filter by the 'sendTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "SendTimestampMessageExportFilter",
  • "field": "SEND_TIMESTAMP",
  • "operator": {
    }
}

MessageExportOrderBy

$_type
string
Default: "MessageExportOrderBy"
Value: "MessageExportOrderBy"
field
string (EMessageExportOrderByField)
Enum: "ID" "CONVERSATION_ID" "SEND_TIMESTAMP" "SERVER_TIMESTAMP" "SENDER_PERSON_ID" "TYPE" "TEXT"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","SEND_TIMESTAMP: Sort by the 'sendTimestamp' attribute","SERVER_TIMESTAMP: Sort by the 'serverTimestamp' attribute","SENDER_PERSON_ID: Sort by the 'senderPersonId' attribute","TYPE: Sort by the 'type' attribute","TEXT: Sort by the 'text' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "MessageExportOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

MessageExportQuery

$_type
string
Default: "MessageExportQuery"
Value: "MessageExportQuery"
Array of any (MessageExportFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (MessageExportOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "MessageExportQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

MessageExportResult

$_type
string
Default: "MessageExportResult"
Value: "MessageExportResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationHistoryMessageData) [ items ]

The returned list of entities

{
  • "$_type": "MessageExportResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

MessageHeader

$_type
string
Default: "MessageHeader"
Value: "MessageHeader"
imageUrl
string

URL of the image displayed at the top of the card.

imageAltText
string

Alt text for the image.

title
string

Title displayed bold below the image.

Max length is 64 characters.

body
string

Body text which may optionally contain markdown.

Max length is 256 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

{
  • "$_type": "MessageHeader",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT"
}

MessageIdCannedResponseUsageSearchFilter

$_type
string
Default: "MessageIdCannedResponseUsageSearchFilter"
Value: "MessageIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "MessageIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

MessageInterceptorData

$_type
string
Default: "ExternalMessageInterceptorData"
Value: "ExternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
enum-descriptions: ["EXTERNAL","INTERNAL"]
webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.MESSAGE_INTERCEPTOR_NEW_MESSAGE: On each message in the conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event

Maximum length of 4000 characters.

Example
{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

MessageInterceptorOrderBy

$_type
string
Default: "MessageInterceptorOrderBy"
Value: "MessageInterceptorOrderBy"
field
string (EMessageInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "MessageInterceptorOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

MessageInterceptorOutboundApproveResponse

$_type
string
Default: "MessageInterceptorOutboundApproveResponse"
Value: "MessageInterceptorOutboundApproveResponse"
type
string (EMessageInterceptorOutboundResponseType)
Enum: "APPROVE" "REJECT"
enum-descriptions: ["APPROVE","REJECT"]
{
  • "$_type": "MessageInterceptorOutboundApproveResponse",
  • "type": "APPROVE"
}

MessageInterceptorOutboundRejectResponse

$_type
string
Default: "MessageInterceptorOutboundRejectResponse"
Value: "MessageInterceptorOutboundRejectResponse"
type
string (EMessageInterceptorOutboundResponseType)
Enum: "APPROVE" "REJECT"
enum-descriptions: ["APPROVE","REJECT"]
reason
string

Mandatory field. Holds the message displayed to the sender of the rejected message

severity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

{
  • "$_type": "MessageInterceptorOutboundRejectResponse",
  • "type": "APPROVE",
  • "reason": "string",
  • "severity": "HIGH"
}

MessageInterceptorOutboundResponse

$_type
string
Default: "MessageInterceptorOutboundApproveResponse"
Value: "MessageInterceptorOutboundApproveResponse"
type
string (EMessageInterceptorOutboundResponseType)
enum-descriptions: ["APPROVE","REJECT"]
Example
{
  • "$_type": "MessageInterceptorOutboundApproveResponse",
  • "type": "APPROVE"
}

MessageInterceptorQuery

$_type
string
Default: "MessageInterceptorQuery"
Value: "MessageInterceptorQuery"
Array of any (MessageInterceptorSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (MessageInterceptorOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "MessageInterceptorQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

MessageInterceptorResult

$_type
string
Default: "MessageInterceptorResult"
Value: "MessageInterceptorResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of any (MessageInterceptorData) [ items ]

The returned list of entities

{
  • "$_type": "MessageInterceptorResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

MessageInterceptorSearchFilter

$_type
string
Default: "CreationTimestampMessageInterceptorSearchFilter"
Value: "CreationTimestampMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampMessageInterceptorSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

MessageRejectedEvent

$_type
string
Default: "MessageRejectedEvent"
Value: "MessageRejectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

severity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

reason
string

The reason the message was rejected.

Should be localized in the the language of the conversation the message belongs to.

{
  • "$_type": "MessageRejectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "message": {
    },
  • "severity": "HIGH",
  • "reason": "string"
}

MissedCallPushNotificationEvent

$_type
string
Default: "MissedCallPushNotificationEvent"
Value: "MissedCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

callStartTimestamp
integer <int64>

Timestamp when the call started

callerName
string

Name of the person calling

callerPersonId
string

Person ID of the person calling

callEndReason
string (ECallParticipationEndReason)
Enum: "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "MISSED_BECAUSE_UNAVAILABLE" "TERMINATED_BY_PARTICIPANT" "TERMINATED_BY_SYSTEM_ABORT"
enum-descriptions: ["MISSED_BECAUSE_TIMEOUT: The participation was ended because of a timeout on the participant's side.","MISSED_BECAUSE_TERMINATED: The participation ended because the initiator terminated the call before the other participant answered it","MISSED_BECAUSE_UNAVAILABLE: The participation ended because nobody was available to answer the call","TERMINATED_BY_PARTICIPANT: The participation ended normally","TERMINATED_BY_SYSTEM_ABORT: The participation ended because the system aborted the call"]

Determines the reason why the participation on a call ended.

{
  • "$_type": "MissedCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE",
  • "callType": "AUDIO",
  • "callStartTimestamp": 0,
  • "callerName": "string",
  • "callerPersonId": "string",
  • "callEndReason": "MISSED_BECAUSE_TIMEOUT"
}

ModificationTimestampAccountSearchFilter

$_type
string
Default: "ModificationTimestampAccountSearchFilter"
Value: "ModificationTimestampAccountSearchFilter"
field
string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampAccountSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampApiKeySearchFilter

$_type
string
Default: "ModificationTimestampApiKeySearchFilter"
Value: "ModificationTimestampApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampCannedResponseSearchFilter

$_type
string
Default: "ModificationTimestampCannedResponseSearchFilter"
Value: "ModificationTimestampCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

ModificationTimestampConversationTemplateSearchFilter

$_type
string
Default: "ModificationTimestampConversationTemplateSearchFilter"
Value: "ModificationTimestampConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ModificationTimestampCustomExternalMessengerChannelSearchFilter"
Value: "ModificationTimestampCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampDeputyRelationshipSearchFilter

$_type
string
Default: "ModificationTimestampDeputyRelationshipSearchFilter"
Value: "ModificationTimestampDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

ModificationTimestampDialogBotSearchFilter

$_type
string
Default: "ModificationTimestampDialogBotSearchFilter"
Value: "ModificationTimestampDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampDomainSearchFilter

$_type
string
Default: "ModificationTimestampDomainSearchFilter"
Value: "ModificationTimestampDomainSearchFilter"
field
string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampDomainSearchFilter",
  • "field": "DOMAIN_NAME",
  • "operator": {
    }
}

ModificationTimestampExternalMessengerChannelSearchFilter

$_type
string
Default: "ModificationTimestampExternalMessengerChannelSearchFilter"
Value: "ModificationTimestampExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampExternalMessengerContactSearchFilter

$_type
string
Default: "ModificationTimestampExternalMessengerContactSearchFilter"
Value: "ModificationTimestampExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

ModificationTimestampFileUploadInterceptorSearchFilter

$_type
string
Default: "ModificationTimestampFileUploadInterceptorSearchFilter"
Value: "ModificationTimestampFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampFileUploadInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampMessageInterceptorSearchFilter

$_type
string
Default: "ModificationTimestampMessageInterceptorSearchFilter"
Value: "ModificationTimestampMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampMessageInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampNamedAreaSearchFilter

$_type
string
Default: "ModificationTimestampNamedAreaSearchFilter"
Value: "ModificationTimestampNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "ModificationTimestampSmsExternalMessengerChannelSearchFilter"
Value: "ModificationTimestampSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampSuggestionSourceSearchFilter

$_type
string
Default: "ModificationTimestampSuggestionSourceSearchFilter"
Value: "ModificationTimestampSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampSuggestionSourceSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampTeamSearchFilter

$_type
string
Default: "ModificationTimestampTeamSearchFilter"
Value: "ModificationTimestampTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampUserSearchFilter

$_type
string
Default: "ModificationTimestampUserSearchFilter"
Value: "ModificationTimestampUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

ModificationTimestampWebhookRegistrationSearchFilter

$_type
string
Default: "ModificationTimestampWebhookRegistrationSearchFilter"
Value: "ModificationTimestampWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

MultichoiceQuestionMessageData

$_type
string
Default: "MultichoiceQuestionMessageData"
Value: "MultichoiceQuestionMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

{
  • "$_type": "MultichoiceQuestionMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING"
}

MultichoiceQuestionOption

$_type
string
Default: "MultichoiceQuestionOption"
Value: "MultichoiceQuestionOption"
label
string

Visual representation of the option

value
string

Value of the option, which is used in a ReplyMessageData

primary
boolean

Defines if the option is a primary or only a secondary choice.

{
  • "$_type": "MultichoiceQuestionOption",
  • "label": "string",
  • "value": "string",
  • "primary": true
}

MultichoiceQuestionPostMessageData

$_type
string
Default: "MultichoiceQuestionPostMessageData"
Value: "MultichoiceQuestionPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Question message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyPostMessageData

{
  • "$_type": "MultichoiceQuestionPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ]
}

NameAccountSearchFilter

$_type
string
Default: "NameAccountSearchFilter"
Value: "NameAccountSearchFilter"
field
string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameAccountSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameApiKeySearchFilter

$_type
string
Default: "NameApiKeySearchFilter"
Value: "NameApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameConversationTemplateSearchFilter

$_type
string
Default: "NameConversationTemplateSearchFilter"
Value: "NameConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "NameCustomExternalMessengerChannelSearchFilter"
Value: "NameCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (StringOperator)
{
  • "$_type": "NameCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameDialogBotSearchFilter

$_type
string
Default: "NameDialogBotSearchFilter"
Value: "NameDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameExternalMessengerChannelSearchFilter

$_type
string
Default: "NameExternalMessengerChannelSearchFilter"
Value: "NameExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (StringOperator)
{
  • "$_type": "NameExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameExternalMessengerContactSearchFilter

$_type
string
Default: "NameExternalMessengerContactSearchFilter"
Value: "NameExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

NameFileUploadInterceptorSearchFilter

$_type
string
Default: "NameFileUploadInterceptorSearchFilter"
Value: "NameFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (StringOperator)
{
  • "$_type": "NameFileUploadInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameMessageInterceptorSearchFilter

$_type
string
Default: "NameMessageInterceptorSearchFilter"
Value: "NameMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameMessageInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameNamedAreaSearchFilter

$_type
string
Default: "NameNamedAreaSearchFilter"
Value: "NameNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NamePersonLabelSearchFilter

$_type
string
Default: "NamePersonLabelSearchFilter"
Value: "NamePersonLabelSearchFilter"
field
string (EPersonLabelSearchFilterField)
Value: "NAME"
enum-descriptions: ["NAME: Filter by the 'name' attribute"]
any (StringOperator)
{
  • "$_type": "NamePersonLabelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NamePersonVisibilityRuleSearchFilter

$_type
string
Default: "NamePersonVisibilityRuleSearchFilter"
Value: "NamePersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (StringOperator)
{
  • "$_type": "NamePersonVisibilityRuleSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "NameSmsExternalMessengerChannelSearchFilter"
Value: "NameSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
{
  • "$_type": "NameSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameSuggestionSourceSearchFilter

$_type
string
Default: "NameSuggestionSourceSearchFilter"
Value: "NameSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (StringOperator)
{
  • "$_type": "NameSuggestionSourceSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameTeamSearchFilter

$_type
string
Default: "NameTeamSearchFilter"
Value: "NameTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameWebhookRegistrationSearchFilter

$_type
string
Default: "NameWebhookRegistrationSearchFilter"
Value: "NameWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NamedArea

$_type
string
Default: "NamedArea"
Value: "NamedArea"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the named area. Maximum of 250 characters. Can not be omitted.

description
string

Description of the named area. Maximum of 500 characters. Can be omitted.

type
string (ENamedAreaType)
Enum: "META_TAG" "DOMAIN"
enum-descriptions: ["META_TAG: A meta tag","DOMAIN: a (sub)domain"]

Type of a named area

siteId
string

Meta tag name if the type is META_TAG or domain name if the type is DOMAIN. If the type is META_TAG, it can be omitted during creation and a random ID will generated for it. Modification of this attribute is not allowed. Maximum of 250 characters.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "NamedArea",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "description": "string",
  • "type": "META_TAG",
  • "siteId": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

NamedAreaData

$_type
string
Default: "NamedAreaData"
Value: "NamedAreaData"
id
string

Unique id of the named area.

accountId
string

Account id to which a named area belongs to.

displayName
string

Display-Name of the named area

object

Localized Display-Name of the named area

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the named area: id that can be expanded.

{
  • "$_type": "NamedAreaData",
  • "id": "string",
  • "accountId": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string"
}

NamedAreaList

$_type
string
Default: "NamedAreaList"
Value: "NamedAreaList"
Array of objects (NamedArea) [ items ]

The list of mapped entities

{
  • "$_type": "NamedAreaList",
  • "items": [
    ]
}

NamedAreaModificationEvent

$_type
string
Default: "NamedAreaModificationEvent"
Value: "NamedAreaModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (NamedArea)

Model of named areas. They can either be domains or meta tags

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "NamedAreaModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

NamedAreaOrderBy

$_type
string
Default: "NamedAreaOrderBy"
Value: "NamedAreaOrderBy"
field
string (ENamedAreaOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","SITE_ID: Sort by the 'siteId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "NamedAreaOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

NamedAreaQuery

$_type
string
Default: "NamedAreaQuery"
Value: "NamedAreaQuery"
Array of any (NamedAreaSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (NamedAreaOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "NamedAreaQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

NamedAreaResult

$_type
string
Default: "NamedAreaResult"
Value: "NamedAreaResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (NamedArea) [ items ]

The returned list of entities

{
  • "$_type": "NamedAreaResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

NamedAreaSearchFilter

$_type
string
Default: "CreationTimestampNamedAreaSearchFilter"
Value: "CreationTimestampNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampNamedAreaSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

NamedAreaTranslation

$_type
string
Default: "NamedAreaTranslation"
Value: "NamedAreaTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "NamedAreaTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

NewMessagePushNotificationEvent

$_type
string
Default: "NewMessagePushNotificationEvent"
Value: "NewMessagePushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

messageId
string

Id of the message

messageText
string

Text of the message

messageSendTimestamp
integer <int64>

Timestamp when the message was sent

messageServerTimestamp
integer <int64>

Timestamp when the message was received by the server.

senderName
string

Name of the sender, can be null if the message was sent by the system.

senderPersonId
string

Person id of the sender, can be null if the message was sent by the system.

notificationCount
integer <int32>

Number of notifications (i.e. unread messages) in this conversation

recipientNotificationCount
integer <int32>

Number of notifications (i.e. unread messages) the recipient person has in total

{
  • "$_type": "NewMessagePushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "messageId": "string",
  • "messageText": "string",
  • "messageSendTimestamp": 0,
  • "messageServerTimestamp": 0,
  • "senderName": "string",
  • "senderPersonId": "string",
  • "notificationCount": 0,
  • "recipientNotificationCount": 0
}

NicknamePersonSearchFilter

$_type
string
Default: "NicknamePersonSearchFilter"
Value: "NicknamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "NicknamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

NicknamePersonTypedSearchFilter

$_type
string
Default: "NicknamePersonTypedSearchFilter"
Value: "NicknamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "NicknamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

NotEqualsAuditChangeInteractionTypeOperator

$_type
string
Default: "NotEqualsAuditChangeInteractionTypeOperator"
Value: "NotEqualsAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
{
  • "$_type": "NotEqualsAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "value": "API"
}

NotEqualsAuditChangeTypeOperator

$_type
string
Default: "NotEqualsAuditChangeTypeOperator"
Value: "NotEqualsAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
{
  • "$_type": "NotEqualsAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "value": "CREATE"
}

NotEqualsAuthorizationRoleOperator

$_type
string
Default: "NotEqualsAuthorizationRoleOperator"
Value: "NotEqualsAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

{
  • "$_type": "NotEqualsAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "value": "SUPER_ADMIN"
}

NotEqualsAwaitedPersonTypeOperator

$_type
string
Default: "NotEqualsAwaitedPersonTypeOperator"
Value: "NotEqualsAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

{
  • "$_type": "NotEqualsAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

NotEqualsBooleanOperator

$_type
string
Default: "NotEqualsBooleanOperator"
Value: "NotEqualsBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
value
boolean
{
  • "$_type": "NotEqualsBooleanOperator",
  • "type": "EQUALS",
  • "value": true
}

NotEqualsCallServiceProviderOperator

$_type
string
Default: "NotEqualsCallServiceProviderOperator"
Value: "NotEqualsCallServiceProviderOperator"
type
string (ECallServiceProviderOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
{
  • "$_type": "NotEqualsCallServiceProviderOperator",
  • "type": "EQUALS",
  • "value": "ACS"
}

NotEqualsContactIdentifierFieldTypeOperator

$_type
string
Default: "NotEqualsContactIdentifierFieldTypeOperator"
Value: "NotEqualsContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

{
  • "$_type": "NotEqualsContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "value": "EMAIL"
}

NotEqualsConversationEndReasonOperator

$_type
string
Default: "NotEqualsConversationEndReasonOperator"
Value: "NotEqualsConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

{
  • "$_type": "NotEqualsConversationEndReasonOperator",
  • "type": "EQUALS",
  • "value": "ENDED_BY_PARTICIPANT"
}

NotEqualsConversationRecipientTypeOperator

$_type
string
Default: "NotEqualsConversationRecipientTypeOperator"
Value: "NotEqualsConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

{
  • "$_type": "NotEqualsConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

NotEqualsConversationStateOperator

$_type
string
Default: "NotEqualsConversationStateOperator"
Value: "NotEqualsConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

{
  • "$_type": "NotEqualsConversationStateOperator",
  • "type": "EQUALS",
  • "value": "CREATED"
}

NotEqualsConversationVisibilityOperator

$_type
string
Default: "NotEqualsConversationVisibilityOperator"
Value: "NotEqualsConversationVisibilityOperator"
type
string (EConversationVisibilityOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

{
  • "$_type": "NotEqualsConversationVisibilityOperator",
  • "type": "EQUALS",
  • "value": "PRIVATE"
}

NotEqualsDeputyDelegationEscalationLevelOperator

$_type
string
Default: "NotEqualsDeputyDelegationEscalationLevelOperator"
Value: "NotEqualsDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

{
  • "$_type": "NotEqualsDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "value": "LEVEL_1"
}

NotEqualsDeputyTypeOperator

$_type
string
Default: "NotEqualsDeputyTypeOperator"
Value: "NotEqualsDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
{
  • "$_type": "NotEqualsDeputyTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

NotEqualsExternalMessengerChannelTypeOperator

$_type
string
Default: "NotEqualsExternalMessengerChannelTypeOperator"
Value: "NotEqualsExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

{
  • "$_type": "NotEqualsExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "value": "CUSTOM"
}

NotEqualsIdOperator

$_type
string
Default: "NotEqualsIdOperator"
Value: "NotEqualsIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
{
  • "$_type": "NotEqualsIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

NotEqualsImpersonationTypeOperator

$_type
string
Default: "NotEqualsImpersonationTypeOperator"
Value: "NotEqualsImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

{
  • "$_type": "NotEqualsImpersonationTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

NotEqualsInitialEngagementTypeOperator

$_type
string
Default: "NotEqualsInitialEngagementTypeOperator"
Value: "NotEqualsInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

{
  • "$_type": "NotEqualsInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "value": "CHAT_REQUEST"
}

NotEqualsInvitationCreatorTypeOperator

$_type
string
Default: "NotEqualsInvitationCreatorTypeOperator"
Value: "NotEqualsInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

{
  • "$_type": "NotEqualsInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "value": "WEB_API"
}

NotEqualsInvitationStateOperator

$_type
string
Default: "NotEqualsInvitationStateOperator"
Value: "NotEqualsInvitationStateOperator"
type
string (EInvitationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

{
  • "$_type": "NotEqualsInvitationStateOperator",
  • "type": "EQUALS",
  • "value": "OPEN"
}

NotEqualsInvitationTargetTypeOperator

$_type
string
Default: "NotEqualsInvitationTargetTypeOperator"
Value: "NotEqualsInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
{
  • "$_type": "NotEqualsInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "value": "ANONYMOUS"
}

NotEqualsInvitationTypeOperator

$_type
string
Default: "NotEqualsInvitationTypeOperator"
Value: "NotEqualsInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
{
  • "$_type": "NotEqualsInvitationTypeOperator",
  • "type": "EQUALS",
  • "value": "ASSIGNMENT_REQUEST"
}

NotEqualsPauseNotificationsModeOperator

$_type
string
Default: "NotEqualsPauseNotificationsModeOperator"
Value: "NotEqualsPauseNotificationsModeOperator"
type
string (EPauseNotificationsModeOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

{
  • "$_type": "NotEqualsPauseNotificationsModeOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

NotEqualsPauseNotificationsStateOperator

$_type
string
Default: "NotEqualsPauseNotificationsStateOperator"
Value: "NotEqualsPauseNotificationsStateOperator"
type
string (EPauseNotificationsStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

{
  • "$_type": "NotEqualsPauseNotificationsStateOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

NotEqualsPersonSourceOperator

$_type
string
Default: "NotEqualsPersonSourceOperator"
Value: "NotEqualsPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

{
  • "$_type": "NotEqualsPersonSourceOperator",
  • "type": "EQUALS",
  • "value": "USER_DB"
}

NotEqualsPersonTypeOperator

$_type
string
Default: "NotEqualsPersonTypeOperator"
Value: "NotEqualsPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

{
  • "$_type": "NotEqualsPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

NotEqualsPropertyOwnerTypeOperator

$_type
string
Default: "NotEqualsPropertyOwnerTypeOperator"
Value: "NotEqualsPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
value
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

{
  • "$_type": "NotEqualsPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "value": "GLOBAL"
}

NotEqualsStringOperator

$_type
string
Default: "NotEqualsStringOperator"
Value: "NotEqualsStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string
{
  • "$_type": "NotEqualsStringOperator",
  • "type": "EQUALS",
  • "value": "string"
}

NotEqualsTimestampOperator

$_type
string
Default: "NotEqualsTimestampOperator"
Value: "NotEqualsTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "NotEqualsTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

NotEqualsVisibilityRuleLabelSelectionOperator

$_type
string
Default: "NotEqualsVisibilityRuleLabelSelectionOperator"
Value: "NotEqualsVisibilityRuleLabelSelectionOperator"
type
string (EVisibilityRuleLabelSelectionOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
{
  • "$_type": "NotEqualsVisibilityRuleLabelSelectionOperator",
  • "type": "EQUALS",
  • "value": "ALL"
}

NotInAuditChangeInteractionTypeOperator

$_type
string
Default: "NotInAuditChangeInteractionTypeOperator"
Value: "NotInAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditInteractionType)
Items Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
{
  • "$_type": "NotInAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInAuditChangeTypeOperator

$_type
string
Default: "NotInAuditChangeTypeOperator"
Value: "NotInAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditChangeType)
Items Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
{
  • "$_type": "NotInAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInAuthorizationRoleOperator

$_type
string
Default: "NotInAuthorizationRoleOperator"
Value: "NotInAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAuthorizationRole)
Items Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
{
  • "$_type": "NotInAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInAwaitedPersonTypeOperator

$_type
string
Default: "NotInAwaitedPersonTypeOperator"
Value: "NotInAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAwaitedPersonType)
Items Enum: "NONE" "VISITOR" "AGENT"
{
  • "$_type": "NotInAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInContactIdentifierFieldTypeOperator

$_type
string
Default: "NotInContactIdentifierFieldTypeOperator"
Value: "NotInContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EContactIdentifierFieldType)
Items Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
{
  • "$_type": "NotInContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInConversationEndReasonOperator

$_type
string
Default: "NotInConversationEndReasonOperator"
Value: "NotInConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationEndReason)
Items Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
{
  • "$_type": "NotInConversationEndReasonOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInConversationRecipientTypeOperator

$_type
string
Default: "NotInConversationRecipientTypeOperator"
Value: "NotInConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationRecipientType)
Items Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "NotInConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInConversationStateOperator

$_type
string
Default: "NotInConversationStateOperator"
Value: "NotInConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
{
  • "$_type": "NotInConversationStateOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInDeputyDelegationEscalationLevelOperator

$_type
string
Default: "NotInDeputyDelegationEscalationLevelOperator"
Value: "NotInDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyDelegationEscalationLevel)
Items Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
{
  • "$_type": "NotInDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInDeputyTypeOperator

$_type
string
Default: "NotInDeputyTypeOperator"
Value: "NotInDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyType)
Items Enum: "AGENT" "TEAM"
{
  • "$_type": "NotInDeputyTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInExternalMessengerChannelTypeOperator

$_type
string
Default: "NotInExternalMessengerChannelTypeOperator"
Value: "NotInExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EExternalMessengerChannelType)
Items Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
{
  • "$_type": "NotInExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInIdOperator

$_type
string
Default: "NotInIdOperator"
Value: "NotInIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

values
Array of strings
{
  • "$_type": "NotInIdOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInImpersonationTypeOperator

$_type
string
Default: "NotInImpersonationTypeOperator"
Value: "NotInImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EImpersonationType)
Items Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
{
  • "$_type": "NotInImpersonationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInitialEngagementTypeOperator

$_type
string
Default: "NotInInitialEngagementTypeOperator"
Value: "NotInInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInitialEngagementType)
Items Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
{
  • "$_type": "NotInInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInvitationCreatorTypeOperator

$_type
string
Default: "NotInInvitationCreatorTypeOperator"
Value: "NotInInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationCreatorType)
Items Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
{
  • "$_type": "NotInInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInvitationTargetTypeOperator

$_type
string
Default: "NotInInvitationTargetTypeOperator"
Value: "NotInInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationTargetType)
Items Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "NotInInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInvitationTypeOperator

$_type
string
Default: "NotInInvitationTypeOperator"
Value: "NotInInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationType)
Items Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
{
  • "$_type": "NotInInvitationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInPersonSourceOperator

$_type
string
Default: "NotInPersonSourceOperator"
Value: "NotInPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonSource)
Items Enum: "USER_DB" "VIRTUAL"
{
  • "$_type": "NotInPersonSourceOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInPersonTypeOperator

$_type
string
Default: "NotInPersonTypeOperator"
Value: "NotInPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonType)
Items Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
{
  • "$_type": "NotInPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInPropertyOwnerTypeOperator

$_type
string
Default: "NotInPropertyOwnerTypeOperator"
Value: "NotInPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
values
Array of strings (EPropertyOwnerType)
Items Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
{
  • "$_type": "NotInPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInRangeTimestampOperator

$_type
string
Default: "NotInRangeTimestampOperator"
Value: "NotInRangeTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
minimum
integer <int64>
maximum
integer <int64>
{
  • "$_type": "NotInRangeTimestampOperator",
  • "type": "EQUALS",
  • "minimum": 0,
  • "maximum": 0
}

NotInStringOperator

$_type
string
Default: "NotInStringOperator"
Value: "NotInStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
values
Array of strings
{
  • "$_type": "NotInStringOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInTimestampOperator

$_type
string
Default: "NotInTimestampOperator"
Value: "NotInTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
values
Array of integers <int64> [ items <int64 > ]
{
  • "$_type": "NotInTimestampOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotificationCountData

$_type
string
Default: "NotificationCountData"
Value: "NotificationCountData"
personId
string

The ID of the person this notification count belongs to

totalNotificationCount
integer <int32>

The sum of all a person's notifications across all their conversations

{
  • "$_type": "NotificationCountData",
  • "personId": "string",
  • "totalNotificationCount": 0
}

OnlineStateAgentStateSearchFilter

$_type
string
Default: "OnlineStateAgentStateSearchFilter"
Value: "OnlineStateAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (OnlineStateOperator)
{
  • "$_type": "OnlineStateAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

OnlineStateOperator

$_type
string
Default: "EqualsOnlineStateOperator"
Value: "EqualsOnlineStateOperator"
type
string (EOnlineStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator"]
value
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

{
  • "$_type": "EqualsOnlineStateOperator",
  • "type": "EQUALS",
  • "value": "ONLINE"
}

OnlineStateVisitorStateSearchFilter

$_type
string
Default: "OnlineStateVisitorStateSearchFilter"
Value: "OnlineStateVisitorStateSearchFilter"
field
string (EVisitorStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
any (OnlineStateOperator)
{
  • "$_type": "OnlineStateVisitorStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

OrCompoundOperator

$_type
string
Default: "OrCompoundOperator"
Value: "OrCompoundOperator"
type
string (ECompoundOperatorType)
Enum: "AND" "OR"
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
{
  • "$_type": "OrCompoundOperator",
  • "type": "AND"
}

Order

string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
"ASCENDING"

OwnerIdAuditChangeSearchFilter

$_type
string
Default: "OwnerIdAuditChangeSearchFilter"
Value: "OwnerIdAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "OwnerIdAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

OwnerIdCannedResponseSearchFilter

$_type
string
Default: "OwnerIdCannedResponseSearchFilter"
Value: "OwnerIdCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "OwnerIdCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

OwnerTypeAuditChangeSearchFilter

$_type
string
Default: "OwnerTypeAuditChangeSearchFilter"
Value: "OwnerTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (PropertyOwnerTypeOperator)
{
  • "$_type": "OwnerTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

OwnerTypeCannedResponseSearchFilter

$_type
string
Default: "OwnerTypeCannedResponseSearchFilter"
Value: "OwnerTypeCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (PropertyOwnerTypeOperator)
{
  • "$_type": "OwnerTypeCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

ParentIdTeamSearchFilter

$_type
string
Default: "ParentIdTeamSearchFilter"
Value: "ParentIdTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ParentIdTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ParticipantData

$_type
string
Default: "ParticipantData"
Value: "ParticipantData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

personId
string

Id of the participant person

hidden
boolean

Indicates if the participant is hidden

conversationStarred
boolean

Indicates whether this conversation is starred for the participant or not

participationType
string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ParticipantData",
  • "state": "CREATED",
  • "personId": "string",
  • "hidden": true,
  • "conversationStarred": true,
  • "participationType": "ASSIGNED_AGENT"
}

ParticipantExternalMessengerContactIdConversationHistorySearchFilter

$_type
string
Default: "ParticipantExternalMessengerContactIdConversationHistorySearchFilter"
Value: "ParticipantExternalMessengerContactIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantExternalMessengerContactIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ParticipantExternalMessengerContactIdConversationSearchFilter

$_type
string
Default: "ParticipantExternalMessengerContactIdConversationSearchFilter"
Value: "ParticipantExternalMessengerContactIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantExternalMessengerContactIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ParticipantHistoryData

$_type
string
Default: "ParticipantHistoryData"
Value: "ParticipantHistoryData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the person participation was created (timestamp when the state was set to EConversationParticipationState.CREATED)

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person joined (timestamp when the state was set to EConversationParticipationState.ONBOARDING)

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated, may be null (timestamp when the state was set to EConversationParticipationState.ACTIVE)

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when the person started offboarding, may be null (timestamp when the state was set toEConversationParticipationState.OFFBOARDING)

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person left, may be null (timestamp when the state was set to EConversationParticipationState.ENDED)

leftReason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

leftComment
string

The comment on why the participant left the conversation. If provided, this attribute is set when offboarding starts and is null if the participant is still part of the conversation.

conversationRating
number <float>

Participant's rating of the conversation (between 0 and 1)

hidden
boolean

Indicates if the participant is hidden in the current conversation.

conversationStarred
boolean

Indicates whether this conversation is starred for the participant or not

participationType
string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "ParticipantHistoryData",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "joinedTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "FORWARDED",
  • "leftComment": "string",
  • "conversationRating": 0,
  • "hidden": true,
  • "conversationStarred": true,
  • "participationType": "ASSIGNED_AGENT",
  • "person": {
    }
}

ParticipantPersonIdConversationHistorySearchFilter

$_type
string
Default: "ParticipantPersonIdConversationHistorySearchFilter"
Value: "ParticipantPersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantPersonIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ParticipantPersonIdConversationSearchFilter

$_type
string
Default: "ParticipantPersonIdConversationSearchFilter"
Value: "ParticipantPersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantPersonIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ParticipationActivatedEvent

$_type
string
Default: "ParticipationActivatedEvent"
Value: "ParticipationActivatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationActivatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationConversationRatedEvent

$_type
string
Default: "ParticipationConversationRatedEvent"
Value: "ParticipationConversationRatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationConversationRatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationCreatedEvent

$_type
string
Default: "ParticipationCreatedEvent"
Value: "ParticipationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationHiddenEvent

$_type
string
Default: "ParticipationHiddenEvent"
Value: "ParticipationHiddenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationHiddenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationLeftEvent

$_type
string
Default: "ParticipationLeftEvent"
Value: "ParticipationLeftEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationLeftEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationOffboardingEvent

$_type
string
Default: "ParticipationOffboardingEvent"
Value: "ParticipationOffboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationOffboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationOnboardingEvent

$_type
string
Default: "ParticipationOnboardingEvent"
Value: "ParticipationOnboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationOnboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationUnhiddenEvent

$_type
string
Default: "ParticipationUnhiddenEvent"
Value: "ParticipationUnhiddenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationUnhiddenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationUpdatedEvent

$_type
string
Default: "ParticipationUpdatedEvent"
Value: "ParticipationUpdatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationUpdatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

PauseNotificationsEndTimestampAgentStateSearchFilter

$_type
string
Default: "PauseNotificationsEndTimestampAgentStateSearchFilter"
Value: "PauseNotificationsEndTimestampAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (TimestampOperator)
{
  • "$_type": "PauseNotificationsEndTimestampAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PauseNotificationsModeAgentStateSearchFilter

$_type
string
Default: "PauseNotificationsModeAgentStateSearchFilter"
Value: "PauseNotificationsModeAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (PauseNotificationsModeOperator)
{
  • "$_type": "PauseNotificationsModeAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PauseNotificationsModeOperator

$_type
string
Default: "EqualsPauseNotificationsModeOperator"
Value: "EqualsPauseNotificationsModeOperator"
type
string (EPauseNotificationsModeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

Example
{
  • "$_type": "EqualsPauseNotificationsModeOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

PauseNotificationsStateAgentStateSearchFilter

$_type
string
Default: "PauseNotificationsStateAgentStateSearchFilter"
Value: "PauseNotificationsStateAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (PauseNotificationsStateOperator)
{
  • "$_type": "PauseNotificationsStateAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PauseNotificationsStateOperator

$_type
string
Default: "EqualsPauseNotificationsStateOperator"
Value: "EqualsPauseNotificationsStateOperator"
type
string (EPauseNotificationsStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

Example
{
  • "$_type": "EqualsPauseNotificationsStateOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

PersonCompoundSearchFilter

$_type
string
Default: "PersonCompoundSearchFilter"
Value: "PersonCompoundSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (CompoundOperator)
Array of any (PersonSearchFilter) [ items ]

List of filters to be linked with either AND or OR

{
  • "$_type": "PersonCompoundSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    },
  • "searchFilters": [
    ]
}

PersonData

$_type
string
Default: "PersonData"
Value: "PersonData"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

PersonIdAgentStateSearchFilter

$_type
string
Default: "PersonIdAgentStateSearchFilter"
Value: "PersonIdAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PersonIdCannedResponseUsageSearchFilter

$_type
string
Default: "PersonIdCannedResponseUsageSearchFilter"
Value: "PersonIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PersonIdExternalMessengerContactSearchFilter

$_type
string
Default: "PersonIdExternalMessengerContactSearchFilter"
Value: "PersonIdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

PersonIdPersonPresenceSearchFilter

$_type
string
Default: "PersonIdPersonPresenceSearchFilter"
Value: "PersonIdPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

PersonIdVisitorStateSearchFilter

$_type
string
Default: "PersonIdVisitorStateSearchFilter"
Value: "PersonIdVisitorStateSearchFilter"
field
string (EVisitorStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdVisitorStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PersonLabel

$_type
string
Default: "PersonLabel"
Value: "PersonLabel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the person label. Maximum length of 250 characters. Mandatory.
If the label is a scoped label, the name consists of the scope name and the value of this particular label, separated by "::", for example "upsell potential::high".

description
string

Description of the person label. Maximum length of 500 characters. Can be omitted.

color
string

Color of the person label, specified in a format compatible with CSS. Maximum length of 50 characters. Mandatory.

settableOn
Array of strings (EPersonLabelTargetType)
Items Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"

The person types the label may be set on

readableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can read the label on a person via API. If this is not set only admins are able to read this label.

settableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can set the label on a person. If this is not set only admins are able to set this label.

displayedToRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles for which the label is displayed to in the UIs. If this is not set only admins are able to see this label in the UI.

{
  • "$_type": "PersonLabel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "color": "string",
  • "settableOn": [
    ],
  • "readableByRoles": [
    ],
  • "settableByRoles": [
    ],
  • "displayedToRoles": [
    ]
}

PersonLabelList

$_type
string
Default: "PersonLabelList"
Value: "PersonLabelList"
Array of objects (PersonLabel) [ items ]

The list of mapped entities

{
  • "$_type": "PersonLabelList",
  • "items": [
    ]
}

PersonLabelModificationEvent

$_type
string
Default: "PersonLabelModificationEvent"
Value: "PersonLabelModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonLabel)

Model of a person label.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonLabelModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

PersonLabelNamePersonSearchFilter

$_type
string
Default: "PersonLabelNamePersonSearchFilter"
Value: "PersonLabelNamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
object (HavingPersonLabelNameOperator)
{
  • "$_type": "PersonLabelNamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PersonLabelNamePersonTypedSearchFilter

$_type
string
Default: "PersonLabelNamePersonTypedSearchFilter"
Value: "PersonLabelNamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
object (HavingPersonLabelNameOperator)
{
  • "$_type": "PersonLabelNamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

PersonLabelOrderBy

$_type
string
Default: "PersonLabelOrderBy"
Value: "PersonLabelOrderBy"
field
string (EPersonLabelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonLabelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonLabelQuery

$_type
string
Default: "PersonLabelQuery"
Value: "PersonLabelQuery"
Array of any (PersonLabelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonLabelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonLabelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonLabelResult

$_type
string
Default: "PersonLabelResult"
Value: "PersonLabelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonLabel) [ items ]

The returned list of entities

{
  • "$_type": "PersonLabelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonLabelSearchFilter

$_type
string
Default: "NamePersonLabelSearchFilter"
Value: "NamePersonLabelSearchFilter"
field
string (EPersonLabelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute"]
any (StringOperator)
{
  • "$_type": "NamePersonLabelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

PersonLabelsGetByScopeBody

scope
string

The scope to search for labels in

{
  • "scope": "string"
}

PersonModificationEvent

$_type
string
Default: "PersonModificationEvent"
Value: "PersonModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

PersonOrderBy

$_type
string
Default: "PersonOrderBy"
Value: "PersonOrderBy"
field
string (EPersonOrderByField)
Enum: "ID" "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_SOURCE: Sort by the 'personSource' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","SOURCE_DATA: Sort by the 'sourceData' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","PERSON_TYPE: Sort by the 'personType' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonPresenceData

$_type
string
Default: "PersonPresenceData"
Value: "PersonPresenceData"
id
string

Unique id of the entity. When creating an entity this property can be omitted as it will be generated by the server anyway.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is stored the first time in the system. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

Account id to which an entity belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person has joined

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person has left (may not be present or -1 if still online)

personId
string

Person id to which an entity belongs to

object (DeviceInfo)

Model of a device (os, browser, etc) This is the representation of a physical device which may browsers (desktop and mobile) if accessed via the website or actual devices if accessed via the unblu MobileSDK

impersonationType
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

impersonatedFromUserId
string
impersonatedFromAccountId
string
additionalInfo
string
authInfo
string
propagated
boolean
{
  • "$_type": "PersonPresenceData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "joinedTimestamp": 0,
  • "leftTimestamp": 0,
  • "personId": "string",
  • "deviceInfo": {
    },
  • "impersonationType": "NONE",
  • "impersonatedFromUserId": "string",
  • "impersonatedFromAccountId": "string",
  • "additionalInfo": "string",
  • "authInfo": "string",
  • "propagated": true
}

PersonPresenceOrderBy

$_type
string
Default: "PersonPresenceOrderBy"
Value: "PersonPresenceOrderBy"
field
string (EPersonPresenceOrderByField)
Enum: "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonPresenceOrderBy",
  • "field": "CREATION_TIMESTAMP",
  • "order": "ASCENDING"
}

PersonPresenceQuery

$_type
string
Default: "PersonPresenceQuery"
Value: "PersonPresenceQuery"
Array of any (PersonPresenceSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonPresenceOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonPresenceQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonPresenceResult

$_type
string
Default: "PersonPresenceResult"
Value: "PersonPresenceResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonPresenceData) [ items ]

The returned list of entities

{
  • "$_type": "PersonPresenceResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonPresenceSearchFilter

$_type
string
Default: "JoinedTimestampPersonPresenceSearchFilter"
Value: "JoinedTimestampPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "JoinedTimestampPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

PersonQuery

$_type
string
Default: "PersonQuery"
Value: "PersonQuery"
Array of any (PersonSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonResult

$_type
string
Default: "PersonResult"
Value: "PersonResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonData) [ items ]

The returned list of entities

{
  • "$_type": "PersonResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonSearchFilter

$_type
string
Default: "AuthorizationRolePersonSearchFilter"
Value: "AuthorizationRolePersonSearchFilter"
field
string (EPersonSearchFilterField)
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
Example
{
  • "$_type": "AuthorizationRolePersonSearchFilter",
  • "field": "AUTHORIZATION_ROLE",
  • "operator": {
    }
}

PersonSourceOperator

$_type
string
Default: "EqualsPersonSourceOperator"
Value: "EqualsPersonSourceOperator"
type
string (EPersonSourceOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

Example
{
  • "$_type": "EqualsPersonSourceOperator",
  • "type": "EQUALS",
  • "value": "USER_DB"
}

PersonSourcePersonSearchFilter

$_type
string
Default: "PersonSourcePersonSearchFilter"
Value: "PersonSourcePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (PersonSourceOperator)
{
  • "$_type": "PersonSourcePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PersonStateData

$_type
string
Default: "AgentPersonStateData"
Value: "AgentPersonStateData"
personId
string

The ID of the person this state data belongs to

onlineState
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

type
string (EPersonStateType)
enum-descriptions: ["AGENT","VISITOR"]
statusMessage
string

The agent's status message. The message is displayed in the person's details in the UI.

pauseNotificationsMode
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

pauseNotificationsState
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

pauseNotificationsEndTimestamp
integer <int64>

The Unix timestamp (ms) when pausing notifications should end

Array of objects (AutoPauseNotificationsReasonData) [ items ]

A list of reasons based on which the agent's notifications should be auto-paused

Example
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

PersonTypeOperator

$_type
string
Default: "EqualsPersonTypeOperator"
Value: "EqualsPersonTypeOperator"
type
string (EPersonTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

Example
{
  • "$_type": "EqualsPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

PersonTypePersonSearchFilter

$_type
string
Default: "PersonTypePersonSearchFilter"
Value: "PersonTypePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (PersonTypeOperator)
{
  • "$_type": "PersonTypePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PersonTypedCompoundSearchFilter

$_type
string
Default: "PersonTypedCompoundSearchFilter"
Value: "PersonTypedCompoundSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (CompoundOperator)
Array of any (PersonTypedSearchFilter) [ items ]

List of filters to be linked with either AND or OR

{
  • "$_type": "PersonTypedCompoundSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    },
  • "searchFilters": [
    ]
}

PersonTypedOrderBy

$_type
string
Default: "PersonTypedOrderBy"
Value: "PersonTypedOrderBy"
field
string (EPersonTypedOrderByField)
Enum: "ID" "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonTypedOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonTypedQuery

$_type
string
Default: "PersonTypedQuery"
Value: "PersonTypedQuery"
Array of any (PersonTypedSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonTypedOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonTypedQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonTypedSearchFilter

$_type
string
Default: "AuthorizationRolePersonTypedSearchFilter"
Value: "AuthorizationRolePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
Example
{
  • "$_type": "AuthorizationRolePersonTypedSearchFilter",
  • "field": "AUTHORIZATION_ROLE",
  • "operator": {
    }
}

PersonVisibilityRuleData

$_type
string
Default: "PersonVisibilityRuleData"
Value: "PersonVisibilityRuleData"
id
string

The person's unique ID. When creating a person this property can be omitted, it's generated by the server.

accountId
string

ID of the Unblu account the person belongs to. When creating an entity this property can be omitted. Unblu automatically fills it with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Unique name of the visibility rule. Maximum length of 250 characters. Mandatory.

enabled
boolean

Flag indicating whether the rule is enabled or not. The default value is true.

description
string

Description of the visibility rule. Maximum length of 500 characters. Optional.

agentLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
agentLabelNames
Array of strings

A list of all the person labels an agent needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when agentLabelSelection = DEFINED_LIST.

visitorLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
visitorLabelNames
Array of strings

A list of all the person labels a visitor needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when visitorLabelSelection = DEFINED_LIST.

version
integer <int64>

Version of the entity. The version is incremented on each change. Entity updates that aren't based on the latest version are rejected. When creating an object, the version can be omitted.

{
  • "$_type": "PersonVisibilityRuleData",
  • "id": "string",
  • "accountId": "string",
  • "name": "string",
  • "enabled": true,
  • "description": "string",
  • "agentLabelSelection": "ALL",
  • "agentLabelNames": [
    ],
  • "visitorLabelSelection": "ALL",
  • "visitorLabelNames": [
    ],
  • "version": 0
}

PersonVisibilityRuleDataList

$_type
string
Default: "PersonVisibilityRuleDataList"
Value: "PersonVisibilityRuleDataList"
Array of objects (PersonVisibilityRuleData) [ items ]

The list of mapped entities

{
  • "$_type": "PersonVisibilityRuleDataList",
  • "items": [
    ]
}

PersonVisibilityRuleModificationEvent

$_type
string
Default: "PersonVisibilityRuleModificationEvent"
Value: "PersonVisibilityRuleModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonVisibilityRuleData)

Model of a person visibility rule.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonVisibilityRuleModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

PersonVisibilityRuleOrderBy

$_type
string
Default: "PersonVisibilityRuleOrderBy"
Value: "PersonVisibilityRuleOrderBy"
field
string (EPersonVisibilityRuleOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonVisibilityRuleOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonVisibilityRuleQuery

$_type
string
Default: "PersonVisibilityRuleQuery"
Value: "PersonVisibilityRuleQuery"
Array of any (PersonVisibilityRuleSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonVisibilityRuleOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonVisibilityRuleQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonVisibilityRuleResult

$_type
string
Default: "PersonVisibilityRuleResult"
Value: "PersonVisibilityRuleResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonVisibilityRuleData) [ items ]

The returned list of entities

{
  • "$_type": "PersonVisibilityRuleResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonVisibilityRuleSearchFilter

$_type
string
Default: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
Value: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (VisibilityRuleLabelSelectionOperator)
Example
{
  • "$_type": "AgentLabelSelectionPersonVisibilityRuleSearchFilter",
  • "field": "AGENT_LABEL_SELECTION",
  • "operator": {
    }
}

PersonVisibilityRulesGetByUsedLabelNameBody

labelName
string

The name of a person label to search for in the rule selection

{
  • "labelName": "string"
}

PersonsAddAutoPauseNotificationsReasonBody

sourceId
string

The source identifier of the auto-pause reason. This can be used later to remove or change the timeout for this reason.

displayName
string

The name of the auto-pause reason displayed in the UI

timeoutSeconds
integer <int32>

The duration, in seconds, for which notifications should be paused automatically

{
  • "sourceId": "string",
  • "displayName": "string",
  • "timeoutSeconds": 0
}

PersonsPauseNotificationsBody

timeoutSeconds
integer <int32>

The duration, in seconds, that notifications should be paused for

{
  • "timeoutSeconds": 0
}

PersonsRemoveAutoPauseNotificationsReasonBody

sourceId
string

The identifier of the auto-pause reason to remove

{
  • "sourceId": "string"
}

PersonsSetAwayBody

away
boolean

Boolean Whether to set the person's online state to AWAY (true) of ONLINE (false)

{
  • "away": true
}

PersonsSetStatusMessageBody

statusMessage
string

The status message to display in the person's details

{
  • "statusMessage": "string"
}

PhoneNumberSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "PhoneNumberSmsExternalMessengerChannelSearchFilter"
Value: "PhoneNumberSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
{
  • "$_type": "PhoneNumberSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

PhonePersonSearchFilter

$_type
string
Default: "PhonePersonSearchFilter"
Value: "PhonePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "PhonePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PhonePersonTypedSearchFilter

$_type
string
Default: "PhonePersonTypedSearchFilter"
Value: "PhonePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "PhonePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

PinCreatedEvent

$_type
string
Default: "PinCreatedEvent"
Value: "PinCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the pin event with the token.
Only one link may be used.

{
  • "$_type": "PinCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

PinRedeemedEvent

$_type
string
Default: "PinRedeemedEvent"
Value: "PinRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "PinRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "redeemingPerson": {
    }
}

PinRenewedEvent

$_type
string
Default: "PinRenewedEvent"
Value: "PinRenewedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "PinRenewedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

PinRevokedEvent

$_type
string
Default: "PinRevokedEvent"
Value: "PinRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

{
  • "$_type": "PinRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0
}

PingRequest

$_type
string
Default: "PingRequest"
Value: "PingRequest"
accountId
string
serviceName
string
pingId
string

A random ID that identifies this ping request. The response to the request must have the same ID.

{
  • "$_type": "PingRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "pingId": "string"
}

PingResponse

$_type
string
Default: "PingResponse"
Value: "PingResponse"
pingId
string

The pingId of the request this event is responding to

{
  • "$_type": "PingResponse",
  • "pingId": "string"
}

Placeholder

$_type
string
Default: "Placeholder"
Value: "Placeholder"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

Array of objects (PlaceholderValue) [ items ]
cannedResponseId
string
type
string (EPlaceholderType)
Enum: "TEXT" "MULTIPLE_CHOICE"
enum-descriptions: ["TEXT","MULTIPLE_CHOICE"]
title
string
hint
string
{
  • "$_type": "Placeholder",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "placeholderValues": [
    ],
  • "cannedResponseId": "string",
  • "type": "TEXT",
  • "title": "string",
  • "hint": "string"
}

PlaceholderValue

$_type
string
Default: "PlaceholderValue"
Value: "PlaceholderValue"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

placeholderId
string
textValue
string
{
  • "$_type": "PlaceholderValue",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "placeholderId": "string",
  • "textValue": "string"
}

PostListMessageCardItemData

$_type
string
Default: "PostListMessageCardItemData"
Value: "PostListMessageCardItemData"
imageUrl
string

URL of the image displayed on the list item. (optional)

The alignment of the image on the item is determined by com.unblu.conversation.messaging.ui.listMessageImageAlignment.

imageAltText
string

Alt text for the image. Required if imageUrl is set.

title
string

Title displayed below the image. (optional)

Max length is 64 characters.

body
string

Body text. May optionally contain Markdown. (optional)

Max length is 256 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

object (MessageAction)

Message action used in card messages and on list items.

Links are rendered with their labels below the body text of the card or list item. Reply actions are only rendered in card messages. They aren't rendered on list items.

{
  • "$_type": "PostListMessageCardItemData",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "action": {
    }
}

PostMessageData

$_type
string
Default: "CardPostMessageData"
Value: "CardPostMessageData"
type
string (EPostMessageType)
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

imageUrl
string

URL of the image displayed at the top of the card. (optional)

  • The image is always displayed with an aspect ratio of 16:9
  • If the image doesn't fit the aspect ratio it's magnified to cover the whole area
  • Depending on the chat windows size, the image is displayed with a width of 200-400px.

imageAltText
string

Alt text for the image. Required if imageUrl is set.

title
string

Title displayed below the image. (optional)

Max length is 64 characters.

body
string

Body text. May optionally contain Markdown. (optional)

Max length is 640 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MessageAction) [ items ]

Actions to be displayed at the bottom of the card. (optional)

Max number of actions is 5.

Array of objects (QuickReply) [ items ]

List of quick replies available to the message's recipients. (optional)

Max number of quick replies is 13.

Example
{
  • "$_type": "CardPostMessageData",
  • "type": "CARD",
  • "fallbackText": "string",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

ProductVersion

$_type
string
Default: "ProductVersion"
Value: "ProductVersion"
productVersion
string

The version of the product

productGuid
string

The unique identifier of the product build

{
  • "$_type": "ProductVersion",
  • "productVersion": "string",
  • "productGuid": "string"
}

PropertyOwnerTypeOperator

$_type
string
Default: "EqualsPropertyOwnerTypeOperator"
Value: "EqualsPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
value
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

Example
{
  • "$_type": "EqualsPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "value": "GLOBAL"
}

QuestionAbortedMessageData

$_type
string
Default: "QuestionAbortedMessageData"
Value: "QuestionAbortedMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

questionMessageId
string

ID of the question message for which this reply is

value
string

The reply value for the question message.

reason
string (EQuestionMessageAbortReason)
Enum: "TIMEDOUT" "CANCELED"
enum-descriptions: ["TIMEDOUT: A person was to slow to answer a message","CANCELED: The question was canceled explicitly by the system, a bot or an external messenger channel"]

Reason why a question message was not answered

{
  • "$_type": "QuestionAbortedMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "questionMessageId": "string",
  • "value": "string",
  • "reason": "TIMEDOUT"
}

QuickReply

$_type
string
Default: "QuickReply"
Value: "QuickReply"
text
string

Quick reply text displayed as button available to the message's recipient.

Simple text, max 40 characters.

{
  • "$_type": "QuickReply",
  • "text": "string"
}

QuotaUsageData

$_type
string
Default: "QuotaUsageData"
Value: "QuotaUsageData"
current
integer <int32>

Current usage value

limit
string

Usage limit value

{
  • "$_type": "QuotaUsageData",
  • "current": 0,
  • "limit": "string"
}

RatingQuestionMessageData

$_type
string
Default: "RatingQuestionMessageData"
Value: "RatingQuestionMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (RatingQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

{
  • "$_type": "RatingQuestionMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING",
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string"
}

RatingQuestionOption

$_type
string
Default: "RatingQuestionOption"
Value: "RatingQuestionOption"
label
string

Visual representation of the option

value
string

Value of the option, which is used in a ReplyMessageData

{
  • "$_type": "RatingQuestionOption",
  • "label": "string",
  • "value": "string"
}

RatingQuestionPostMessageData

$_type
string
Default: "RatingQuestionPostMessageData"
Value: "RatingQuestionPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Question message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (RatingQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyPostMessageData

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

{
  • "$_type": "RatingQuestionPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string"
}

ReadMessagePushNotificationEvent

$_type
string
Default: "ReadMessagePushNotificationEvent"
Value: "ReadMessagePushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

messageId
string

Id of the message

readTimestamp
integer <int64>

Timestamp when the message was read.

notificationCount
integer <int32>

Number of notifications (i.e. unread messages) in this conversation

recipientNotificationCount
integer <int32>

Number of notifications (i.e. unread messages) the recipient person has in total

{
  • "$_type": "ReadMessagePushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "messageId": "string",
  • "readTimestamp": 0,
  • "notificationCount": 0,
  • "recipientNotificationCount": 0
}

RecipientIdConversationHistorySearchFilter

$_type
string
Default: "RecipientIdConversationHistorySearchFilter"
Value: "RecipientIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "RecipientIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

RecipientIdConversationSearchFilter

$_type
string
Default: "RecipientIdConversationSearchFilter"
Value: "RecipientIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "RecipientIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

RecipientTypeConversationHistorySearchFilter

$_type
string
Default: "RecipientTypeConversationHistorySearchFilter"
Value: "RecipientTypeConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationRecipientTypeOperator)
{
  • "$_type": "RecipientTypeConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

RecipientTypeConversationSearchFilter

$_type
string
Default: "RecipientTypeConversationSearchFilter"
Value: "RecipientTypeConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationRecipientTypeOperator)
{
  • "$_type": "RecipientTypeConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

RecordRetentionData

$_type
string
Default: "RecordRetentionData"
Value: "RecordRetentionData"
accountId
string

ID of the account whose retention configuration properties the object represents

retentionIntervalConversationSeconds
integer <int64>

Retention interval of conversations represented as number of seconds. Conversations are deleted after the interval, counting from when they ended.

retentionIntervalPresenceSeconds
integer <int64>

Retention interval of person presences represented as number of seconds. If a person presence exists without a conversation, the log is deleted after the time set below. Otherwise, it is deleted when the conversation record is deleted.

retentionIntervalWebhookDeliveryLogSeconds
integer <int64>

Retention interval of webhook delivery logs represented as number of seconds. Webhook logs are deleted after the time set below, counting from when they were created.

retentionIntervalAuditLogSeconds
integer <int64>

Retention interval of audit logs represented as number of seconds. Audit logs are deleted after the time set below, counting from when they were created.

{
  • "$_type": "RecordRetentionData",
  • "accountId": "string",
  • "retentionIntervalConversationSeconds": 0,
  • "retentionIntervalPresenceSeconds": 0,
  • "retentionIntervalWebhookDeliveryLogSeconds": 0,
  • "retentionIntervalAuditLogSeconds": 0
}

RecordedMinutesData

$_type
string
Default: "RecordedMinutesData"
Value: "RecordedMinutesData"
recordedMinutes
integer <int64>

The number of recorded minutes

{
  • "$_type": "RecordedMinutesData",
  • "recordedMinutes": 0
}

RecordingAvailableMessageData

$_type
string
Default: "RecordingAvailableMessageData"
Value: "RecordingAvailableMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

blobId
string

The blob store ID of the recording

blobSize
integer <int64>

The total size, in bytes, of this recording

fileName
string

The filename of this recording

startTimestamp
integer <int64>

UTC timestamp when the conversation recording started

endTimestamp
integer <int64>

UTC timestamp when the conversation recording ended

{
  • "$_type": "RecordingAvailableMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "blobId": "string",
  • "blobSize": 0,
  • "fileName": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

RedeemingPersonIdConversationInvitationSearchFilter

$_type
string
Default: "RedeemingPersonIdConversationInvitationSearchFilter"
Value: "RedeemingPersonIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "RedeemingPersonIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

ReplyMessageData

$_type
string
Default: "ReplyMessageData"
Value: "ReplyMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

questionMessageId
string

ID of the question message for which this reply is

value
string

The reply value for the question message.

{
  • "$_type": "ReplyMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "questionMessageId": "string",
  • "value": "string"
}

ReplyPostMessageData

$_type
string
Default: "ReplyPostMessageData"
Value: "ReplyPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

questionMessageId
string

ID of the question message for which this reply is

value
string

The reply value for the question message.

{
  • "$_type": "ReplyPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "questionMessageId": "string",
  • "value": "string"
}

RevokeCallPushNotificationEvent

$_type
string
Default: "RevokeCallPushNotificationEvent"
Value: "RevokeCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

{
  • "$_type": "RevokeCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE"
}

RevokeDeputyDelegationPushNotificationEvent

$_type
string
Default: "RevokeDeputyDelegationPushNotificationEvent"
Value: "RevokeDeputyDelegationPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation delegated to the deputy

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "RevokeDeputyDelegationPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string",
  • "primaryAgentPerson": {
    }
}

RevokeInboundRequestPushNotificationEvent

$_type
string
Default: "RevokeInboundRequestPushNotificationEvent"
Value: "RevokeInboundRequestPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

{
  • "$_type": "RevokeInboundRequestPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string"
}

ScheduledTimestampConversationHistorySearchFilter

$_type
string
Default: "ScheduledTimestampConversationHistorySearchFilter"
Value: "ScheduledTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "ScheduledTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ScheduledTimestampConversationSearchFilter

$_type
string
Default: "ScheduledTimestampConversationSearchFilter"
Value: "ScheduledTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "ScheduledTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

SecureTokenRequest

$_type
string
Default: "SecureTokenRequest"
Value: "SecureTokenRequest"
token
string
type
string (ESecureTokenType)
Enum: "JWT" "OIDC_ACCESS_TOKEN"
enum-descriptions: ["JWT","OIDC_ACCESS_TOKEN"]

Token type

{
  • "$_type": "SecureTokenRequest",
  • "token": "string",
  • "type": "JWT"
}

SendMessageResult

$_type
string
Default: "SendMessageResult"
Value: "SendMessageResult"
messageId
string
{
  • "$_type": "SendMessageResult",
  • "messageId": "string"
}

SendTimestampMessageExportFilter

$_type
string
Default: "SendTimestampMessageExportFilter"
Value: "SendTimestampMessageExportFilter"
field
string (EMessageExportFilterField)
Value: "SEND_TIMESTAMP"
enum-descriptions: ["SEND_TIMESTAMP: Filter by the 'sendTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "SendTimestampMessageExportFilter",
  • "field": "SEND_TIMESTAMP",
  • "operator": {
    }
}

ServiceProviderCallIdCallSearchFilter

$_type
string
Default: "ServiceProviderCallIdCallSearchFilter"
Value: "ServiceProviderCallIdCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ServiceProviderCallIdCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ServiceProviderTypeCallSearchFilter

$_type
string
Default: "ServiceProviderTypeCallSearchFilter"
Value: "ServiceProviderTypeCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (CallServiceProviderOperator)
{
  • "$_type": "ServiceProviderTypeCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

SiteIdNamedAreaSearchFilter

$_type
string
Default: "SiteIdNamedAreaSearchFilter"
Value: "SiteIdNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SiteIdNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

SmsExternalMessengerChannel

$_type
string
Default: "SmsExternalMessengerChannel"
Value: "SmsExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

twilioAccountSid
string

A unique key that identifies a specific Twilio parent account or subaccount. The Account SID is a credential and acts as a username.

twilioAuthToken
string

The promoted authentication token used to authenticate future API requests

phoneNumber
string

The phone number used as the sender for SMS messages. The phone number must conform to the E.164 format.

inboundTemplateName
string

The name of the conversation template for new inbound conversation requests. If no template of that name can be found, the default template forEInitialEngagementType.OFFLINE_CHAT_REQUEST is used.

recipientType
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

recipientName
string

The name of the conversation recipient for new inbound conversation requests. It is used together with the recipientType. If the recipient can't be found, the account is used.

For EConversationRecipientType.ACCOUNT, the recipientName is not relevant. The account that the channel belongs to is used.

For EConversationRecipientType.NAMED_AREA, the recipientName must match the name (not the ID) of a named area.

For EConversationRecipientType.TEAM, the recipientName must match a team's name.

For EConversationRecipientType.AGENT, the recipientName must match an agent's username.

active
boolean

Specifies whether the channel is active

supportsMultipleConversationsPerContact
boolean

SMS channels only support one active conversation per contact. This field must therefore always be "false".

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "SmsExternalMessengerChannel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "channelIcon": "string",
  • "sourceId": "string",
  • "type": "CUSTOM",
  • "twilioAccountSid": "string",
  • "twilioAuthToken": "string",
  • "phoneNumber": "string",
  • "inboundTemplateName": "string",
  • "recipientType": "AGENT",
  • "recipientName": "string",
  • "active": true,
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": {
    }
}

SmsExternalMessengerChannelOrderBy

$_type
string
Default: "SmsExternalMessengerChannelOrderBy"
Value: "SmsExternalMessengerChannelOrderBy"
field
string (ESmsExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "SmsExternalMessengerChannelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

SmsExternalMessengerChannelQuery

$_type
string
Default: "SmsExternalMessengerChannelQuery"
Value: "SmsExternalMessengerChannelQuery"
Array of any (SmsExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (SmsExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "SmsExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

SmsExternalMessengerChannelResult

$_type
string
Default: "SmsExternalMessengerChannelResult"
Value: "SmsExternalMessengerChannelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (SmsExternalMessengerChannel) [ items ]

The returned list of entities

{
  • "$_type": "SmsExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

SmsExternalMessengerChannelSearchFilter

$_type
string
Default: "AccountSidSmsExternalMessengerChannelSearchFilter"
Value: "AccountSidSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
Example
{
  • "$_type": "AccountSidSmsExternalMessengerChannelSearchFilter",
  • "field": "ACCOUNT_SID",
  • "operator": {
    }
}

SourceDataPersonSearchFilter

$_type
string
Default: "SourceDataPersonSearchFilter"
Value: "SourceDataPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "SourceDataPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

SourceIdConversationSearchFilter

$_type
string
Default: "SourceIdConversationSearchFilter"
Value: "SourceIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SourceIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

SourceIdExternalMessengerContactSearchFilter

$_type
string
Default: "SourceIdExternalMessengerContactSearchFilter"
Value: "SourceIdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "SourceIdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

SourceIdPersonSearchFilter

$_type
string
Default: "SourceIdPersonSearchFilter"
Value: "SourceIdPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SourceIdPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

SourceIdPersonTypedSearchFilter

$_type
string
Default: "SourceIdPersonTypedSearchFilter"
Value: "SourceIdPersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SourceIdPersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

StartsWithIdOperator

$_type
string
Default: "StartsWithIdOperator"
Value: "StartsWithIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
{
  • "$_type": "StartsWithIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

StateConversationHistorySearchFilter

$_type
string
Default: "StateConversationHistorySearchFilter"
Value: "StateConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationStateOperator)
{
  • "$_type": "StateConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

StateConversationSearchFilter

$_type
string
Default: "StateConversationSearchFilter"
Value: "StateConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationStateOperator)
{
  • "$_type": "StateConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

StatusMessageAgentStateSearchFilter

$_type
string
Default: "StatusMessageAgentStateSearchFilter"
Value: "StatusMessageAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (StringOperator)
{
  • "$_type": "StatusMessageAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

StringOperator

$_type
string
Default: "ContainsStringOperator"
Value: "ContainsStringOperator"
type
string (EStringOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string

The value to check if it is contained within the searched field. Mandatory.

caseSensitive
boolean

Whether the search should be case sensitive. Optional, false if not provided.

Example
{
  • "$_type": "ContainsStringOperator",
  • "type": "CONTAINS",
  • "value": "string",
  • "caseSensitive": true
}

SuggestionSourceData

$_type
string
Default: "SuggestionSourceData"
Value: "SuggestionSourceData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

outboundApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

outboundStatus
string (EOutboundEndpointStatus)
Enum: "ENABLED" "DISABLED"
enum-descriptions: ["ENABLED: The endpoint is enabled and calls are allowed.","DISABLED: The endpoint is disabled and calls should be avoided, since they won't work."]

The status of an Outbound Web-API endpoint.

outboundEndpoint
string

The endpoint url of the outbound registration. To this url the requests for the outbound requests are done. Maximum length of 4000 characters.

The following requests will be sent to the endpoint:

  • OutboundRequest#ServiceNameConstants#CONVERSATION_CHAT_SUGGESTION: When a suggestion for one or more chat messages is requested.
  • OutboundRequest#ServiceNameConstants#PING: When pinging the endpoint.

outboundSecret
string

Optional secret which is send with each outbound request.

Maximum length of 4000 characters.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

{
  • "$_type": "SuggestionSourceData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "outboundApiVersion": "V1",
  • "outboundStatus": "ENABLED",
  • "outboundEndpoint": "string",
  • "outboundSecret": "string",
  • "outboundTimeoutMillis": 0
}

SuggestionSourceOrderBy

$_type
string
Default: "SuggestionSourceOrderBy"
Value: "SuggestionSourceOrderBy"
field
string (ESuggestionSourceOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "SuggestionSourceOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

SuggestionSourceQuery

$_type
string
Default: "SuggestionSourceQuery"
Value: "SuggestionSourceQuery"
Array of any (SuggestionSourceSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (SuggestionSourceOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "SuggestionSourceQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

SuggestionSourceResult

$_type
string
Default: "SuggestionSourceResult"
Value: "SuggestionSourceResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (SuggestionSourceData) [ items ]

The returned list of entities

{
  • "$_type": "SuggestionSourceResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

SuggestionSourceSearchFilter

$_type
string
Default: "CreationTimestampSuggestionSourceSearchFilter"
Value: "CreationTimestampSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampSuggestionSourceSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

SystemMessageData

$_type
string
Default: "SystemMessageData"
Value: "SystemMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

{
  • "$_type": "SystemMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string"
}

TargetIdConversationInvitationSearchFilter

$_type
string
Default: "TargetIdConversationInvitationSearchFilter"
Value: "TargetIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TargetIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

TargetTypeConversationInvitationSearchFilter

$_type
string
Default: "TargetTypeConversationInvitationSearchFilter"
Value: "TargetTypeConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationTargetTypeOperator)
{
  • "$_type": "TargetTypeConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

Team

$_type
string
Default: "Team"
Value: "Team"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the team. Maximum of 250 characters. Can not be omitted.

parentId
string

Id of the parent team. Only the default team has no parent team. When creating a team and the parentId is omitted, the default team is automatically inserted by the server.

description
string

Description of the team. Maximum of 500 characters. Can be omitted.

externallyManaged
boolean

True if the team is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "Team",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "parentId": "string",
  • "description": "string",
  • "externallyManaged": true,
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    }
}

TeamData

$_type
string
Default: "TeamData"
Value: "TeamData"
id
string

Unique id of the team.

accountId
string

Account id to which a team belongs to.

displayName
string

Display-Name of the team

object

Localized Display-Name of the team

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the team: id that can be expanded.

parentId
string

Id of the parent team. Only the default team has no parent team. When creating a team and the parentId is omitted, the default team is automatically inserted by the server.

{
  • "$_type": "TeamData",
  • "id": "string",
  • "accountId": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string",
  • "parentId": "string"
}

TeamIdPersonSearchFilter

$_type
string
Default: "TeamIdPersonSearchFilter"
Value: "TeamIdPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TeamIdPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

TeamIdPersonTypedSearchFilter

$_type
string
Default: "TeamIdPersonTypedSearchFilter"
Value: "TeamIdPersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TeamIdPersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

TeamIdUserSearchFilter

$_type
string
Default: "TeamIdUserSearchFilter"
Value: "TeamIdUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TeamIdUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

TeamList

$_type
string
Default: "TeamList"
Value: "TeamList"
Array of objects (Team) [ items ]

The list of mapped entities

{
  • "$_type": "TeamList",
  • "items": [
    ]
}

TeamModificationEvent

$_type
string
Default: "TeamModificationEvent"
Value: "TeamModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Team)

Model of a team. A team consist out of multiple users. For each account there is at least the default team.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "TeamModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

TeamOrderBy

$_type
string
Default: "TeamOrderBy"
Value: "TeamOrderBy"
field
string (ETeamOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","PARENT_ID: Sort by the 'parentId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "TeamOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

TeamQuery

$_type
string
Default: "TeamQuery"
Value: "TeamQuery"
Array of any (TeamSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (TeamOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "TeamQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

TeamResult

$_type
string
Default: "TeamResult"
Value: "TeamResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Team) [ items ]

The returned list of entities

{
  • "$_type": "TeamResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

TeamSearchFilter

$_type
string
Default: "CreationTimestampTeamSearchFilter"
Value: "CreationTimestampTeamSearchFilter"
field
string (ETeamSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampTeamSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

TeamTranslation

$_type
string
Default: "TeamTranslation"
Value: "TeamTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "TeamTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

TextCannedResponseSearchFilter

$_type
string
Default: "TextCannedResponseSearchFilter"
Value: "TextCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "TextCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

TextChatSuggestionResponse

$_type
string
Default: "TextChatSuggestionResponse"
Value: "TextChatSuggestionResponse"
type
string (EChatSuggestionResponseType)
Enum: "EMPTY" "TEXT"
enum-descriptions: ["EMPTY","TEXT"]
suggestionText
string

The suggested text

{
  • "$_type": "TextChatSuggestionResponse",
  • "type": "EMPTY",
  • "suggestionText": "string"
}

TextMessageData

$_type
string
Default: "TextMessageData"
Value: "TextMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "TextMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "quickReplies": [
    ]
}

TextPostMessageData

$_type
string
Default: "TextPostMessageData"
Value: "TextPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (QuickReply) [ items ]

Optional list of quick replies available to the message's recipients

Max number of quick replies is 13.

{
  • "$_type": "TextPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "quickReplies": [
    ]
}

TextQuestionMessageData

$_type
string
Default: "TextQuestionMessageData"
Value: "TextQuestionMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

questionType
string (ETextQuestionType)
Enum: "SHORT_TEXT" "LONG_TEXT" "URL" "EMAIL" "PHONE" "DATE" "TIME" "DATETIME" "NUMBER"
enum-descriptions: ["SHORT_TEXT: Reply should only be a short text.","LONG_TEXT: Reply can be be a long text. Visually displayed with a larger input field.","URL: Reply has to be a URL","EMAIL: Reply has to be a mail address","PHONE: Reply has to be a phone number","DATE: Reply has to be a date","TIME: Reply has to be a time","DATETIME: Reply has to be a date and a time","NUMBER: Reply has to be a number"]

Type of a question message. Defines the reply value of a text message.

hint
string

Hint which is displayed inside the reply field to give the user a hint, what the answer should contain.
Optional value

minCharacters
integer <int32>

Minimum amount of characters the user has to answer with.
Optional value

maxCharacters
integer <int32>

Maximum amount if characters the user can answer with.
Optional

additionalRegex
string

The reply has to match this regex.
Optional value

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

{
  • "$_type": "TextQuestionMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "questionType": "SHORT_TEXT",
  • "hint": "string",
  • "minCharacters": 0,
  • "maxCharacters": 0,
  • "additionalRegex": "string",
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string",
  • "answerStatus": "PENDING"
}

TextQuestionPostMessageData

$_type
string
Default: "TextQuestionPostMessageData"
Value: "TextQuestionPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

questionType
string (ETextQuestionType)
Enum: "SHORT_TEXT" "LONG_TEXT" "URL" "EMAIL" "PHONE" "DATE" "TIME" "DATETIME" "NUMBER"
enum-descriptions: ["SHORT_TEXT: Reply should only be a short text.","LONG_TEXT: Reply can be be a long text. Visually displayed with a larger input field.","URL: Reply has to be a URL","EMAIL: Reply has to be a mail address","PHONE: Reply has to be a phone number","DATE: Reply has to be a date","TIME: Reply has to be a time","DATETIME: Reply has to be a date and a time","NUMBER: Reply has to be a number"]

Type of a question message. Defines the reply value of a text message.

hint
string

Hint which is displayed inside the reply field to give the user a hint, what the answer should contain.
Optional value

minCharacters
integer <int32>

Minimum amount of characters the user has to answer with.
Optional value

maxCharacters
integer <int32>

Maximum amount if characters the user can answer with.
Optional

additionalRegex
string

The reply has to match this regex.
Optional value

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

{
  • "$_type": "TextQuestionPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "questionType": "SHORT_TEXT",
  • "hint": "string",
  • "minCharacters": 0,
  • "maxCharacters": 0,
  • "additionalRegex": "string",
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string"
}

TimestampOperator

$_type
string
Default: "EqualsTimestampOperator"
Value: "EqualsTimestampOperator"
type
string (ETimestampOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
Example
{
  • "$_type": "EqualsTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

TitleCannedResponseSearchFilter

$_type
string
Default: "TitleCannedResponseSearchFilter"
Value: "TitleCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "TitleCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

TokboxSessionIdConversationHistorySearchFilter

$_type
string
Default: "TokboxSessionIdConversationHistorySearchFilter"
Value: "TokboxSessionIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TokboxSessionIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

TokboxSessionIdConversationSearchFilter

$_type
string
Default: "TokboxSessionIdConversationSearchFilter"
Value: "TokboxSessionIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TokboxSessionIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

TopicConversationHistorySearchFilter

$_type
string
Default: "TopicConversationHistorySearchFilter"
Value: "TopicConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (StringOperator)
{
  • "$_type": "TopicConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

TopicConversationSearchFilter

$_type
string
Default: "TopicConversationSearchFilter"
Value: "TopicConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (StringOperator)
{
  • "$_type": "TopicConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

TypeExternalMessengerChannelSearchFilter

$_type
string
Default: "TypeExternalMessengerChannelSearchFilter"
Value: "TypeExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (ExternalMessengerChannelTypeOperator)
{
  • "$_type": "TypeExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

User

$_type
string
Default: "User"
Value: "User"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

username
string

The username for the login. Maximum length of 250 characters. Depending on the configuration, this may also be the email address.
Cannot be omitted when creating or updating a user and 'com.unblu.storage.user.useEmailAsUsername' is set to 'false'.
When creating or updating a user, and 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', this field can be omitted. If provided, its value must be the same as that of the 'email' field.

email
string

The user's email address. Maximum length of 250 characters. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'false', the email may be an empty string or set to null. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', the field is mandatory.

phone
string

The phone number of the user. Maximum length of 100 characters.

teamId
string

The ID of the team the user belongs to. If omitted when creating a user, it is filled by the server with the ID of the account's default team.

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

displayName
string

The display name of the user. Calculated by the server. Can be omitted when creating a user.

firstName
string

The first name of the user. Maximum length of 250 characters. Cannot be omitted.

lastName
string

The user's last name. Maximum length of 250 characters. Cannot be omitted.

externallyManaged
boolean

True if the user is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

virtualUser
boolean

True if the user is purely virtual (they weren't created as the result of an LDAP sync, for instance) and thus can't be edited in the Unblu UI. If omitted, the property is set to false, and the user is considered to be a physical user.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

UserIdAuditChangeSearchFilter

$_type
string
Default: "UserIdAuditChangeSearchFilter"
Value: "UserIdAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "UserIdAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

UserInfo

$_type
string
Default: "UserInfo"
Value: "UserInfo"
userId
string

The id of the user

userName
string

The username of the user

firstName
string

The first name of the user

lastName
string

The last name of the user

displayName
string

The display name of the user

{
  • "$_type": "UserInfo",
  • "userId": "string",
  • "userName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "displayName": "string"
}

UserList

$_type
string
Default: "UserList"
Value: "UserList"
Array of objects (User) [ items ]

The list of mapped entities

{
  • "$_type": "UserList",
  • "items": [
    ]
}

UserModificationEvent

$_type
string
Default: "UserModificationEvent"
Value: "UserModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "UserModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

UserOrderBy

$_type
string
Default: "UserOrderBy"
Value: "UserOrderBy"
field
string (EUserOrderByField)
Enum: "ID" "FIRST_NAME" "LAST_NAME" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "UserOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

UserPasswordContainer

$_type
string
Default: "UserPasswordContainer"
Value: "UserPasswordContainer"
object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

password
string

The user's password.

NOTE: this can only be used to set a password. The server will always return null.

{
  • "$_type": "UserPasswordContainer",
  • "user": {
    },
  • "password": "string"
}

UserQuery

$_type
string
Default: "UserQuery"
Value: "UserQuery"
Array of any (UserSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (UserOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "UserQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

UserResult

$_type
string
Default: "UserResult"
Value: "UserResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (User) [ items ]

The returned list of entities

{
  • "$_type": "UserResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

UserSearchFilter

$_type
string
Default: "AuthorizationRoleUserSearchFilter"
Value: "AuthorizationRoleUserSearchFilter"
field
string (EUserSearchFilterField)
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (AuthorizationRoleOperator)
Example
{
  • "$_type": "AuthorizationRoleUserSearchFilter",
  • "field": "AUTHORIZATION_ROLE",
  • "operator": {
    }
}

UsernameAuditChangeSearchFilter

$_type
string
Default: "UsernameAuditChangeSearchFilter"
Value: "UsernameAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "UsernameAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

UsernamePersonSearchFilter

$_type
string
Default: "UsernamePersonSearchFilter"
Value: "UsernamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "UsernamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

UsernamePersonTypedSearchFilter

$_type
string
Default: "UsernamePersonTypedSearchFilter"
Value: "UsernamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "UsernamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

UsernameUserSearchFilter

$_type
string
Default: "UsernameUserSearchFilter"
Value: "UsernameUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "UsernameUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

UsersSetPasswordBody

password
string

The user's new password

{
  • "password": "string"
}

UsersTransformVirtualToPhysicalBody

username
string

The username of the User entity that should be converted to a physical user

{
  • "username": "string"
}

VirtualUserUserSearchFilter

$_type
string
Default: "VirtualUserUserSearchFilter"
Value: "VirtualUserUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (BooleanOperator)
{
  • "$_type": "VirtualUserUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

VisibilityConversationHistorySearchFilter

$_type
string
Default: "VisibilityConversationHistorySearchFilter"
Value: "VisibilityConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationVisibilityOperator)
{
  • "$_type": "VisibilityConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

VisibilityConversationSearchFilter

$_type
string
Default: "VisibilityConversationSearchFilter"
Value: "VisibilityConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationVisibilityOperator)
{
  • "$_type": "VisibilityConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

VisibilityRuleLabelSelectionOperator

$_type
string
Default: "EqualsVisibilityRuleLabelSelectionOperator"
Value: "EqualsVisibilityRuleLabelSelectionOperator"
type
string (EVisibilityRuleLabelSelectionOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
Example
{
  • "$_type": "EqualsVisibilityRuleLabelSelectionOperator",
  • "type": "EQUALS",
  • "value": "ALL"
}

VisitorInvitationCreatedEvent

$_type
string
Default: "VisitorInvitationCreatedEvent"
Value: "VisitorInvitationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "VisitorInvitationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

VisitorInvitationRedeemedEvent

$_type
string
Default: "VisitorInvitationRedeemedEvent"
Value: "VisitorInvitationRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "VisitorInvitationRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "redeemingPerson": {
    }
}

VisitorInvitationRenewedEvent

$_type
string
Default: "VisitorInvitationRenewedEvent"
Value: "VisitorInvitationRenewedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "VisitorInvitationRenewedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

VisitorInvitationRevokedEvent

$_type
string
Default: "VisitorInvitationRevokedEvent"
Value: "VisitorInvitationRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

{
  • "$_type": "VisitorInvitationRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0
}

VisitorLabelSelectionPersonVisibilityRuleSearchFilter

$_type
string
Default: "VisitorLabelSelectionPersonVisibilityRuleSearchFilter"
Value: "VisitorLabelSelectionPersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (VisibilityRuleLabelSelectionOperator)
{
  • "$_type": "VisitorLabelSelectionPersonVisibilityRuleSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

VisitorPersonStateChangedEvent

$_type
string
Default: "VisitorPersonStateChangedEvent"
Value: "VisitorPersonStateChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (VisitorPersonStateData)

State data of a visitor person

{
  • "$_type": "VisitorPersonStateChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "personState": {
    }
}

VisitorPersonStateData

$_type
string
Default: "VisitorPersonStateData"
Value: "VisitorPersonStateData"
personId
string

The ID of the person this state data belongs to

onlineState
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

type
string (EPersonStateType)
Enum: "AGENT" "VISITOR"
enum-descriptions: ["AGENT","VISITOR"]
{
  • "$_type": "VisitorPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT"
}

VisitorPersonStateResult

$_type
string
Default: "VisitorPersonStateResult"
Value: "VisitorPersonStateResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (VisitorPersonStateData) [ items ]

The returned list of entities

{
  • "$_type": "VisitorPersonStateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

VisitorStateOrderBy

$_type
string
Default: "VisitorStateOrderBy"
Value: "VisitorStateOrderBy"
field
string (EVisitorStateOrderByField)
Value: "PERSON_ID"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "VisitorStateOrderBy",
  • "field": "PERSON_ID",
  • "order": "ASCENDING"
}

VisitorStateQuery

$_type
string
Default: "VisitorStateQuery"
Value: "VisitorStateQuery"
Array of any (VisitorStateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (VisitorStateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "VisitorStateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

VisitorStateSearchFilter

$_type
string
Default: "OnlineStateVisitorStateSearchFilter"
Value: "OnlineStateVisitorStateSearchFilter"
field
string (EVisitorStateSearchFilterField)
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
any (OnlineStateOperator)
Example
{
  • "$_type": "OnlineStateVisitorStateSearchFilter",
  • "field": "ONLINE_STATE",
  • "operator": {
    }
}

WebhookAuditEvent

$_type
string
Default: "WebhookAuditEvent"
Value: "WebhookAuditEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

entityType
string
entityId
string
changeType
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
auditEntity
string
{
  • "$_type": "WebhookAuditEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "entityType": "string",
  • "entityId": "string",
  • "changeType": "CREATE",
  • "auditEntity": "string"
}

WebhookPingEvent

$_type
string
Default: "WebhookPingEvent"
Value: "WebhookPingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (WebhookRegistration)

Model of a webhook registration. Registered webhooks for certain events are stored inside this model.

{
  • "$_type": "WebhookPingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "webhookConfiguration": {
    }
}

WebhookRegistration

$_type
string
Default: "WebhookRegistration"
Value: "WebhookRegistration"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the webhook registration. Maximum length of 250 characters. Can not be omitted.

status
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

description
string

Description of the webhook registration. Maximum length of 500 characters. Can be omitted.

endpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can be omitted, but should not.

apiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

secret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

events
Array of strings

Events for which the webhook endpoint is called, if they occur. Can not be omitted. Check the Webhook Events for possible values.

{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

WebhookRegistrationList

$_type
string
Default: "WebhookRegistrationList"
Value: "WebhookRegistrationList"
Array of objects (WebhookRegistration) [ items ]

The list of mapped entities

{
  • "$_type": "WebhookRegistrationList",
  • "items": [
    ]
}

WebhookRegistrationOrderBy

$_type
string
Default: "WebhookRegistrationOrderBy"
Value: "WebhookRegistrationOrderBy"
field
string (EWebhookRegistrationOrderByField)
Enum: "ID" "NAME" "STATUS" "DESCRIPTION" "ENDPOINT" "API_VERSION" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","STATUS: Sort by the 'status' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","API_VERSION: Sort by the 'apiVersion' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "WebhookRegistrationOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

WebhookRegistrationQuery

$_type
string
Default: "WebhookRegistrationQuery"
Value: "WebhookRegistrationQuery"
Array of any (WebhookRegistrationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (WebhookRegistrationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "WebhookRegistrationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

WebhookRegistrationResult

$_type
string
Default: "WebhookRegistrationResult"
Value: "WebhookRegistrationResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (WebhookRegistration) [ items ]

The returned list of entities

{
  • "$_type": "WebhookRegistrationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

WebhookRegistrationSearchFilter

$_type
string
Default: "CreationTimestampWebhookRegistrationSearchFilter"
Value: "CreationTimestampWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampWebhookRegistrationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

WriteAgentDeputyRelationshipsBody

$_type
string
Default: "WriteAgentDeputyRelationshipsBody"
Value: "WriteAgentDeputyRelationshipsBody"
agentUserId
string

The agent user ID for which the deputies should be defined

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_1 deputies

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_2 deputies

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_3 deputies

{
  • "$_type": "WriteAgentDeputyRelationshipsBody",
  • "agentUserId": "string",
  • "level1": [
    ],
  • "level2": [
    ],
  • "level3": [
    ]
}

For bots

bot.dialog.closed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogClosedEvent"
Value: "BotDialogClosedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

conversationId
string

The ID of the conversation this dialog belongs to.

counterpartPersonId
string

The ID of the person the bot is talking to.

{
  • "$_type": "BotDialogClosedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "conversationId": "string",
  • "counterpartPersonId": "string"
}

bot.dialog.counterpart_changed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogCounterpartChanged"
Value: "BotDialogCounterpartChanged"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotDialogCounterpartChanged",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "oldCounterpartPerson": {
    },
  • "newCounterpartPerson": {
    }
}

bot.dialog.message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogMessageEvent"
Value: "BotDialogMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "BotDialogMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "conversationMessage": {
    }
}

bot.dialog.message_state

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogMessageStateEvent"
Value: "BotDialogMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

messageId
string

The ID of the message which state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

botPersonId
string

The ID of the bot that sent the message

conversationId
string

The conversation the message belongs to

{
  • "$_type": "BotDialogMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "botPersonId": "string",
  • "conversationId": "string"
}

bot.dialog.opened

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogOpenEvent"
Value: "BotDialogOpenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

dialogType
string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotDialogOpenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "dialogType": "ONBOARDING",
  • "counterpartPerson": {
    },
  • "conversation": {
    }
}

bot.offboarding_offer

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotOffboardingOfferEvent"
Value: "BotOffboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The unique dialog token for this bot, used to identify this offboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

offboardingReason
string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOffboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "offboardingPerson": {
    },
  • "offboardingReason": "FORWARDED",
  • "conversation": {
    }
}

bot.onboarding_offer

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotOnboardingOfferEvent"
Value: "BotOnboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The unique dialog token for this bot, used to identify this onboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOnboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "onboardingPerson": {
    },
  • "conversation": {
    }
}

bot.reboarding_offer

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotReboardingOfferEvent"
Value: "BotReboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The dialog token for this bot, used to identify this reboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotReboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "reboardingPerson": {
    },
  • "conversation": {
    }
}

outbound.bot.dialog.closed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogClosedRequest"
Value: "BotDialogClosedRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

conversationId
string

The ID of the conversation this dialog belongs to.

counterpartPersonId
string

The ID of the person the bot is talking to.

{
  • "$_type": "BotDialogClosedRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "conversationId": "string",
  • "counterpartPersonId": "string"
}

outbound.bot.dialog.counterpart_changed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogCounterpartChangedRequest"
Value: "BotDialogCounterpartChangedRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotDialogCounterpartChangedRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "oldCounterpartPerson": {
    },
  • "newCounterpartPerson": {
    }
}

outbound.bot.dialog.message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogMessageRequest"
Value: "BotDialogMessageRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "BotDialogMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "conversationMessage": {
    }
}

outbound.bot.dialog.message_state

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogMessageStateRequest"
Value: "BotDialogMessageStateRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

messageId
string

The ID of the message whose state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

botPersonId
string

The ID of the bot that sent the message

conversationId
string

The conversation the message belongs to

{
  • "$_type": "BotDialogMessageStateRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "botPersonId": "string",
  • "conversationId": "string"
}

outbound.bot.dialog.opened

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotDialogOpenRequest"
Value: "BotDialogOpenRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

dialogType
string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotDialogOpenRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "dialogType": "ONBOARDING",
  • "counterpartPerson": {
    },
  • "conversation": {
    }
}

outbound.bot.offboarding_offer

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotOffboardingOfferRequest"
Value: "BotOffboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The unique dialog token for this bot, used to identify this offboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

offboardingReason
string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOffboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "offboardingPerson": {
    },
  • "offboardingReason": "FORWARDED",
  • "conversation": {
    }
}

outbound.bot.onboarding_offer

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotOnboardingOfferRequest"
Value: "BotOnboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The unique dialog token for this bot, used to identify this onboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOnboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "onboardingPerson": {
    },
  • "conversation": {
    }
}

outbound.bot.reboarding_offer

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "BotReboardingOfferRequest"
Value: "BotReboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The dialog token for this bot, used to identify this reboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotReboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "reboardingPerson": {
    },
  • "conversation": {
    }
}

For external messengers

external_messenger.message_state

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ExternalMessengerMessageStateEvent"
Value: "ExternalMessengerMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageId
string

The ID of the message of which the state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

sourceId
string

The source ID of the message

externalMessengerChannelId
string

The ID if the external messenger channel

conversationId
string

The ID of the conversation to which the message belongs to

{
  • "$_type": "ExternalMessengerMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "sourceId": "string",
  • "externalMessengerChannelId": "string",
  • "conversationId": "string"
}

external_messenger.new_message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ExternalMessengerNewMessageEvent"
Value: "ExternalMessengerNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "ExternalMessengerNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    }
}

outbound.external_messenger.create_contact

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ExternalMessengerCreateContactRequest"
Value: "ExternalMessengerCreateContactRequest"
accountId
string
serviceName
string
externalMessengerChannelId
string

The ID of the external messenger channel to which the conversation has to be linked

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

contactIdentifier
string

The identifier of the person in the external messenger. The identifier value is based on the configured values of the CustomExternalMessengerChannelcontact identifier field name and type.

description
string

The description of the contact. Is null, if the user didn't define one.

{
  • "$_type": "ExternalMessengerCreateContactRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "externalMessengerChannelId": "string",
  • "personData": {
    },
  • "contactIdentifier": "string",
  • "description": "string"
}

outbound.external_messenger.create_conversation

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ExternalMessengerCreateConversationRequest"
Value: "ExternalMessengerCreateConversationRequest"
accountId
string
serviceName
string
object (ConversationCreationData)

Data for creating a new conversation

{
  • "$_type": "ExternalMessengerCreateConversationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "creationData": {
    }
}

outbound.external_messenger.message_state

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ExternalMessengerMessageStateRequest"
Value: "ExternalMessengerMessageStateRequest"
accountId
string
serviceName
string
messageId
string

The ID of the message of which the state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

sourceId
string

The source ID of the message

externalMessengerChannelId
string

The ID if the external messenger channel

conversationId
string

The ID of the conversation the message belongs to

{
  • "$_type": "ExternalMessengerMessageStateRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "sourceId": "string",
  • "externalMessengerChannelId": "string",
  • "conversationId": "string"
}

outbound.external_messenger.new_message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ExternalMessengerNewMessageRequest"
Value: "ExternalMessengerNewMessageRequest"
accountId
string
serviceName
string
any (MessageData)

Base class for all conversation messages

Array of objects (ExternalMessengerContact) [ items ]

The contacts that should receive the message

{
  • "$_type": "ExternalMessengerNewMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "conversationMessage": {
    },
  • "receivingContacts": [
    ]
}

For webhooks

account

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AccountModificationEvent"
Value: "AccountModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Account)

Model of an account

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "AccountModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

agent_forwarding.created

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AgentForwardingCreatedEvent"
Value: "AgentForwardingCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

Array of objects (ConversationLink) [ items ]

List of links to accept the agent forwarding event with the token.
Only one link may be used.

{
  • "$_type": "AgentForwardingCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "links": [
    ]
}

agent_forwarding.redeemed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AgentForwardingRedeemedEvent"
Value: "AgentForwardingRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AgentForwardingRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "redeemingPerson": {
    }
}

agent_forwarding.revoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AgentForwardingRevokedEvent"
Value: "AgentForwardingRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

{
  • "$_type": "AgentForwardingRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string"
}

agent_invitation.created

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AgentInvitationCreatedEvent"
Value: "AgentInvitationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

Array of objects (ConversationLink) [ items ]

List of links to accept the agent invitation event with the token.
Only one link may be used.

{
  • "$_type": "AgentInvitationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true,
  • "links": [
    ]
}

agent_invitation.redeemed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AgentInvitationRedeemedEvent"
Value: "AgentInvitationRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AgentInvitationRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true,
  • "redeemingPerson": {
    }
}

agent_invitation.revoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AgentInvitationRevokedEvent"
Value: "AgentInvitationRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

{
  • "$_type": "AgentInvitationRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true
}

agent_person_state.changed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AgentPersonStateChangedEvent"
Value: "AgentPersonStateChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (AgentPersonStateData)

State data of an agent person

{
  • "$_type": "AgentPersonStateChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "personState": {
    }
}

api_key

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ApiKeyModificationEvent"
Value: "ApiKeyModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (ApiKey)

Model of an ApiKey. Api keys identify the usage of unblu to a certain account. There can be multiple api keys per account to define different configurations

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "ApiKeyModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

assignment_request.created

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AssignmentRequestCreatedEvent"
Value: "AssignmentRequestCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ConversationLink) [ items ]

List of links to accept the assignment request event with the token.
Only one link may be used.

{
  • "$_type": "AssignmentRequestCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "links": [
    ]
}

assignment_request.redeemed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AssignmentRequestRedeemedEvent"
Value: "AssignmentRequestRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AssignmentRequestRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "redeemingPerson": {
    }
}

assignment_request.revoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AssignmentRequestRevokedEvent"
Value: "AssignmentRequestRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

{
  • "$_type": "AssignmentRequestRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    }
}

assignment_request.unanswered

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AssignmentRequestUnansweredEvent"
Value: "AssignmentRequestUnansweredEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ConversationLink) [ items ]

List of links to accept the agent invitation event with the token.
Only one link may be used.

{
  • "$_type": "AssignmentRequestUnansweredEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "links": [
    ]
}

audit

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "WebhookAuditEvent"
Value: "WebhookAuditEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

entityType
string
entityId
string
changeType
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
auditEntity
string
{
  • "$_type": "WebhookAuditEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "entityType": "string",
  • "entityId": "string",
  • "changeType": "CREATE",
  • "auditEntity": "string"
}

conversation.active

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationActiveEvent"
Value: "ConversationActiveEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationActiveEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.awaitedpersontype_changed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "AwaitedPersonTypeChangedEvent"
Value: "AwaitedPersonTypeChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "AwaitedPersonTypeChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.call.accepted

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallAcceptedEvent"
Value: "CallAcceptedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

{
  • "$_type": "CallAcceptedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0
}

conversation.call.dial_in_publication.ended

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallDialInPublicationEndedEvent"
Value: "CallDialInPublicationEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of dial-in service provider

dialInNumber
string

Dial-in phone number used for the publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

endTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication ended

{
  • "$_type": "CallDialInPublicationEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

conversation.call.dial_in_publication.started

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallDialInPublicationStartedEvent"
Value: "CallDialInPublicationStartedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of dial-in service provider

dialInNumber
string

Dial-in phone number used for the publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

{
  • "$_type": "CallDialInPublicationStartedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0
}

conversation.call.ended

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallEndedEvent"
Value: "CallEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

endTimestamp
integer <int64>

UTC timestamp (ms) when the call ended

endReason
string (ECallEndReason)
Enum: "NOT_ANSWERED" "ABORTED_BY_INITIATOR" "DECLINED" "DECLINED_BECAUSE_UNAVAILABLE" "LAST_MANDATORY_PARTICIPANT_LEFT" "CONVERSATION_ENDED" "RECORDING_DENIED" "SYSTEM_SHUTDOWN" "UNKNOWN"
enum-descriptions: ["NOT_ANSWERED: The call was not answered","ABORTED_BY_INITIATOR: The initiator aborted the call while it was still ringing","DECLINED: The call was declined","DECLINED_BECAUSE_UNAVAILABLE: The call was declined because all conversation participants called were unavailable","LAST_MANDATORY_PARTICIPANT_LEFT: The call ended because the last mandatory participant left","CONVERSATION_ENDED: The call ended because the conversation ended","RECORDING_DENIED: The call ended because conversation recording was denied","SYSTEM_SHUTDOWN: The call ended because the collaboration server pod was shut down","UNKNOWN: The call ended for another reason"]

The reason a call has ended

{
  • "$_type": "CallEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0,
  • "endTimestamp": 0,
  • "endReason": "NOT_ANSWERED"
}

conversation.call.established

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallEstablishedEvent"
Value: "CallEstablishedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

{
  • "$_type": "CallEstablishedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0
}

conversation.call.initiated

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallInitiatedEvent"
Value: "CallInitiatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

{
  • "$_type": "CallInitiatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0
}

conversation.call.participant.connected

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallParticipantConnectedEvent"
Value: "CallParticipantConnectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call. Null if the participant never answered the call.

{
  • "$_type": "CallParticipantConnectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0,
  • "connectedTimestamp": 0
}

conversation.call.participant.joined

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallParticipantJoinedEvent"
Value: "CallParticipantJoinedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

{
  • "$_type": "CallParticipantJoinedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0
}

conversation.call.participant.left

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CallParticipantLeftEvent"
Value: "CallParticipantLeftEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call. Null if the participant never answered the call.

leftTimestamp
integer <int64>

UTC timestamp (ms) when the participant left the call

leftReason
string (ECallParticipationLeftReason)
Enum: "HANG_UP" "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "CALL_ENDED" "CALL_ABORTED" "DIAL_IN_ENDED" "REMOVED" "SYSTEM_ABORT" "UNKNOWN"
enum-descriptions: ["HANG_UP: The participant hung up","MISSED_BECAUSE_TIMEOUT: The participant missed the call because they didn't answer it","MISSED_BECAUSE_TERMINATED: The participant missed the call because the caller ended it before they could answer it","CALL_ENDED: The participation ended because the call ended","CALL_ABORTED: The participation ended because the call was aborted before they could answer it","DIAL_IN_ENDED: The participant hung up the dialed-in phone","REMOVED: The participant was removed from the conversation","SYSTEM_ABORT: The participation ended because the system aborted the call","UNKNOWN: The participant left for unknown reason"]

The reason a participant left a call they had joined earlier

{
  • "$_type": "CallParticipantLeftEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0,
  • "connectedTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "HANG_UP"
}

conversation.cannedresponse_used

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CannedResponseUsedEvent"
Value: "CannedResponseUsedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

Array of objects (CannedResponse) [ items ]

The list of the used canned responses

{
  • "$_type": "CannedResponseUsedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    },
  • "usedCannedResponses": [
    ]
}

conversation.created

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationCreatedEvent"
Value: "ConversationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.ended

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationEndedEvent"
Value: "ConversationEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

endComment
string

The comment provided when ending the conversation. May be null.

{
  • "$_type": "ConversationEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    },
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endPerson": {
    },
  • "endComment": "string"
}

conversation.message_state

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationMessageStateEvent"
Value: "ConversationMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageId
string

The id of the message which state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

conversationId
string

The conversation to which the message belongs to

{
  • "$_type": "ConversationMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "conversationId": "string"
}

conversation.new_message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationNewMessageEvent"
Value: "ConversationNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "ConversationNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    }
}

conversation.offboarding

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationOffboardingEvent"
Value: "ConversationOffboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

endComment
string

The comment provided when ending the conversation. May be null.

{
  • "$_type": "ConversationOffboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    },
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endPerson": {
    },
  • "endComment": "string"
}

conversation.onboarding

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationOnboardingEvent"
Value: "ConversationOnboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationOnboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.participation.activated

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationActivatedEvent"
Value: "ParticipationActivatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationActivatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.conversation_rated

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationConversationRatedEvent"
Value: "ParticipationConversationRatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationConversationRatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.created

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationCreatedEvent"
Value: "ParticipationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.hidden

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationHiddenEvent"
Value: "ParticipationHiddenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationHiddenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.left

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationLeftEvent"
Value: "ParticipationLeftEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationLeftEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.offboarding

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationOffboardingEvent"
Value: "ParticipationOffboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationOffboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.onboarding

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationOnboardingEvent"
Value: "ParticipationOnboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationOnboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.unhidden

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationUnhiddenEvent"
Value: "ParticipationUnhiddenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationUnhiddenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.participation.updated

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ParticipationUpdatedEvent"
Value: "ParticipationUpdatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationUpdatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

conversation.queued

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationQueuedEvent"
Value: "ConversationQueuedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationQueuedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.reboarding

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationReboardingEvent"
Value: "ConversationReboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationReboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.recording_available

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationRecordingAvailableEvent"
Value: "ConversationRecordingAvailableEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

Id of the conversation this recording belongs to

blobStoreId
string

The blob store id of the actual recording.

mimeType
string

The mime type of the recording

totalSize
integer <int64>

The total size in bytes of this recording

Array of objects (DownloadLink) [ items ]

URLs to download the recording. The URLs are only accessible to authenticated users that have access to the referenced conversation. Authentication is possible with basic authentication or a valid session cookie.

recordingStartTimestamp
integer <int64>

utc timestamp when the conversation recording has started

recordingEndTimestamp
integer <int64>

utc timestamp when the conversation recording has ended

endReason
string (ERecordingEndReason)
Enum: "NORMAL" "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["NORMAL: Recording ended normally","ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
{
  • "$_type": "ConversationRecordingAvailableEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "blobStoreId": "string",
  • "mimeType": "string",
  • "totalSize": 0,
  • "downloadLinks": [
    ],
  • "recordingStartTimestamp": 0,
  • "recordingEndTimestamp": 0,
  • "endReason": "NORMAL"
}

conversation.recording_failed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationRecordingFailedEvent"
Value: "ConversationRecordingFailedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation this recording belongs to

recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording has started. Null if the recording failed to start.

failureReason
string (ERecordingFailedReason)
Enum: "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
{
  • "$_type": "ConversationRecordingFailedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0,
  • "failureReason": "ABORT_SYSTEM"
}

conversation.recording_started

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationRecordingStartedEvent"
Value: "ConversationRecordingStartedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation this recording belongs to

recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording started

{
  • "$_type": "ConversationRecordingStartedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0
}

conversation.requeued

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationRequeuedEvent"
Value: "ConversationRequeuedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationRequeuedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.unassigned

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationUnassignedEvent"
Value: "ConversationUnassignedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationUnassignedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

conversation.updated

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ConversationUpdatedEvent"
Value: "ConversationUpdatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationUpdatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

deputy_relationship

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "DeputyRelationshipModificationEvent"
Value: "DeputyRelationshipModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (DeputyRelationship)

Model of a deputy relation ship.
It is a link between one agent and an deputy agent or team

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "DeputyRelationshipModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

domain

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "DomainModificationEvent"
Value: "DomainModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Domain)

Model of a domain

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "DomainModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

file_upload_interceptor.file_rejected

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "InterceptorFileRejectedEvent"
Value: "InterceptorFileRejectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

name
string

The name of the file

mimeType
string

The file's MIME type

length
integer <int64>

The length, or size, of the file in bytes

interceptorId
string

The ID of the file upload interceptor that rejected the file upload

source
string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

personId
string

The ID of the person uploading the file. Depending on the source, this may be null.

conversationId
string

The ID of the conversation where the file is being uploaded. Depending on the source, this may be null.

reason
string

The reason the file upload was rejected

{
  • "$_type": "InterceptorFileRejectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "name": "string",
  • "mimeType": "string",
  • "length": 0,
  • "interceptorId": "string",
  • "source": "BOT",
  • "personId": "string",
  • "conversationId": "string",
  • "reason": "string"
}

ldap_sync_job

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "LdapSyncJobEvent"
Value: "LdapSyncJobEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

numberOfCreatedUsers
integer <int32>

The number of users created in the LDAP sync.

numberOfUpdatedUsers
integer <int32>

The number of users updated in the LDAP sync.

numberOfDeletedUsers
integer <int32>

The number of users deleted in the LDAP sync.

numberOfCreatedTeams
integer <int32>

The number of teams created in the LDAP sync.

numberOfDeletedTeams
integer <int32>

The number of teams deleted in the LDAP sync.

finishedWithError
boolean

Set to true if the LDAP sync finishes with an error.

errorDescription
string

Error description if the LDAP sync finishes with an error.

{
  • "$_type": "LdapSyncJobEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "numberOfCreatedUsers": 0,
  • "numberOfUpdatedUsers": 0,
  • "numberOfDeletedUsers": 0,
  • "numberOfCreatedTeams": 0,
  • "numberOfDeletedTeams": 0,
  • "finishedWithError": true,
  • "errorDescription": "string"
}

message_interceptor.message_rejected

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "MessageRejectedEvent"
Value: "MessageRejectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

severity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

reason
string

The reason the message was rejected.

Should be localized in the the language of the conversation the message belongs to.

{
  • "$_type": "MessageRejectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "message": {
    },
  • "severity": "HIGH",
  • "reason": "string"
}

named_area

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "NamedAreaModificationEvent"
Value: "NamedAreaModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (NamedArea)

Model of named areas. They can either be domains or meta tags

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "NamedAreaModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

outbound.ping

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PingRequest"
Value: "PingRequest"
accountId
string
serviceName
string
pingId
string

A random ID that identifies this ping request. The response to the request must have the same ID.

{
  • "$_type": "PingRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "pingId": "string"
}

person

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PersonModificationEvent"
Value: "PersonModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

person_label

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PersonLabelModificationEvent"
Value: "PersonLabelModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonLabel)

Model of a person label.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonLabelModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

person_visibility_rule

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PersonVisibilityRuleModificationEvent"
Value: "PersonVisibilityRuleModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonVisibilityRuleData)

Model of a person visibility rule.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonVisibilityRuleModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

pin.created

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PinCreatedEvent"
Value: "PinCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the pin event with the token.
Only one link may be used.

{
  • "$_type": "PinCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

pin.redeemed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PinRedeemedEvent"
Value: "PinRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "PinRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "redeemingPerson": {
    }
}

pin.renewed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PinRenewedEvent"
Value: "PinRenewedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "PinRenewedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

pin.revoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "PinRevokedEvent"
Value: "PinRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

{
  • "$_type": "PinRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0
}

ping

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "WebhookPingEvent"
Value: "WebhookPingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (WebhookRegistration)

Model of a webhook registration. Registered webhooks for certain events are stored inside this model.

{
  • "$_type": "WebhookPingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "webhookConfiguration": {
    }
}

push_notification.deputy_delegation

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "DeputyDelegationPushNotificationEvent"
Value: "DeputyDelegationPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation delegated to the deputy

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "DeputyDelegationPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string",
  • "primaryAgentPerson": {
    }
}

push_notification.inbound_request

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "InboundRequestPushNotificationEvent"
Value: "InboundRequestPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

{
  • "$_type": "InboundRequestPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string"
}

push_notification.incoming_call

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "IncomingCallPushNotificationEvent"
Value: "IncomingCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

callStartTimestamp
integer <int64>

Timestamp when the call started

callerName
string

Name of the person calling

callerPersonId
string

Person id of the person calling

{
  • "$_type": "IncomingCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE",
  • "callType": "AUDIO",
  • "callStartTimestamp": 0,
  • "callerName": "string",
  • "callerPersonId": "string"
}

push_notification.missed_call

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "MissedCallPushNotificationEvent"
Value: "MissedCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

callStartTimestamp
integer <int64>

Timestamp when the call started

callerName
string

Name of the person calling

callerPersonId
string

Person ID of the person calling

callEndReason
string (ECallParticipationEndReason)
Enum: "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "MISSED_BECAUSE_UNAVAILABLE" "TERMINATED_BY_PARTICIPANT" "TERMINATED_BY_SYSTEM_ABORT"
enum-descriptions: ["MISSED_BECAUSE_TIMEOUT: The participation was ended because of a timeout on the participant's side.","MISSED_BECAUSE_TERMINATED: The participation ended because the initiator terminated the call before the other participant answered it","MISSED_BECAUSE_UNAVAILABLE: The participation ended because nobody was available to answer the call","TERMINATED_BY_PARTICIPANT: The participation ended normally","TERMINATED_BY_SYSTEM_ABORT: The participation ended because the system aborted the call"]

Determines the reason why the participation on a call ended.

{
  • "$_type": "MissedCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE",
  • "callType": "AUDIO",
  • "callStartTimestamp": 0,
  • "callerName": "string",
  • "callerPersonId": "string",
  • "callEndReason": "MISSED_BECAUSE_TIMEOUT"
}

push_notification.new_message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "NewMessagePushNotificationEvent"
Value: "NewMessagePushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

messageId
string

Id of the message

messageText
string

Text of the message

messageSendTimestamp
integer <int64>

Timestamp when the message was sent

messageServerTimestamp
integer <int64>

Timestamp when the message was received by the server.

senderName
string

Name of the sender, can be null if the message was sent by the system.

senderPersonId
string

Person id of the sender, can be null if the message was sent by the system.

notificationCount
integer <int32>

Number of notifications (i.e. unread messages) in this conversation

recipientNotificationCount
integer <int32>

Number of notifications (i.e. unread messages) the recipient person has in total

{
  • "$_type": "NewMessagePushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "messageId": "string",
  • "messageText": "string",
  • "messageSendTimestamp": 0,
  • "messageServerTimestamp": 0,
  • "senderName": "string",
  • "senderPersonId": "string",
  • "notificationCount": 0,
  • "recipientNotificationCount": 0
}

push_notification.read_message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ReadMessagePushNotificationEvent"
Value: "ReadMessagePushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

messageId
string

Id of the message

readTimestamp
integer <int64>

Timestamp when the message was read.

notificationCount
integer <int32>

Number of notifications (i.e. unread messages) in this conversation

recipientNotificationCount
integer <int32>

Number of notifications (i.e. unread messages) the recipient person has in total

{
  • "$_type": "ReadMessagePushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "messageId": "string",
  • "readTimestamp": 0,
  • "notificationCount": 0,
  • "recipientNotificationCount": 0
}

push_notification.revoke_call

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "RevokeCallPushNotificationEvent"
Value: "RevokeCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

{
  • "$_type": "RevokeCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE"
}

push_notification.revoke_deputy_delegation

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "RevokeDeputyDelegationPushNotificationEvent"
Value: "RevokeDeputyDelegationPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation delegated to the deputy

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "RevokeDeputyDelegationPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string",
  • "primaryAgentPerson": {
    }
}

push_notification.revoke_inbound_request

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "RevokeInboundRequestPushNotificationEvent"
Value: "RevokeInboundRequestPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

{
  • "$_type": "RevokeInboundRequestPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string"
}

team

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "TeamModificationEvent"
Value: "TeamModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Team)

Model of a team. A team consist out of multiple users. For each account there is at least the default team.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "TeamModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

user

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "UserModificationEvent"
Value: "UserModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "UserModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

visitor_invitation.created

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "VisitorInvitationCreatedEvent"
Value: "VisitorInvitationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "VisitorInvitationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

visitor_invitation.redeemed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "VisitorInvitationRedeemedEvent"
Value: "VisitorInvitationRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "VisitorInvitationRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "redeemingPerson": {
    }
}

visitor_invitation.renewed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "VisitorInvitationRenewedEvent"
Value: "VisitorInvitationRenewedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "VisitorInvitationRenewedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

visitor_invitation.revoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "VisitorInvitationRevokedEvent"
Value: "VisitorInvitationRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

{
  • "$_type": "VisitorInvitationRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0
}

visitor_person_state.changed

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "VisitorPersonStateChangedEvent"
Value: "VisitorPersonStateChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (VisitorPersonStateData)

State data of a visitor person

{
  • "$_type": "VisitorPersonStateChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "personState": {
    }
}

For custom actions

custom_conversation_action.invoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CustomConversationActionInvocationEvent"
Value: "CustomConversationActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "CustomConversationActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    }
}

custom_message_action.invoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CustomMessageActionInvocationEvent"
Value: "CustomMessageActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "CustomMessageActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "message": {
    }
}

custom_person_action.invoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CustomPersonActionInvocationEvent"
Value: "CustomPersonActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "CustomPersonActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "person": {
    }
}

outbound.custom_conversation_action.invoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CustomConversationActionInvocationRequest"
Value: "CustomConversationActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "CustomConversationActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    }
}

outbound.custom_message_action.invoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CustomMessageActionInvocationRequest"
Value: "CustomMessageActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "CustomMessageActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "message": {
    }
}

outbound.custom_person_action.invoked

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "CustomPersonActionInvocationRequest"
Value: "CustomPersonActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "CustomPersonActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "person": {
    }
}

For suggestion sources

outbound.conversation.chat_suggestion

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "ChatSuggestionRequest"
Value: "ChatSuggestionRequest"
accountId
string
serviceName
string
suggestionId
string

Unique ID of the request

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

Array of any (MessageData) [ items ]

The messages for which the person is requesting a suggestion

object (ChatSuggestionRequestCapabilities)
{
  • "$_type": "ChatSuggestionRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "suggestionId": "string",
  • "requestingPerson": {
    },
  • "conversation": {
    },
  • "relatedMessages": [
    ],
  • "capabilities": {
    }
}

For message interceptors

message_interceptor.new_message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "InterceptorNewMessageEvent"
Value: "InterceptorNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageApiToken
string

The token to approve, modify, or reject the message

any (MessageData)

Base class for all conversation messages

conversationLanguage
string

The language of the conversation

{
  • "$_type": "InterceptorNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageApiToken": "string",
  • "conversationMessage": {
    },
  • "conversationLanguage": "string"
}

outbound.message_interceptor.new_message

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "InterceptorNewMessageRequest"
Value: "InterceptorNewMessageRequest"
accountId
string
serviceName
string
any (MessageData)

Base class for all conversation messages

conversationLanguage
string

The language of the conversation

{
  • "$_type": "InterceptorNewMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "conversationMessage": {
    },
  • "conversationLanguage": "string"
}

For file interceptors

file_upload_interceptor.new_file

The following HTTP request body is sent as a POST request on the URL used to register the callback:

$_type
string
Default: "InterceptorNewFileEvent"
Value: "InterceptorNewFileEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

apiToken
string

The token to get the message's content and approve or reject the message

name
string

The name of the file

mimeType
string

The file's MIME type

length
integer <int64>

The length, or size, of the file in bytes

downloadLink
string

The link to retrieve the file's contents

source
string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationId
string

The ID of the conversation where the file is being uploaded. Depending on the source, this may be null.

{
  • "$_type": "InterceptorNewFileEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "apiToken": "string",
  • "name": "string",
  • "mimeType": "string",
  • "length": 0,
  • "downloadLink": "string",
  • "source": "BOT",
  • "person": {
    },
  • "conversationId": "string"
}

Schemas

AcceptLinkData

$_type
string
Default: "AcceptLinkData"
Value: "AcceptLinkData"
accountId
string

The account ID of the conversation

conversationId
string

The conversation ID

Array of objects (ConversationLink) [ items ]

List of links to accept the invitation and open the corresponding conversation.
Only one link may be used.

expirationTimestamp
integer <int64>

Unix timestamp after which the invitation is no longer valid

{
  • "$_type": "AcceptLinkData",
  • "accountId": "string",
  • "conversationId": "string",
  • "links": [
    ],
  • "expirationTimestamp": 0
}

AcceptTimestampCallSearchFilter

$_type
string
Default: "AcceptTimestampCallSearchFilter"
Value: "AcceptTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "AcceptTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

Account

$_type
string
Default: "Account"
Value: "Account"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

name
string

The name of the account. Maximum length of 250 characters and can not be empty.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object

A map of localized versions of the name of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

{
  • "$_type": "Account",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "name": "string",
  • "avatar": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    },
  • "text": {
    }
}

AccountChangeAuditChangeSearchFilter

$_type
string
Default: "AccountChangeAuditChangeSearchFilter"
Value: "AccountChangeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (BooleanOperator)
{
  • "$_type": "AccountChangeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AccountData

$_type
string
Default: "AccountData"
Value: "AccountData"
id
string

Unique id of the account.

displayName
string

Display-Name of the account

object

Localized Display-Name of the account

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the account: id that can be expanded.

{
  • "$_type": "AccountData",
  • "id": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string"
}

AccountIngressStatus

$_type
string
Default: "AccountIngressStatus"
Value: "AccountIngressStatus"
enabled
boolean

Whether or not ingress should be enabled for the account.
This property can be changed by IAccountStorageService.enableAccountIngress and IAccountStorageService.disableAccountIngress

ingressStatus
string (EIngressStatus)
Enum: "ACCOUNT" "GLOBAL" "BLOCKED"
enum-descriptions: ["ACCOUNT: Account-specific ingress enabled (using custom origin)","GLOBAL: Account is accessible via global ingress","BLOCKED: Account is blocked, i.e. because ingress is configured but not valid"]

How ingress is handled

migrationStatus
string (EIngressMigrationStatus)
Enum: "MIGRATING" "DONE_INGRESS_ACTIVE" "DONE_INGRESS_INACTIVE" "ERROR"
enum-descriptions: ["MIGRATING: The system is migrating the user uniqueness scope to its desired state (according to the ingress_enabled flag). If ingress_enabled is true, the username_scope column of all existing users is updated to the accountId. If ingress_enabled is false, then the username_scope column of all existing users is updated to GLOBAL.","DONE_INGRESS_ACTIVE: All users are migrated and the account is active with ingress (if configuration is valid)","DONE_INGRESS_INACTIVE: All users are migrated and the account is active without ingress","ERROR: The migration has failed (for example because the account contains usernames that also exist in a different account that isn't using ingress). The migration can be retried using the 'try again' action. If doing so isn't too expensive, the UI shows a list of the users causing conflicts."]

Status of the ingress activation. This status represents the status of the users in the account regarding the scope of the username uniqueness. In order for an account ingress to be fully active, the following conditions must be met: ingress_enabled=true, ingress_activation_status=ACTIVE and ingress configuration is valid.

errorDetails
Array of strings

High severity ingress configuration and migration issues that arose during the last ingress activation or deactivation process. Any error will block ingress from being activated or deactivated.

warningDetails
Array of strings

Low severity ingress configuration and migration issues that arose during the last ingress activation or deactivation process. Ingress can still be successfully activated or deactivated if warnings are present.

{
  • "$_type": "AccountIngressStatus",
  • "enabled": true,
  • "ingressStatus": "ACCOUNT",
  • "migrationStatus": "MIGRATING",
  • "errorDetails": [
    ],
  • "warningDetails": [
    ]
}

AccountList

$_type
string
Default: "AccountList"
Value: "AccountList"
Array of objects (Account) [ items ]

The list of mapped entities

{
  • "$_type": "AccountList",
  • "items": [
    ]
}

AccountModificationEvent

$_type
string
Default: "AccountModificationEvent"
Value: "AccountModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Account)

Model of an account

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "AccountModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

AccountOrderBy

$_type
string
Default: "AccountOrderBy"
Value: "AccountOrderBy"
field
string (EAccountOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "AccountOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

AccountQuery

$_type
string
Default: "AccountQuery"
Value: "AccountQuery"
Array of any (AccountSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AccountOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "AccountQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

AccountQuotaUsageData

$_type
string
Default: "AccountQuotaUsageData"
Value: "AccountQuotaUsageData"
object (QuotaUsageData)

Information on the current quota usage value and its limit

object (QuotaUsageData)

Information on the current quota usage value and its limit

object (QuotaUsageData)

Information on the current quota usage value and its limit

object (QuotaUsageData)

Information on the current quota usage value and its limit

{
  • "$_type": "AccountQuotaUsageData",
  • "apiKeys": {
    },
  • "domains": {
    },
  • "teams": {
    },
  • "users": {
    }
}

AccountResult

$_type
string
Default: "AccountResult"
Value: "AccountResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Account) [ items ]

The returned list of entities

{
  • "$_type": "AccountResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

AccountSearchFilter

$_type
string
Default: "CreationTimestampAccountSearchFilter"
Value: "CreationTimestampAccountSearchFilter"
field
string (EAccountSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampAccountSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AccountSecret

$_type
string
Default: "AccountSecret"
Value: "AccountSecret"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

secretKey
string
{
  • "$_type": "AccountSecret",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "secretKey": "string"
}

AccountSidSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "AccountSidSmsExternalMessengerChannelSearchFilter"
Value: "AccountSidSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
{
  • "$_type": "AccountSidSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

AccountTranslation

$_type
string
Default: "AccountTranslation"
Value: "AccountTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "AccountTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

AccountUserContainer

$_type
string
Default: "AccountUserContainer"
Value: "AccountUserContainer"
object (Account)

Model of an account

object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

{
  • "$_type": "AccountUserContainer",
  • "account": {
    },
  • "adminUser": {
    }
}

AgentAvailabilityStateData

$_type
string
Default: "AgentAvailabilityStateData"
Value: "AgentAvailabilityStateData"
availabilityState
string (EAvailabilityState)
Enum: "AVAILABLE" "BUSY" "UNAVAILABLE"
enum-descriptions: ["AVAILABLE: There is at least one agent available for the specified named area and locale.","BUSY: There is at least one agent watching the inbound queue for the specified named area and locale but the max capacity of parallel conversations is reached. It is very likely, that an agent will be available in a short time.","UNAVAILABLE: There is currently no agent handling any inbound queue items. It is very unlikely, that an agent will be available in a short time."]

Possible state for agents availability

isAvailable
boolean

Whether the agent is available for inbound conversation requests

{
  • "$_type": "AgentAvailabilityStateData",
  • "availabilityState": "AVAILABLE",
  • "isAvailable": true
}

AgentForwardingCreatedEvent

$_type
string
Default: "AgentForwardingCreatedEvent"
Value: "AgentForwardingCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

Array of objects (ConversationLink) [ items ]

List of links to accept the agent forwarding event with the token.
Only one link may be used.

{
  • "$_type": "AgentForwardingCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "links": [
    ]
}

AgentForwardingRedeemedEvent

$_type
string
Default: "AgentForwardingRedeemedEvent"
Value: "AgentForwardingRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AgentForwardingRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "redeemingPerson": {
    }
}

AgentForwardingRevokedEvent

$_type
string
Default: "AgentForwardingRevokedEvent"
Value: "AgentForwardingRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

{
  • "$_type": "AgentForwardingRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string"
}

AgentInvitationCreatedEvent

$_type
string
Default: "AgentInvitationCreatedEvent"
Value: "AgentInvitationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

Array of objects (ConversationLink) [ items ]

List of links to accept the agent invitation event with the token.
Only one link may be used.

{
  • "$_type": "AgentInvitationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true,
  • "links": [
    ]
}

AgentInvitationRedeemedEvent

$_type
string
Default: "AgentInvitationRedeemedEvent"
Value: "AgentInvitationRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AgentInvitationRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true,
  • "redeemingPerson": {
    }
}

AgentInvitationRevokedEvent

$_type
string
Default: "AgentInvitationRevokedEvent"
Value: "AgentInvitationRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (AgentTargetData)

Target of an 'agent forwarding' or an 'agent invitation' event which can be the agent directly (as PersonData) or a team (as TeamData). In this second case multiple agents are targeted by the event.

comment
string

Text provided by the creator for the target

joinHidden
boolean

Determines if the target is added as a hidden agent once the invitation is redeemed

{
  • "$_type": "AgentInvitationRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "comment": "string",
  • "joinHidden": true
}

AgentLabelSelectionPersonVisibilityRuleSearchFilter

$_type
string
Default: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
Value: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (VisibilityRuleLabelSelectionOperator)
{
  • "$_type": "AgentLabelSelectionPersonVisibilityRuleSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

AgentPersonStateChangedEvent

$_type
string
Default: "AgentPersonStateChangedEvent"
Value: "AgentPersonStateChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (AgentPersonStateData)

State data of an agent person

{
  • "$_type": "AgentPersonStateChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "personState": {
    }
}

AgentPersonStateData

$_type
string
Default: "AgentPersonStateData"
Value: "AgentPersonStateData"
personId
string

The ID of the person this state data belongs to

onlineState
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

type
string (EPersonStateType)
Enum: "AGENT" "VISITOR"
enum-descriptions: ["AGENT","VISITOR"]
statusMessage
string

The agent's status message. The message is displayed in the person's details in the UI.

pauseNotificationsMode
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

pauseNotificationsState
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

pauseNotificationsEndTimestamp
integer <int64>

The Unix timestamp (ms) when pausing notifications should end

Array of objects (AutoPauseNotificationsReasonData) [ items ]

A list of reasons based on which the agent's notifications should be auto-paused

{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

AgentPersonStateResult

$_type
string
Default: "AgentPersonStateResult"
Value: "AgentPersonStateResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (AgentPersonStateData) [ items ]

The returned list of entities

{
  • "$_type": "AgentPersonStateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

AgentStateOrderBy

$_type
string
Default: "AgentStateOrderBy"
Value: "AgentStateOrderBy"
field
string (EAgentStateOrderByField)
Enum: "PERSON_ID" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute","STATUS_MESSAGE: Sort by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Sort by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Sort by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Sort by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Sort by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "AgentStateOrderBy",
  • "field": "PERSON_ID",
  • "order": "ASCENDING"
}

AgentStateQuery

$_type
string
Default: "AgentStateQuery"
Value: "AgentStateQuery"
Array of any (AgentStateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AgentStateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "AgentStateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

AgentStateSearchFilter

$_type
string
Default: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
Value: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (TimestampOperator)
Example
{
  • "$_type": "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter",
  • "field": "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP",
  • "operator": {
    }
}

AgentTargetData

$_type
string
Default: "PersonData"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Example
{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

AgentUserIdDeputyRelationshipSearchFilter

$_type
string
Default: "AgentUserIdDeputyRelationshipSearchFilter"
Value: "AgentUserIdDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AgentUserIdDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

AllEqualIdListOperator

$_type
string
Default: "AllEqualIdListOperator"
Value: "AllEqualIdListOperator"
type
string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
{
  • "$_type": "AllEqualIdListOperator",
  • "type": "ALL_OF",
  • "values": [
    ]
}

AllOfIdListOperator

$_type
string
Default: "AllOfIdListOperator"
Value: "AllOfIdListOperator"
type
string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
{
  • "$_type": "AllOfIdListOperator",
  • "type": "ALL_OF",
  • "values": [
    ]
}

AndCompoundOperator

$_type
string
Default: "AndCompoundOperator"
Value: "AndCompoundOperator"
type
string (ECompoundOperatorType)
Enum: "AND" "OR"
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
{
  • "$_type": "AndCompoundOperator",
  • "type": "AND"
}

AnyOfIdListOperator

$_type
string
Default: "AnyOfIdListOperator"
Value: "AnyOfIdListOperator"
type
string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
{
  • "$_type": "AnyOfIdListOperator",
  • "type": "ALL_OF",
  • "values": [
    ]
}

ApiKey

$_type
string
Default: "ApiKey"
Value: "ApiKey"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

apiKey
string

Api key string. When creating the entity it can be set to a specific value or omitted (in the second case a random value will be generated by the server). Can not be updated.

name
string

Name of the api key. Maximum of 250 characters. Can be omitted, but should not.

description
string

Description of the api key. E.g. where or for what it is used. Maximum of 500 characters. Can be omitted.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "ApiKey",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "apiKey": "string",
  • "name": "string",
  • "description": "string",
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

ApiKeyApiKeySearchFilter

$_type
string
Default: "ApiKeyApiKeySearchFilter"
Value: "ApiKeyApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "ApiKeyApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ApiKeyList

$_type
string
Default: "ApiKeyList"
Value: "ApiKeyList"
Array of objects (ApiKey) [ items ]

The list of mapped entities

{
  • "$_type": "ApiKeyList",
  • "items": [
    ]
}

ApiKeyModificationEvent

$_type
string
Default: "ApiKeyModificationEvent"
Value: "ApiKeyModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (ApiKey)

Model of an ApiKey. Api keys identify the usage of unblu to a certain account. There can be multiple api keys per account to define different configurations

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "ApiKeyModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

ApiKeyOrderBy

$_type
string
Default: "ApiKeyOrderBy"
Value: "ApiKeyOrderBy"
field
string (EApiKeyOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","API_KEY: Sort by the 'apiKey' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ApiKeyOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ApiKeyQuery

$_type
string
Default: "ApiKeyQuery"
Value: "ApiKeyQuery"
Array of any (ApiKeySearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ApiKeyOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ApiKeyQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ApiKeyResult

$_type
string
Default: "ApiKeyResult"
Value: "ApiKeyResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ApiKey) [ items ]

The returned list of entities

{
  • "$_type": "ApiKeyResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ApiKeySearchFilter

$_type
string
Default: "ApiKeyApiKeySearchFilter"
Value: "ApiKeyApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
Example
{
  • "$_type": "ApiKeyApiKeySearchFilter",
  • "field": "API_KEY",
  • "operator": {
    }
}

ApprovalRequestMessageData

$_type
string
Default: "ApprovalRequestMessageData"
Value: "ApprovalRequestMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

{
  • "$_type": "ApprovalRequestMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING"
}

AssigneePersonIdConversationHistorySearchFilter

$_type
string
Default: "AssigneePersonIdConversationHistorySearchFilter"
Value: "AssigneePersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AssigneePersonIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

AssigneePersonIdConversationSearchFilter

$_type
string
Default: "AssigneePersonIdConversationSearchFilter"
Value: "AssigneePersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AssigneePersonIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AssignmentRequestCreatedEvent

$_type
string
Default: "AssignmentRequestCreatedEvent"
Value: "AssignmentRequestCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ConversationLink) [ items ]

List of links to accept the assignment request event with the token.
Only one link may be used.

{
  • "$_type": "AssignmentRequestCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "links": [
    ]
}

AssignmentRequestRedeemedEvent

$_type
string
Default: "AssignmentRequestRedeemedEvent"
Value: "AssignmentRequestRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "AssignmentRequestRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "redeemingPerson": {
    }
}

AssignmentRequestRevokedEvent

$_type
string
Default: "AssignmentRequestRevokedEvent"
Value: "AssignmentRequestRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

{
  • "$_type": "AssignmentRequestRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    }
}

AssignmentRequestUnansweredEvent

$_type
string
Default: "AssignmentRequestUnansweredEvent"
Value: "AssignmentRequestUnansweredEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ContextPersonInfo)

Information about the context person of a conversation. Normally send together with webhook events.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ConversationLink) [ items ]

List of links to accept the agent invitation event with the token.
Only one link may be used.

{
  • "$_type": "AssignmentRequestUnansweredEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "contextPersonInfo": {
    },
  • "target": {
    },
  • "links": [
    ]
}

AuditChange

$_type
string
Default: "AuditChange"
Value: "AuditChange"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

accountId
string
interactionType
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
interactionName
string
userName
string
userId
string
userRole
string
userAnonymous
boolean
userVirtual
boolean
userPropagated
boolean
userImpersonationType
string
impersonationAccountId
string
impersonationUserId
string
userAuthInfo
string
sourceIp
string
productVersion
string
changeType
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
entityType
string
entityName
string
entityId
string
oldState
string
newState
string
ownerType
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

ownerId
string
ownerEntity
string
globalChange
boolean
  • SUPER_ADMIN can view:
     (globalChange==true or (accountChange==true and accountId=<superadmin's account id>)) 
  • ADMIN can view:
     accountChange==true and accountId=<admin's account id> 
accountChange
boolean
  • SUPER_ADMIN can view:
     (globalChange==true or (accountChange==true and accountId=<superadmin's account id>)) 
  • ADMIN can view:
     accountChange==true and accountId=<admin's account id> 
{
  • "$_type": "AuditChange",
  • "id": "string",
  • "creationTimestamp": 0,
  • "accountId": "string",
  • "interactionType": "API",
  • "interactionName": "string",
  • "userName": "string",
  • "userId": "string",
  • "userRole": "string",
  • "userAnonymous": true,
  • "userVirtual": true,
  • "userPropagated": true,
  • "userImpersonationType": "string",
  • "impersonationAccountId": "string",
  • "impersonationUserId": "string",
  • "userAuthInfo": "string",
  • "sourceIp": "string",
  • "productVersion": "string",
  • "changeType": "CREATE",
  • "entityType": "string",
  • "entityName": "string",
  • "entityId": "string",
  • "oldState": "string",
  • "newState": "string",
  • "ownerType": "GLOBAL",
  • "ownerId": "string",
  • "ownerEntity": "string",
  • "globalChange": true,
  • "accountChange": true
}

AuditChangeInteractionTypeOperator

$_type
string
Default: "EqualsAuditChangeInteractionTypeOperator"
Value: "EqualsAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
Example
{
  • "$_type": "EqualsAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "value": "API"
}

AuditChangeOrderBy

$_type
string
Default: "AuditChangeOrderBy"
Value: "AuditChangeOrderBy"
field
string (EAuditChangeOrderByField)
Enum: "ID" "CREATION_TIMESTAMP" "ENTITY_TYPE" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["ID","CREATION_TIMESTAMP","ENTITY_TYPE","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "AuditChangeOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

AuditChangeQuery

$_type
string
Default: "AuditChangeQuery"
Value: "AuditChangeQuery"
Array of any (AuditChangeSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (AuditChangeOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "AuditChangeQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

AuditChangeResult

$_type
string
Default: "AuditChangeResult"
Value: "AuditChangeResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (AuditChange) [ items ]

The returned list of entities

{
  • "$_type": "AuditChangeResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

AuditChangeSearchFilter

$_type
string
Default: "AccountChangeAuditChangeSearchFilter"
Value: "AccountChangeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (BooleanOperator)
Example
{
  • "$_type": "AccountChangeAuditChangeSearchFilter",
  • "field": "ACCOUNT_CHANGE",
  • "operator": {
    }
}

AuditChangeType

string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
"CREATE"

AuditChangeTypeOperator

$_type
string
Default: "EqualsAuditChangeTypeOperator"
Value: "EqualsAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
Example
{
  • "$_type": "EqualsAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "value": "CREATE"
}

AuditInteractionType

string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
"API"

AuthenticationTokenCreationResult

$_type
string
Default: "AuthenticationTokenCreationResult"
Value: "AuthenticationTokenCreationResult"
token
string
{
  • "$_type": "AuthenticationTokenCreationResult",
  • "token": "string"
}

AuthenticatorCreateAuthenticationTokenBody

username
string

The username for which the token is created

password
string

The password of the user to authenticate

{
  • "username": "string",
  • "password": "string"
}

AuthenticatorImpersonateBody

username
string

If set and userid is set to null, the user is searched by the name

userId
string

If set, the username is ignored and the user for the given id is impersonated

keepRole
boolean

If true, the impersonated user keeps the SUPER_ADMIN role even if they don't normally have it.

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "username": "string",
  • "userId": "string",
  • "keepRole": true,
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthenticatorLoginBody

username
string

user to use for login

password
string

password to use for login

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "username": "string",
  • "password": "string",
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthenticatorLogoutBody

redirectOnSuccess
string

redirection URL when the operation is successful

{
  • "redirectOnSuccess": "string"
}

AuthenticatorResetImpersonationBody

redirectOnSuccess
string

redirection URL when the operation is successful. Also if nothing needed to be done.

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthenticatorSetDefaultLocaleBody

locale
string

The new locale in the language-tag format (as defined in the IETF BCP 47) which should be used (e.g. en - english, de - german, fr - french, it - italian)

{
  • "locale": "string"
}

AuthenticatorSwitchToAccountBody

accountId
string

the account id to impersonate on

redirectOnSuccess
string

redirection URL when the operation is successful

redirectOnFailure
string

redirection URL when the operation is not successful

{
  • "accountId": "string",
  • "redirectOnSuccess": "string",
  • "redirectOnFailure": "string"
}

AuthorizationRoleAuditChangeSearchFilter

$_type
string
Default: "AuthorizationRoleAuditChangeSearchFilter"
Value: "AuthorizationRoleAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRoleAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AuthorizationRoleOperator

$_type
string
Default: "EqualsAuthorizationRoleOperator"
Value: "EqualsAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

Example
{
  • "$_type": "EqualsAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "value": "SUPER_ADMIN"
}

AuthorizationRolePersonSearchFilter

$_type
string
Default: "AuthorizationRolePersonSearchFilter"
Value: "AuthorizationRolePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRolePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

AuthorizationRolePersonTypedSearchFilter

$_type
string
Default: "AuthorizationRolePersonTypedSearchFilter"
Value: "AuthorizationRolePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRolePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

AuthorizationRoleUserSearchFilter

$_type
string
Default: "AuthorizationRoleUserSearchFilter"
Value: "AuthorizationRoleUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (AuthorizationRoleOperator)
{
  • "$_type": "AuthorizationRoleUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

AutoPauseNotificationsReasonData

$_type
string
Default: "AutoPauseNotificationsReasonData"
Value: "AutoPauseNotificationsReasonData"
sourceId
string

A custom identifier for the reason to auto-pause notifications.
Max length is 36 characters.

displayName
string

The name of the reason to auto-pause notifications that will appear in the UI

expirationTimestamp
integer <int64>

The Unix timestamp (ms) when the auto-pause expires

{
  • "$_type": "AutoPauseNotificationsReasonData",
  • "sourceId": "string",
  • "displayName": "string",
  • "expirationTimestamp": 0
}

AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter

$_type
string
Default: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
Value: "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (TimestampOperator)
{
  • "$_type": "AutoPauseNotificationsReasonExpirationTimestampAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter

$_type
string
Default: "AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter"
Value: "AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "AutoPauseNotificationsReasonSourceIdAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

Avatar

$_type
string
Default: "Avatar"
Value: "Avatar"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

imageZoomFactor
number <float>

Zoom factor to crop the original image. Must be bigger than 1. If omitted a minimal factor will be computed.

imageXPositionRatio
number <float>

Ratio to determine the horizontal position of the cropping area. Must be between 0 and 1: 0 means moved at the left border, 1 means moved at the right border. If omitted 0.5 will be used.

imageYPositionRatio
number <float>

Ratio to determine the vertical position of the cropping area. Must be between 0 and 1: 0 means moved at the top border, 1 means moved at the bottom border. If omitted 0.5 will be used.

imageRotationAngle
integer <int32>

Clockwise angle in degree (0-380) for rotation. If omitted 0 will be used.

imageData
string

Image content as data URL scheme (RFC2397 - data:[<mediatype>][;base64],<data>)

{
  • "$_type": "Avatar",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "imageZoomFactor": 0,
  • "imageXPositionRatio": 0,
  • "imageYPositionRatio": 0,
  • "imageRotationAngle": 0,
  • "imageData": "string"
}

AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter

$_type
string
Default: "AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter"
Value: "AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "AwaitedPersonTypeChangeTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

AwaitedPersonTypeChangeTimestampConversationSearchFilter

$_type
string
Default: "AwaitedPersonTypeChangeTimestampConversationSearchFilter"
Value: "AwaitedPersonTypeChangeTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "AwaitedPersonTypeChangeTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AwaitedPersonTypeChangedEvent

$_type
string
Default: "AwaitedPersonTypeChangedEvent"
Value: "AwaitedPersonTypeChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "AwaitedPersonTypeChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

AwaitedPersonTypeConversationHistorySearchFilter

$_type
string
Default: "AwaitedPersonTypeConversationHistorySearchFilter"
Value: "AwaitedPersonTypeConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (AwaitedPersonTypeOperator)
{
  • "$_type": "AwaitedPersonTypeConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

AwaitedPersonTypeConversationSearchFilter

$_type
string
Default: "AwaitedPersonTypeConversationSearchFilter"
Value: "AwaitedPersonTypeConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (AwaitedPersonTypeOperator)
{
  • "$_type": "AwaitedPersonTypeConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

AwaitedPersonTypeOperator

$_type
string
Default: "EqualsAwaitedPersonTypeOperator"
Value: "EqualsAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

Example
{
  • "$_type": "EqualsAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

BooleanOperator

$_type
string
Default: "EqualsBooleanOperator"
Value: "EqualsBooleanOperator"
type
string (EBooleanOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
value
boolean
Example
{
  • "$_type": "EqualsBooleanOperator",
  • "type": "EQUALS",
  • "value": true
}

BotBoardingOfferResponse

$_type
string
Default: "BotBoardingOfferResponse"
Value: "BotBoardingOfferResponse"
offerAccepted
boolean
{
  • "$_type": "BotBoardingOfferResponse",
  • "offerAccepted": true
}

BotDialogClosedEvent

$_type
string
Default: "BotDialogClosedEvent"
Value: "BotDialogClosedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

conversationId
string

The ID of the conversation this dialog belongs to.

counterpartPersonId
string

The ID of the person the bot is talking to.

{
  • "$_type": "BotDialogClosedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "conversationId": "string",
  • "counterpartPersonId": "string"
}

BotDialogClosedRequest

$_type
string
Default: "BotDialogClosedRequest"
Value: "BotDialogClosedRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

conversationId
string

The ID of the conversation this dialog belongs to.

counterpartPersonId
string

The ID of the person the bot is talking to.

{
  • "$_type": "BotDialogClosedRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "conversationId": "string",
  • "counterpartPersonId": "string"
}

BotDialogClosedResponse

$_type
string
Default: "BotDialogClosedResponse"
Value: "BotDialogClosedResponse"
{
  • "$_type": "BotDialogClosedResponse"
}

BotDialogCounterpartChanged

$_type
string
Default: "BotDialogCounterpartChanged"
Value: "BotDialogCounterpartChanged"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotDialogCounterpartChanged",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "oldCounterpartPerson": {
    },
  • "newCounterpartPerson": {
    }
}

BotDialogCounterpartChangedRequest

$_type
string
Default: "BotDialogCounterpartChangedRequest"
Value: "BotDialogCounterpartChangedRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotDialogCounterpartChangedRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "oldCounterpartPerson": {
    },
  • "newCounterpartPerson": {
    }
}

BotDialogCounterpartChangedResponse

$_type
string
Default: "BotDialogCounterpartChangedResponse"
Value: "BotDialogCounterpartChangedResponse"
{
  • "$_type": "BotDialogCounterpartChangedResponse"
}

BotDialogMessageEvent

$_type
string
Default: "BotDialogMessageEvent"
Value: "BotDialogMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "BotDialogMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "conversationMessage": {
    }
}

BotDialogMessageRequest

$_type
string
Default: "BotDialogMessageRequest"
Value: "BotDialogMessageRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "BotDialogMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "conversationMessage": {
    }
}

BotDialogMessageResponse

$_type
string
Default: "BotDialogMessageResponse"
Value: "BotDialogMessageResponse"
{
  • "$_type": "BotDialogMessageResponse"
}

BotDialogMessageStateEvent

$_type
string
Default: "BotDialogMessageStateEvent"
Value: "BotDialogMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

messageId
string

The ID of the message which state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

botPersonId
string

The ID of the bot that sent the message

conversationId
string

The conversation the message belongs to

{
  • "$_type": "BotDialogMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "botPersonId": "string",
  • "conversationId": "string"
}

BotDialogMessageStateRequest

$_type
string
Default: "BotDialogMessageStateRequest"
Value: "BotDialogMessageStateRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

messageId
string

The ID of the message whose state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

botPersonId
string

The ID of the bot that sent the message

conversationId
string

The conversation the message belongs to

{
  • "$_type": "BotDialogMessageStateRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "botPersonId": "string",
  • "conversationId": "string"
}

BotDialogMessageStateResponse

$_type
string
Default: "BotDialogMessageStateResponse"
Value: "BotDialogMessageStateResponse"
{
  • "$_type": "BotDialogMessageStateResponse"
}

BotDialogOpenEvent

$_type
string
Default: "BotDialogOpenEvent"
Value: "BotDialogOpenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all Bot Web-API service calls to identify the dialog.

dialogType
string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotDialogOpenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "dialogType": "ONBOARDING",
  • "counterpartPerson": {
    },
  • "conversation": {
    }
}

BotDialogOpenRequest

$_type
string
Default: "BotDialogOpenRequest"
Value: "BotDialogOpenRequest"
accountId
string
serviceName
string
dialogToken
string

Token for this dialog. It is present in every dialog webhook and must be passed to all bot web API service calls to identify the dialog.

dialogType
string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotDialogOpenRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "dialogType": "ONBOARDING",
  • "counterpartPerson": {
    },
  • "conversation": {
    }
}

BotDialogOpenResponse

$_type
string
Default: "BotDialogOpenResponse"
Value: "BotDialogOpenResponse"
{
  • "$_type": "BotDialogOpenResponse"
}

BotDialogPostMessage

$_type
string
Default: "BotDialogPostMessage"
Value: "BotDialogPostMessage"
dialogToken
string

The token belonging to the dialog the bot wants the message to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

{
  • "$_type": "BotDialogPostMessage",
  • "dialogToken": "string",
  • "messageData": {
    }
}

BotOffboardingOfferEvent

$_type
string
Default: "BotOffboardingOfferEvent"
Value: "BotOffboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The unique dialog token for this bot, used to identify this offboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

offboardingReason
string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOffboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "offboardingPerson": {
    },
  • "offboardingReason": "FORWARDED",
  • "conversation": {
    }
}

BotOffboardingOfferRequest

$_type
string
Default: "BotOffboardingOfferRequest"
Value: "BotOffboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The unique dialog token for this bot, used to identify this offboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

offboardingReason
string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOffboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "offboardingPerson": {
    },
  • "offboardingReason": "FORWARDED",
  • "conversation": {
    }
}

BotOnboardingOfferEvent

$_type
string
Default: "BotOnboardingOfferEvent"
Value: "BotOnboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The unique dialog token for this bot, used to identify this onboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOnboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "onboardingPerson": {
    },
  • "conversation": {
    }
}

BotOnboardingOfferRequest

$_type
string
Default: "BotOnboardingOfferRequest"
Value: "BotOnboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The unique dialog token for this bot, used to identify this onboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotOnboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "onboardingPerson": {
    },
  • "conversation": {
    }
}

BotParticipantData

$_type
string
Default: "BotParticipantData"
Value: "BotParticipantData"
personId
string

Person ID of the bot

hidden
boolean

Indicates if the bot is a hidden participant

{
  • "$_type": "BotParticipantData",
  • "personId": "string",
  • "hidden": true
}

BotParticipantHistoryData

$_type
string
Default: "BotParticipantHistoryData"
Value: "BotParticipantHistoryData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the bot's participation was created (timestamp when the state was set to EConversationParticipationState.CREATED)

joinedTimestamp
integer <int64>

Unix timestamp (ms) when bot joined (timestamp when the state was set to EConversationParticipationState.ONBOARDING)

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated, may be null (timestamp when the state was set to EConversationParticipationState.ACTIVE)

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when bot started offboarding, may be null (timestamp when the state was set to EConversationParticipationState.OFFBOARDING)

leftTimestamp
integer <int64>

Unix timestamp (ms) when the bot left, may be null (timestamp when the state was set to EConversationParticipationState.ENDED)

hidden
boolean

Indicates whether the bot's participation is hidden in the current conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "BotParticipantHistoryData",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "joinedTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "hidden": true,
  • "person": {
    }
}

BotPersonIdDialogBotSearchFilter

$_type
string
Default: "BotPersonIdDialogBotSearchFilter"
Value: "BotPersonIdDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "BotPersonIdDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

BotPostMessage

$_type
string
Default: "BotPostMessage"
Value: "BotPostMessage"
conversationId
string

The id of the conversation to which this message belongs to

senderPersonId
string

ID of the bot person that sent the message.

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If it is null, all active participations are recipients

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone. Cannot be set for REPLY message type.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

{
  • "$_type": "BotPostMessage",
  • "conversationId": "string",
  • "senderPersonId": "string",
  • "recipientPersonIds": [
    ],
  • "internal": true,
  • "replyToMessageId": "string",
  • "messageData": {
    }
}

BotReboardingOfferEvent

$_type
string
Default: "BotReboardingOfferEvent"
Value: "BotReboardingOfferEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

dialogToken
string

The dialog token for this bot, used to identify this reboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotReboardingOfferEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "dialogToken": "string",
  • "reboardingPerson": {
    },
  • "conversation": {
    }
}

BotReboardingOfferRequest

$_type
string
Default: "BotReboardingOfferRequest"
Value: "BotReboardingOfferRequest"
accountId
string
serviceName
string
dialogToken
string

The dialog token for this bot, used to identify this reboarding via the bot web API

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "BotReboardingOfferRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "dialogToken": "string",
  • "reboardingPerson": {
    },
  • "conversation": {
    }
}

BotsCancelDialogBotTypingIndicatorBody

dialogToken
string

The token that belongs to the bot's dialog

{
  • "dialogToken": "string"
}

BotsCancelPendingDialogQuestionsBody

dialogToken
string

The token belonging to the dialog

{
  • "dialogToken": "string"
}

BotsCancelPendingQuestionBody

conversationId
string

The ID of the conversation the question message was sent to

questionMessageId
string

The ID of the question message that will be canceled

{
  • "conversationId": "string",
  • "questionMessageId": "string"
}

BotsDialogMessageDeliveredBody

dialogToken
string

The token that belongs to the bot's dialog

messageId
string

The ID of the delivered message

{
  • "dialogToken": "string",
  • "messageId": "string"
}

BotsDialogMessageReadBody

dialogToken
string

The token that belongs to the bot's dialog

messageId
string

The ID of the message that was read

{
  • "dialogToken": "string",
  • "messageId": "string"
}

BotsFinishDialogBody

dialogToken
string

The dialog token contained in each bot dialog webhook.

reason
string (EBotDialogFinishReason)
Enum: "HAND_OFF" "SOLVED" "ABORTED"
enum-descriptions: ["HAND_OFF: The bot is done with his part and the next bot can to the on-, re- or offboarding.","SOLVED: The problem of the dialog was solved and therefore no further bots are invoked.","ABORTED: The dialog was not successful and the on-, re- or offboarding has to be aborted."]

Reason why a bot finished a dialog.

{
  • "dialogToken": "string",
  • "reason": "HAND_OFF"
}

BotsRestrictDialogCounterpartBody

dialogToken
string

The dialog token included in each bot dialog webhook

maxChatInputLength
integer <int32>

The maximum number of characters in a message

{
  • "dialogToken": "string",
  • "maxChatInputLength": 0
}

BotsStartDialogBotTypingIndicatorBody

dialogToken
string

The token that belongs to the bot's dialog

{
  • "dialogToken": "string"
}

Call

$_type
string
Default: "Call"
Value: "Call"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

conversationId
string

Conversation ID the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

The call initiator's person ID

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that participant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

endTimestamp
integer <int64>

UTC timestamp (ms) when the call ended

endReason
string (ECallEndReason)
Enum: "NOT_ANSWERED" "ABORTED_BY_INITIATOR" "DECLINED" "DECLINED_BECAUSE_UNAVAILABLE" "LAST_MANDATORY_PARTICIPANT_LEFT" "CONVERSATION_ENDED" "RECORDING_DENIED" "SYSTEM_SHUTDOWN" "UNKNOWN"
enum-descriptions: ["NOT_ANSWERED: The call was not answered","ABORTED_BY_INITIATOR: The initiator aborted the call while it was still ringing","DECLINED: The call was declined","DECLINED_BECAUSE_UNAVAILABLE: The call was declined because all conversation participants called were unavailable","LAST_MANDATORY_PARTICIPANT_LEFT: The call ended because the last mandatory participant left","CONVERSATION_ENDED: The call ended because the conversation ended","RECORDING_DENIED: The call ended because conversation recording was denied","SYSTEM_SHUTDOWN: The call ended because the collaboration server pod was shut down","UNKNOWN: The call ended for another reason"]

The reason a call has ended

Array of objects (CallParticipation) [ items ]
{
  • "$_type": "Call",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0,
  • "endTimestamp": 0,
  • "endReason": "NOT_ANSWERED",
  • "participations": [
    ]
}

CallAcceptedEvent

$_type
string
Default: "CallAcceptedEvent"
Value: "CallAcceptedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

{
  • "$_type": "CallAcceptedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0
}

CallDialInPublication

$_type
string
Default: "CallDialInPublication"
Value: "CallDialInPublication"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

type
string (ECallPublicationType)
Enum: "DIAL_IN" "MEDIA"
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of the dial-in service provider

dialInNumber
string

Dial-in phone number used for this publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

endTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication ended

{
  • "$_type": "CallDialInPublication",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "type": "DIAL_IN",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

CallDialInPublicationEndedEvent

$_type
string
Default: "CallDialInPublicationEndedEvent"
Value: "CallDialInPublicationEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of dial-in service provider

dialInNumber
string

Dial-in phone number used for the publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

endTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication ended

{
  • "$_type": "CallDialInPublicationEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

CallDialInPublicationStartedEvent

$_type
string
Default: "CallDialInPublicationStartedEvent"
Value: "CallDialInPublicationStartedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of dial-in service provider

dialInNumber
string

Dial-in phone number used for the publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

{
  • "$_type": "CallDialInPublicationStartedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0
}

CallEndedEvent

$_type
string
Default: "CallEndedEvent"
Value: "CallEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

endTimestamp
integer <int64>

UTC timestamp (ms) when the call ended

endReason
string (ECallEndReason)
Enum: "NOT_ANSWERED" "ABORTED_BY_INITIATOR" "DECLINED" "DECLINED_BECAUSE_UNAVAILABLE" "LAST_MANDATORY_PARTICIPANT_LEFT" "CONVERSATION_ENDED" "RECORDING_DENIED" "SYSTEM_SHUTDOWN" "UNKNOWN"
enum-descriptions: ["NOT_ANSWERED: The call was not answered","ABORTED_BY_INITIATOR: The initiator aborted the call while it was still ringing","DECLINED: The call was declined","DECLINED_BECAUSE_UNAVAILABLE: The call was declined because all conversation participants called were unavailable","LAST_MANDATORY_PARTICIPANT_LEFT: The call ended because the last mandatory participant left","CONVERSATION_ENDED: The call ended because the conversation ended","RECORDING_DENIED: The call ended because conversation recording was denied","SYSTEM_SHUTDOWN: The call ended because the collaboration server pod was shut down","UNKNOWN: The call ended for another reason"]

The reason a call has ended

{
  • "$_type": "CallEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0,
  • "endTimestamp": 0,
  • "endReason": "NOT_ANSWERED"
}

CallEstablishedEvent

$_type
string
Default: "CallEstablishedEvent"
Value: "CallEstablishedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

acceptTimestamp
integer <int64>

UTC timestamp (ms) when the call was first accepted by a participant and that particpant's connection phase started

establishedTimestamp
integer <int64>

UTC timestamp (ms) when at least two participants successfully connected to the call service provider

{
  • "$_type": "CallEstablishedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0,
  • "acceptTimestamp": 0,
  • "establishedTimestamp": 0
}

CallInitiatedEvent

$_type
string
Default: "CallInitiatedEvent"
Value: "CallInitiatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

initiationTimestamp
integer <int64>

UTC timestamp (ms) when the call was initiated

{
  • "$_type": "CallInitiatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "initiationTimestamp": 0
}

CallMediaPublication

$_type
string
Default: "CallMediaPublication"
Value: "CallMediaPublication"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

type
string (ECallPublicationType)
Enum: "DIAL_IN" "MEDIA"
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

publicationType
string (EMediaPublicationType)
Enum: "AUDIO" "VIDEO" "AUDIO_VIDEO" "NONE"
enum-descriptions: ["AUDIO: Only audio is being shared (typically through a microphone)","VIDEO: Only video is being shared (typically through a camera)","AUDIO_VIDEO: Both audio and video are being shared (typically microphone & camera)","NONE: No media is being published, the participant is only watching / listening to the call"]

The media being published during the participation of a call

publicationTimestamp
integer <int64>

UTC timestamp (ms) when the media publication started

{
  • "$_type": "CallMediaPublication",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "type": "DIAL_IN",
  • "publicationType": "AUDIO",
  • "publicationTimestamp": 0
}

CallOrderBy

$_type
string
Default: "CallOrderBy"
Value: "CallOrderBy"
field
string (ECallOrderByField)
Enum: "ID" "CONVERSATION_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","INITIATION_TIMESTAMP: Sort by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Sort by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Sort by the 'establishedTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CallOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CallParticipantConnectedEvent

$_type
string
Default: "CallParticipantConnectedEvent"
Value: "CallParticipantConnectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call. Null if the participant never answered the call.

{
  • "$_type": "CallParticipantConnectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0,
  • "connectedTimestamp": 0
}

CallParticipantJoinedEvent

$_type
string
Default: "CallParticipantJoinedEvent"
Value: "CallParticipantJoinedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

{
  • "$_type": "CallParticipantJoinedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0
}

CallParticipantLeftEvent

$_type
string
Default: "CallParticipantLeftEvent"
Value: "CallParticipantLeftEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation the call belongs to

serviceProviderCallId
string

The service provider call ID for the call

serviceProviderType
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
initiatorPersonId
string

Person ID initiating the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

personId
string

Person ID representing the participant

joinedTimestamp
integer <int64>

UTC timestamp (ms) when the participant joined the call and that particpant's connection phase started. Null if the participant never answered the call. For the participant initiating the call, this will be the same as the initiationTimestamp.

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call. Null if the participant never answered the call.

leftTimestamp
integer <int64>

UTC timestamp (ms) when the participant left the call

leftReason
string (ECallParticipationLeftReason)
Enum: "HANG_UP" "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "CALL_ENDED" "CALL_ABORTED" "DIAL_IN_ENDED" "REMOVED" "SYSTEM_ABORT" "UNKNOWN"
enum-descriptions: ["HANG_UP: The participant hung up","MISSED_BECAUSE_TIMEOUT: The participant missed the call because they didn't answer it","MISSED_BECAUSE_TERMINATED: The participant missed the call because the caller ended it before they could answer it","CALL_ENDED: The participation ended because the call ended","CALL_ABORTED: The participation ended because the call was aborted before they could answer it","DIAL_IN_ENDED: The participant hung up the dialed-in phone","REMOVED: The participant was removed from the conversation","SYSTEM_ABORT: The participation ended because the system aborted the call","UNKNOWN: The participant left for unknown reason"]

The reason a participant left a call they had joined earlier

{
  • "$_type": "CallParticipantLeftEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "serviceProviderCallId": "string",
  • "serviceProviderType": "ACS",
  • "initiatorPersonId": "string",
  • "callType": "AUDIO",
  • "personId": "string",
  • "joinedTimestamp": 0,
  • "connectedTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "HANG_UP"
}

CallParticipation

$_type
string
Default: "CallParticipation"
Value: "CallParticipation"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person has joined

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person has left (may not be present or -1 if still online)

personId
string

Person id representing the participant

ringingTimestamp
integer <int64>

utc timestamp when this call participation actually starts ringing

connectedTimestamp
integer <int64>

UTC timestamp (ms) when the participant connected to the call

leftReason
string (ECallParticipationLeftReason)
Enum: "HANG_UP" "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "CALL_ENDED" "CALL_ABORTED" "DIAL_IN_ENDED" "REMOVED" "SYSTEM_ABORT" "UNKNOWN"
enum-descriptions: ["HANG_UP: The participant hung up","MISSED_BECAUSE_TIMEOUT: The participant missed the call because they didn't answer it","MISSED_BECAUSE_TERMINATED: The participant missed the call because the caller ended it before they could answer it","CALL_ENDED: The participation ended because the call ended","CALL_ABORTED: The participation ended because the call was aborted before they could answer it","DIAL_IN_ENDED: The participant hung up the dialed-in phone","REMOVED: The participant was removed from the conversation","SYSTEM_ABORT: The participation ended because the system aborted the call","UNKNOWN: The participant left for unknown reason"]

The reason a participant left a call they had joined earlier

Array of any (CallPublication) [ items ]
{
  • "$_type": "CallParticipation",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "joinedTimestamp": 0,
  • "leftTimestamp": 0,
  • "personId": "string",
  • "ringingTimestamp": 0,
  • "connectedTimestamp": 0,
  • "leftReason": "HANG_UP",
  • "publications": [
    ]
}

CallPublication

$_type
string
Default: "CallDialInPublication"
Value: "CallDialInPublication"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

type
string (ECallPublicationType)
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

dialInServiceProviderType
string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
dialInId
string

Dial-in ID of the dial-in service provider

dialInNumber
string

Dial-in phone number used for this publication

startTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication started

endTimestamp
integer <int64>

UTC timestamp (ms) when the dial-in publication ended

Example
{
  • "$_type": "CallDialInPublication",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "type": "DIAL_IN",
  • "dialInServiceProviderType": "VONAGE",
  • "dialInId": "string",
  • "dialInNumber": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

CallQuery

$_type
string
Default: "CallQuery"
Value: "CallQuery"
Array of any (CallSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CallOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CallQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CallResult

$_type
string
Default: "CallResult"
Value: "CallResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Call) [ items ]

The returned list of entities

{
  • "$_type": "CallResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CallSearchFilter

$_type
string
Default: "AcceptTimestampCallSearchFilter"
Value: "AcceptTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "AcceptTimestampCallSearchFilter",
  • "field": "ACCEPT_TIMESTAMP",
  • "operator": {
    }
}

CallServiceProviderOperator

$_type
string
Default: "EqualsCallServiceProviderOperator"
Value: "EqualsCallServiceProviderOperator"
type
string (ECallServiceProviderOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
Example
{
  • "$_type": "EqualsCallServiceProviderOperator",
  • "type": "EQUALS",
  • "value": "ACS"
}

CannedResponse

$_type
string
Default: "CannedResponse"
Value: "CannedResponse"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

ownerId
string

Id of the owner of the entity. Can not be omitted.

ownerType
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

Array of objects (Placeholder) [ items ]
title
string

The title of a canned response as unique identifier. Maximum of 250 characters.

text
string

The text of a canned response. Can be omitted, but should not.

language
string

The language of a canned response, specified using the language tag format as defined in IETF BCP 47. This field can be omitted, but doing so may lead to behavior that doesn't matches users' expectations.

Only canned responses matching a conversation's language are displayed in the UI.
The following rules apply:

  • Canned response with no language defined are displayed for all conversations.
  • If the conversation language (e.g. "en-us") is more specific than the language of the canned response (e.g. "en"), the canned response is also displayed.
  • If the language of the canned response (e.g. "en-us") is more specific than the conversation language (e.g. "en"), the canned response isn't displayed.
{
  • "$_type": "CannedResponse",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "ownerId": "string",
  • "ownerType": "GLOBAL",
  • "placeholders": [
    ],
  • "title": "string",
  • "text": "string",
  • "language": "string"
}

CannedResponseIdCannedResponseUsageSearchFilter

$_type
string
Default: "CannedResponseIdCannedResponseUsageSearchFilter"
Value: "CannedResponseIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "CannedResponseIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

CannedResponseList

$_type
string
Default: "CannedResponseList"
Value: "CannedResponseList"
Array of objects (CannedResponse) [ items ]

The list of mapped entities

{
  • "$_type": "CannedResponseList",
  • "items": [
    ]
}

CannedResponseOrderBy

$_type
string
Default: "CannedResponseOrderBy"
Value: "CannedResponseOrderBy"
field
string (ECannedResponseOrderByField)
Enum: "ID" "KEY" "TITLE" "TEXT" "OWNER_TYPE" "OWNER_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","KEY: Sort by the 'key' attribute","TITLE: Sort by the 'title' attribute","TEXT: Sort by the 'text' attribute","OWNER_TYPE: Sort by the 'ownerType' attribute","OWNER_ID: Sort by the 'ownerId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CannedResponseOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CannedResponseQuery

$_type
string
Default: "CannedResponseQuery"
Value: "CannedResponseQuery"
Array of any (CannedResponseSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CannedResponseOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CannedResponseQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CannedResponseResult

$_type
string
Default: "CannedResponseResult"
Value: "CannedResponseResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (CannedResponse) [ items ]

The returned list of entities

{
  • "$_type": "CannedResponseResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CannedResponseSearchFilter

$_type
string
Default: "CreationTimestampCannedResponseSearchFilter"
Value: "CreationTimestampCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampCannedResponseSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

CannedResponseUsage

$_type
string
Default: "CannedResponseUsage"
Value: "CannedResponseUsage"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

cannedResponseId
string

The ID of the canned response used by a person within a message

personId
string

The ID of the person who used the canned response within a message

messageId
string

The ID of the message where a canned response was used

conversationId
string

The ID of the conversation where a canned response was used

{
  • "$_type": "CannedResponseUsage",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "cannedResponseId": "string",
  • "personId": "string",
  • "messageId": "string",
  • "conversationId": "string"
}

CannedResponseUsageCountQuery

$_type
string
Default: "CannedResponseUsageCountQuery"
Value: "CannedResponseUsageCountQuery"
Array of any (CannedResponseUsageSearchFilter) [ items ]

List of filters to narrow the search of entities

{
  • "$_type": "CannedResponseUsageCountQuery",
  • "searchFilters": [
    ]
}

CannedResponseUsageOrderBy

$_type
string
Default: "CannedResponseUsageOrderBy"
Value: "CannedResponseUsageOrderBy"
field
string (ECannedResponseUsageOrderByField)
Enum: "ID" "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_ID: Sort by the 'personId' attribute","CANNED_RESPONSE_ID: Sort by the 'cannedResponseId' attribute","MESSAGE_ID: Sort by the 'messageId' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CannedResponseUsageOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CannedResponseUsageQuery

$_type
string
Default: "CannedResponseUsageQuery"
Value: "CannedResponseUsageQuery"
Array of any (CannedResponseUsageSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CannedResponseUsageOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CannedResponseUsageQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CannedResponseUsageResult

$_type
string
Default: "CannedResponseUsageResult"
Value: "CannedResponseUsageResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (CannedResponseUsage) [ items ]

The returned list of entities

{
  • "$_type": "CannedResponseUsageResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CannedResponseUsageSearchFilter

$_type
string
Default: "CannedResponseIdCannedResponseUsageSearchFilter"
Value: "CannedResponseIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "CannedResponseIdCannedResponseUsageSearchFilter",
  • "field": "CANNED_RESPONSE_ID",
  • "operator": {
    }
}

CannedResponseUsedEvent

$_type
string
Default: "CannedResponseUsedEvent"
Value: "CannedResponseUsedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

Array of objects (CannedResponse) [ items ]

The list of the used canned responses

{
  • "$_type": "CannedResponseUsedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    },
  • "usedCannedResponses": [
    ]
}

CardMessageData

$_type
string
Default: "CardMessageData"
Value: "CardMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

imageUrl
string

URL of the image displayed at the top of the card.

imageAltText
string

Alt text for the image.

title
string

Title displayed bold below the image.

body
string

Body text which may optionally contain markdown.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MessageAction) [ items ]

Actions which will be displayed at the bottom of the card.

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "CardMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

CardPostMessageData

$_type
string
Default: "CardPostMessageData"
Value: "CardPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

imageUrl
string

URL of the image displayed at the top of the card. (optional)

  • The image is always displayed with an aspect ratio of 16:9
  • If the image doesn't fit the aspect ratio it's magnified to cover the whole area
  • Depending on the chat windows size, the image is displayed with a width of 200-400px.

imageAltText
string

Alt text for the image. Required if imageUrl is set.

title
string

Title displayed below the image. (optional)

Max length is 64 characters.

body
string

Body text. May optionally contain Markdown. (optional)

Max length is 640 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MessageAction) [ items ]

Actions to be displayed at the bottom of the card. (optional)

Max number of actions is 5.

Array of objects (QuickReply) [ items ]

List of quick replies available to the message's recipients. (optional)

Max number of quick replies is 13.

{
  • "$_type": "CardPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

ChangeTypeAuditChangeSearchFilter

$_type
string
Default: "ChangeTypeAuditChangeSearchFilter"
Value: "ChangeTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (AuditChangeTypeOperator)
{
  • "$_type": "ChangeTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ChatSuggestionRequest

$_type
string
Default: "ChatSuggestionRequest"
Value: "ChatSuggestionRequest"
accountId
string
serviceName
string
suggestionId
string

Unique ID of the request

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

Array of any (MessageData) [ items ]

The messages for which the person is requesting a suggestion

object (ChatSuggestionRequestCapabilities)
{
  • "$_type": "ChatSuggestionRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "suggestionId": "string",
  • "requestingPerson": {
    },
  • "conversation": {
    },
  • "relatedMessages": [
    ],
  • "capabilities": {
    }
}

ChatSuggestionRequestCapabilities

$_type
string
Default: "ChatSuggestionRequestCapabilities"
Value: "ChatSuggestionRequestCapabilities"
markdownSupported
boolean

Indicates whether the caller of the request supports markdown syntax in the response or not

maxCharsSupported
integer <int32>

The maximum number of characters in the response that are supported by the caller

{
  • "$_type": "ChatSuggestionRequestCapabilities",
  • "markdownSupported": true,
  • "maxCharsSupported": 0
}

ChatSuggestionResponse

$_type
string
Default: "EmptyChatSuggestionResponse"
Value: "EmptyChatSuggestionResponse"
type
string (EChatSuggestionResponseType)
enum-descriptions: ["EMPTY","TEXT"]
reason
string (EEmptyChatSuggestionReason)
Enum: "NO_SUGGESTION" "NOT_AVAILABLE" "OTHER"
enum-descriptions: ["NO_SUGGESTION","NOT_AVAILABLE","OTHER"]
hint
string
Example
{
  • "$_type": "EmptyChatSuggestionResponse",
  • "type": "EMPTY",
  • "reason": "NO_SUGGESTION",
  • "hint": "string"
}

CompoundOperator

$_type
string
Default: "AndCompoundOperator"
Value: "AndCompoundOperator"
type
string (ECompoundOperatorType)
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
Example
{
  • "$_type": "AndCompoundOperator",
  • "type": "AND"
}

ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
Value: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (StringOperator)
{
  • "$_type": "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter"
Value: "ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (ContactIdentifierFieldTypeOperator)
{
  • "$_type": "ContactIdentifierFieldTypeCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ContactIdentifierFieldTypeOperator

$_type
string
Default: "EqualsContactIdentifierFieldTypeOperator"
Value: "EqualsContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

Example
{
  • "$_type": "EqualsContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "value": "EMAIL"
}

ContainsStringOperator

$_type
string
Default: "ContainsStringOperator"
Value: "ContainsStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string

The value to check if it is contained within the searched field. Mandatory.

caseSensitive
boolean

Whether the search should be case sensitive. Optional, false if not provided.

{
  • "$_type": "ContainsStringOperator",
  • "type": "EQUALS",
  • "value": "string",
  • "caseSensitive": true
}

ContextPersonIdConversationHistorySearchFilter

$_type
string
Default: "ContextPersonIdConversationHistorySearchFilter"
Value: "ContextPersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ContextPersonIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ContextPersonIdConversationSearchFilter

$_type
string
Default: "ContextPersonIdConversationSearchFilter"
Value: "ContextPersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ContextPersonIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ContextPersonInfo

$_type
string
Default: "ContextPersonInfo"
Value: "ContextPersonInfo"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

osName
string

The operation system name of the visitors computer

osVersion
string

The version of the operation system of the visitors computer

browserName
string

The name of the browser the visitor uses

browserVersion
string

The version of the browser the visitor uses

locale
string

The locale defined in the browser of the visitor (BCP 47 language tag form including region if available)

city
string

The city in which the visitor is (probably)

country
string

The country in which the visitor is (probable)

{
  • "$_type": "ContextPersonInfo",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "osName": "string",
  • "osVersion": "string",
  • "browserName": "string",
  • "browserVersion": "string",
  • "locale": "string",
  • "city": "string",
  • "country": "string"
}

ConversationActiveEvent

$_type
string
Default: "ConversationActiveEvent"
Value: "ConversationActiveEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationActiveEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationCreatedEvent

$_type
string
Default: "ConversationCreatedEvent"
Value: "ConversationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationCreationBotParticipantData

$_type
string
Default: "ConversationCreationBotParticipantData"
Value: "ConversationCreationBotParticipantData"
personId
string

Person ID of the bot. Mandatory.

hidden
boolean

Indicates if the bot should be a hidden participant. Optional, false by default.

{
  • "$_type": "ConversationCreationBotParticipantData",
  • "personId": "string",
  • "hidden": true
}

ConversationCreationData

$_type
string
Default: "ConversationCreationData"
Value: "ConversationCreationData"
topic
string

Topic of the conversation. Optional unless the initial engagement type is EInitialEngagementType.SCHEDULED_CONVERSATION, in which case it's mandatory.

scheduledTimestamp
integer <int64>

Unix timestamp (ms) when the conversation is scheduled. Can only be set for conversations with the initial engagement typeEInitialEngagementType.SCHEDULED_CONVERSATION.

object (ConversationCreationRecipientData)

The recipient of a conversation when creating a new conversation

Array of objects (ConversationCreationParticipantData) [ items ]

Participants taking part in the conversation through Unblu. There must be at least one participant in this list or in the externalParticipants list.

Array of objects (ConversationCreationExternalParticipantData) [ items ]

Participants taking part in the conversation through an external messenger. There must be at least one participant in this list or in theparticipants list. It must be omitted if externalMessengerChannelId is not set.

Array of objects (ConversationCreationBotParticipantData) [ items ]

Bots taking part in the conversation. Optional.

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

locale
string

The locale of the conversation language as a BCP 47 language tag, including the region if available. Optional, if not provided, the account default locale will be used.

visitorData
string

Custom data for the visitor. This has no specific format. Optional.

conversationTemplateId
string

Template ID of the conversation. If omitted, the default conversation template is retrieved based on the initial engagement type. If provided the value ofinitialEngagementType has to match the initial engagement type of the template.

externalMessengerChannelId
string

ID of the external messenger channel the conversation should be linked to. If this property is null the conversation is an Unblu conversation and not linked to an external messenger channel.

sourceId
string

Custom ID to identify the source of the conversation. Typically used in connection with an external messenger to create a link to the external conversation.
If this ID is specified, it has to be unique for each external channel. Even if the external channel is not used (null), the custom ID must be unique for this "null".

sourceUrl
string

URL identifying the system where the conversation was created, for example a CRM. Optional.

initialEngagementUrl
string

The URL where the conversation originated. Optional.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

{
  • "$_type": "ConversationCreationData",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "initialEngagementUrl": "string",
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

ConversationCreationExternalParticipantData

$_type
string
Default: "ConversationCreationExternalParticipantData"
Value: "ConversationCreationExternalParticipantData"
externalMessengerContactId
string

The ID of the ExternalMessengerContact for the person in question

participationType
string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ConversationCreationExternalParticipantData",
  • "externalMessengerContactId": "string",
  • "participationType": "CONTEXT_PERSON"
}

ConversationCreationParticipantData

$_type
string
Default: "ConversationCreationParticipantData"
Value: "ConversationCreationParticipantData"
personId
string

The participant's person ID. Mandatory.

hidden
boolean

Indicates if the participant should be a hidden participant. This can only be set for agents and not for visitors. Optional, not hidden by default.

conversationStarred
boolean

Indicates whether the conversation is starred for the participant. Optional.

participationType
string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ConversationCreationParticipantData",
  • "personId": "string",
  • "hidden": true,
  • "conversationStarred": true,
  • "participationType": "ASSIGNED_AGENT"
}

ConversationCreationRecipientData

$_type
string
Default: "ConversationCreationRecipientData"
Value: "ConversationCreationRecipientData"
type
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

id
string

The recipient's ID. Mandatory.

{
  • "$_type": "ConversationCreationRecipientData",
  • "type": "AGENT",
  • "id": "string"
}

ConversationData

$_type
string
Default: "ConversationData"
Value: "ConversationData"
creationTimestamp
integer <int64>

Unix timestamp (ms) when the entity was created. It is defined when the entity is stored the first time in the system.

endTimestamp
integer <int64>

Unix timestamp (ms) when the conversation has ended (all participants have finished their offboarding).

id
string

The unique ID of the conversation

accountId
string

The ID of the account the conversation belongs to

topic
string

Topic of the conversation

scheduledTimestamp
integer <int64>

Unix timestamp (ms) when the conversation is scheduled for. Only present for conversations with the initial engagement type SCHEDULED_CONVERSATION.

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

Array of objects (ParticipantData) [ items ]

The current participants of the conversation

Array of objects (ExternalParticipantData) [ items ]

The current participants of the conversation who are connected through an external messenger

Array of objects (BotParticipantData) [ items ]

The current bots of the conversation

state
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

locale
string

Locale of the conversation language (as BCP 47 language tag form including region if available)

tokboxSessionId
string

Tokbox session ID

visitorData
string

Custom data for the visitor. This has no specific format.

conversationTemplateId
string

Template ID that this conversation is based on

inheritConfigurationAndTexts
boolean

True if the conversation inherits all configuration and texts from its conversation template. If omitted, the value based onConversationTemplate.inheritConfigurationAndTexts will be used.

Array of objects (ConversationLink) [ items ]

Links to open the conversation

externalMessengerChannelId
string

ID of the external messenger channel the conversation is linked to. If this property is null the conversation is an Unblu conversation and not linked to a messenger channel.

sourceId
string

Custom ID to identify the source of the conversation. Typically used in connection with an external messenger to create a link to the external conversation.

sourceUrl
string

URL identifying the system where the conversation was created. Null if created in Unblu.

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

initialEngagementUrl
string

The URL where the conversation originated. The following conversations always have an initial engagement URL:

  • Conversations initiated by a visitor on a customer's website where Unblu is integrated
  • PIN-based conversations, provided a visitor redeems the PIN on a customer's website where Unblu is integrated
  • Conversations created using the Web API, provided an initial engagement URL was included when the conversation was created
Conversations initiated from the mobile SDK don't have an initial engagement URL.

awaitedPersonType
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

awaitedPersonTypeChangeTimestamp
integer <int64>

Unix timestamp (ms) when the awaited person type last changed

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

{
  • "$_type": "ConversationData",
  • "creationTimestamp": 0,
  • "endTimestamp": 0,
  • "id": "string",
  • "accountId": "string",
  • "topic": "string",
  • "scheduledTimestamp": 0,
  • "recipient": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "conversationVisibility": "PRIVATE",
  • "locale": "string",
  • "tokboxSessionId": "string",
  • "visitorData": "string",
  • "conversationTemplateId": "string",
  • "inheritConfigurationAndTexts": true,
  • "links": [
    ],
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "metadata": {
    },
  • "configuration": {
    },
  • "text": {
    }
}

ConversationEndReasonOperator

$_type
string
Default: "EqualsConversationEndReasonOperator"
Value: "EqualsConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

Example
{
  • "$_type": "EqualsConversationEndReasonOperator",
  • "type": "EQUALS",
  • "value": "ENDED_BY_PARTICIPANT"
}

ConversationEndedEvent

$_type
string
Default: "ConversationEndedEvent"
Value: "ConversationEndedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

endComment
string

The comment provided when ending the conversation. May be null.

{
  • "$_type": "ConversationEndedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    },
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endPerson": {
    },
  • "endComment": "string"
}

ConversationFileData

$_type
string
Default: "ConversationFileData"
Value: "ConversationFileData"
conversationId
string

The id of the Conversation, in which the file was shared/sent

ownerPersonId
string

The id of the owner Person, who shared/sent this file in the conversation

name
string

The name of the file, which was shared/sent in the conversation

mimeType
string

The mime type of the file, which was shared/sent in the conversation

source
string

The source of the file, which was shared/sent in the conversation (is either the name of the uploading person or the uploading system)

fileStoreId
string

The file store id of the actual content of the file, which was shared/sent in the conversation. Stored at the collaboration server.

totalSize
integer <int64>

The total size in bytes of the file, which was shared/sent in the conversation. Note that it is not always set.

Array of objects (DownloadLink) [ items ]

URLs to download the file. One link is to download the file via the web API, the other is to download the file from the Agent Desk. The URLs are only accessible to authenticated users that have access to the referenced conversation. Authentication is possible with basic authentication or a valid session cookie.
If the file is currently being reviewed by one or more file interceptors, calling one of the URLs returns a 403 code until the file upload has been approved.

creationTimestamp
integer <int64>

Creation timestamp, when the file was shared/sent in the conversation

{
  • "$_type": "ConversationFileData",
  • "conversationId": "string",
  • "ownerPersonId": "string",
  • "name": "string",
  • "mimeType": "string",
  • "source": "string",
  • "fileStoreId": "string",
  • "totalSize": 0,
  • "downloadLinks": [
    ],
  • "creationTimestamp": 0
}

ConversationFileDataList

$_type
string
Default: "ConversationFileDataList"
Value: "ConversationFileDataList"
Array of objects (ConversationFileData) [ items ]

The list of mapped entities

{
  • "$_type": "ConversationFileDataList",
  • "items": [
    ]
}

ConversationHistoryData

$_type
string
Default: "ConversationHistoryData"
Value: "ConversationHistoryData"
id
string

Id of the conversation

any (ConversationRecipientData)

Recipient of a conversation: Either a single PersonData, TeamData, NamedAreaData or AccountData. For compatibility reasons,RecipientData is also supported.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

Array of objects (ParticipantHistoryData) [ items ]

The (current and earlier) participants of the conversation

Array of objects (ExternalParticipantHistoryData) [ items ]

The (current and earlier) participants of the conversation who are connected through an external messenger

Array of objects (BotParticipantHistoryData) [ items ]

The (current and earlier) bots of the conversation

createdTimestamp
integer <int64>

Unix timestamp (ms) when the conversation was created (timestamp when the state was set to EConversationState.CREATED)

assigneeJoinTimestamp
integer <int64>

Unix timestamp (ms) when the assignee joined the conversation (timestamp when the state of the first agent participant was set toEConversationParticipationState.ACTIVE) Value is null of no assignee has joined yet.

endTimestamp
integer <int64>

Unix timestamp (ms) when the conversation has ended (all active participants have finished their offboarding; timestamp when the state was set toEConversationState.ENDED)

lastMessageTimestamp
integer <int64>

Unix timestamp (ms) when the last conversation message was sent. Null if there hasn't been any yet.

lastCompletedRecordingTimestamp
integer <int64>

Unix timestamp (ms) when the last recording was completed. Null if there hasn't been any yet.

state
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

locale
string

Locale of the conversation language (as BCP 47 language tag form including region if available)

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

endComment
string
tokboxSessionId
string

Tokbox sessionId.

conversationTemplateId
string

Template ID of the conversation.

externalMessengerChannelIconId
string

External messenger channel id.

externalMessengerChannelName
string

External messenger name.

topic
string

Topic of the conversation.

sourceUrl
string

Source URL of the conversation.

scheduledTimestamp
integer <int64>

Unix timestamp (ms) when the conversation is scheduled for. Can be set only for conversations with initialEngagementType :EInitialEngagementType.SCHEDULED_CONVERSATION

dueDeletionTimestamp
integer <int64>
  • Unix timestamp (ms) when this conversation will be automatically deleted. See getRetentionIntervalConversationSeconds for details.
initialEngagementUrl
string

The URL where the conversation originated. The following conversations always have an initial engagement URL:

  • Conversations initiated by a visitor on a customer's website where Unblu is integrated
  • PIN-based conversations, provided a visitor redeems the PIN on a customer's website where Unblu is integrated
  • Conversations created using the Web API, provided an initial engagement URL was included when the conversation was created
Conversations initiated from the mobile SDK don't have an initial engagement URL.

awaitedPersonType
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

awaitedPersonTypeChangeTimestamp
integer <int64>

Unix timestamp (ms) when the awaited person type last changed

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

Array of objects (ConversationStateChangeData) [ items ]

List of conversation state changes that occurred in a conversation with corresponding time stamps

{
  • "$_type": "ConversationHistoryData",
  • "id": "string",
  • "recipient": {
    },
  • "endPerson": {
    },
  • "participants": [
    ],
  • "externalParticipants": [
    ],
  • "botParticipants": [
    ],
  • "createdTimestamp": 0,
  • "assigneeJoinTimestamp": 0,
  • "endTimestamp": 0,
  • "lastMessageTimestamp": 0,
  • "lastCompletedRecordingTimestamp": 0,
  • "state": "CREATED",
  • "initialEngagementType": "CHAT_REQUEST",
  • "locale": "string",
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endComment": "string",
  • "tokboxSessionId": "string",
  • "conversationTemplateId": "string",
  • "externalMessengerChannelIconId": "string",
  • "externalMessengerChannelName": "string",
  • "topic": "string",
  • "sourceUrl": "string",
  • "scheduledTimestamp": 0,
  • "dueDeletionTimestamp": 0,
  • "initialEngagementUrl": "string",
  • "awaitedPersonType": "NONE",
  • "awaitedPersonTypeChangeTimestamp": 0,
  • "conversationVisibility": "PRIVATE",
  • "stateChanges": [
    ]
}

ConversationHistoryDataResult

$_type
string
Default: "ConversationHistoryDataResult"
Value: "ConversationHistoryDataResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationHistoryData) [ items ]

The returned list of entities

{
  • "$_type": "ConversationHistoryDataResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationHistoryMessageData

$_type
string
Default: "ConversationHistoryMessageData"
Value: "ConversationHistoryMessageData"
id
string

ID of the message.

conversationId
string

ID of the conversation to which this message belongs.

sendTimestamp
integer <int64>

UTC time stamp when the message was sent from the client.

serverTimestamp
integer <int64>

UTC time stamp when the message was received on the Unblu server.

senderPersonId
string

ID of the person that send the message. May be null for system messages.

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

recipientPersonIds
Array of strings

IDs of persons that the message was addressed to.

If it is null, all active participations are regarded as recipients.

botThreadId
string

ID of the bot thread the message is part of. Always null for messages outside bot threads.

rejectionSeverity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

rejectionReason
string

The reason why a message was rejected. Null for messages that weren't rejected.

text
string

Text representation of the message.

{
  • "$_type": "ConversationHistoryMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "sendTimestamp": 0,
  • "serverTimestamp": 0,
  • "senderPersonId": "string",
  • "type": "TEXT",
  • "internal": true,
  • "replyToMessageId": "string",
  • "recipientPersonIds": [
    ],
  • "botThreadId": "string",
  • "rejectionSeverity": "HIGH",
  • "rejectionReason": "string",
  • "text": "string"
}

ConversationHistoryOrderBy

$_type
string
Default: "ConversationHistoryOrderBy"
Value: "ConversationHistoryOrderBy"
field
string (EConversationHistoryOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON" "AWAITED_PERSON_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE" "LAST_MESSAGE_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON: Sort by the 'awaitedPerson' attribute","AWAITED_PERSON_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute","LAST_MESSAGE_TIMESTAMP: Sort by the 'lastMessageTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationHistoryOrderBy",
  • "field": "CREATION_TIMESTAMP",
  • "order": "ASCENDING"
}

ConversationHistoryQuery

$_type
string
Default: "ConversationHistoryQuery"
Value: "ConversationHistoryQuery"
Array of any (ConversationHistorySearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationHistoryOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationHistoryQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationHistorySearchFilter

$_type
string
Default: "AssigneePersonIdConversationHistorySearchFilter"
Value: "AssigneePersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "AssigneePersonIdConversationHistorySearchFilter",
  • "field": "ASSIGNEE_PERSON_ID",
  • "operator": {
    }
}

ConversationIdCallSearchFilter

$_type
string
Default: "ConversationIdCallSearchFilter"
Value: "ConversationIdCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationIdCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ConversationIdCannedResponseUsageSearchFilter

$_type
string
Default: "ConversationIdCannedResponseUsageSearchFilter"
Value: "ConversationIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

ConversationIdConversationInvitationSearchFilter

$_type
string
Default: "ConversationIdConversationInvitationSearchFilter"
Value: "ConversationIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

ConversationInvitationData

$_type
string
Default: "ConversationInvitationData"
Value: "ConversationInvitationData"
accountId
string

The account ID the invitation originated from.

invitationType
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
invitationState
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

id
string

Id of the invitation

conversationId
string

Id of the conversation that this invitation is for

token
string

Token (digits for pin or character sequence) required to redeem or revoke the invitation

createdTimestamp
integer <int64>

Unix timestamp of when the invitation was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

creatorPersonId
string

If the creator is an agent or visitor, then this contains the ID of the corresponding person.

targetId
string

ID of the recipient that is expected to redeem this invitation

targetType
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
Array of objects (ConversationLink) [ items ]

List of links to accept this invitation and open the corresponding conversation.
Only one link may be used.

redeemingPersonId
string

ID of the person that redeemed this invitation. (Not present as long as the invitation is not redeemed)

comment
string

Text provided by the creator of the invitation which will be displayed to the target of the invitation.

joinHidden
boolean

Determines if the target of the invitation joins the conversation as a hidden participant

email
string

Email address that will be used if an anonymous visitor redeems this invitation (only possible for Invitations of type VISITOR_INVITATION and PIN_CONVERSATION). The email address will be stored on the corresponding visitor's person.

nickname
string

Nickname that will be used if an anonymous visitor redeems this invitation (only possible for Invitations of type VISITOR_INVITATION and PIN_CONVERSATION). The nickname will be stored on the corresponding visitor's person.

targetResponseStatus
string (EInvitationResponseState)
Enum: "PENDING" "DECLINED" "IGNORED" "CANCELED" "ACCEPTED"
enum-descriptions: ["PENDING: The response is pending. The user did not answer it yet.","DECLINED: The user declined the response and therefore will not accept the invitation.","IGNORED: The user ignored this invitation and the escalation should proceed","CANCELED: The invitation was canceled for that user.","ACCEPTED: The user accepted the invitation."]

The state of the response for an invitation itself or one of its secondary targets

Array of objects (ConversationInvitationSecondaryTargetData) [ items ]

The secondary invitation targets for this invitation

expirationTimestamp
integer <int64>

Unix timestamp after which the invitation is no longer valid

{
  • "$_type": "ConversationInvitationData",
  • "accountId": "string",
  • "invitationType": "ASSIGNMENT_REQUEST",
  • "invitationState": "OPEN",
  • "id": "string",
  • "conversationId": "string",
  • "token": "string",
  • "createdTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPersonId": "string",
  • "targetId": "string",
  • "targetType": "ANONYMOUS",
  • "links": [
    ],
  • "redeemingPersonId": "string",
  • "comment": "string",
  • "joinHidden": true,
  • "email": "string",
  • "nickname": "string",
  • "targetResponseStatus": "PENDING",
  • "secondaryInvitationTargets": [
    ],
  • "expirationTimestamp": 0
}

ConversationInvitationOrderBy

$_type
string
Default: "ConversationInvitationOrderBy"
Value: "ConversationInvitationOrderBy"
field
string (EConversationInvitationOrderByField)
Enum: "TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_ID" "REDEEMER_PERSON_ID" "SUBTYPE"
enum-descriptions: ["TYPE: Sort by the 'type' attribute","TARGET_TYPE: Sort by the 'targetType' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","TARGET_ID: Sort by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","CREATOR_TYPE: Sort by the 'creatorType' attribute","CREATOR_ID: Sort by the 'creatorId' attribute","REDEEMER_PERSON_ID: Sort by the 'redeemerPersonId' attribute","SUBTYPE: Sort by the 'subtype' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationInvitationOrderBy",
  • "field": "TYPE",
  • "order": "ASCENDING"
}

ConversationInvitationQuery

$_type
string
Default: "ConversationInvitationQuery"
Value: "ConversationInvitationQuery"
Array of any (ConversationInvitationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationInvitationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationInvitationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationInvitationResult

$_type
string
Default: "ConversationInvitationResult"
Value: "ConversationInvitationResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationInvitationData) [ items ]

The returned list of entities

{
  • "$_type": "ConversationInvitationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationInvitationSearchFilter

$_type
string
Default: "ConversationIdConversationInvitationSearchFilter"
Value: "ConversationIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "ConversationIdConversationInvitationSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ConversationInvitationSecondaryTargetData

$_type
string
Default: "ConversationInvitationSecondaryTargetData"
Value: "ConversationInvitationSecondaryTargetData"
personId
string

The id of the person to who this secondary invitation target belongs to

responseState
string (EInvitationResponseState)
Enum: "PENDING" "DECLINED" "IGNORED" "CANCELED" "ACCEPTED"
enum-descriptions: ["PENDING: The response is pending. The user did not answer it yet.","DECLINED: The user declined the response and therefore will not accept the invitation.","IGNORED: The user ignored this invitation and the escalation should proceed","CANCELED: The invitation was canceled for that user.","ACCEPTED: The user accepted the invitation."]

The state of the response for an invitation itself or one of its secondary targets

{
  • "$_type": "ConversationInvitationSecondaryTargetData",
  • "personId": "string",
  • "responseState": "PENDING"
}

ConversationMessageStateEvent

$_type
string
Default: "ConversationMessageStateEvent"
Value: "ConversationMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageId
string

The id of the message which state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

conversationId
string

The conversation to which the message belongs to

{
  • "$_type": "ConversationMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "conversationId": "string"
}

ConversationNewMessageEvent

$_type
string
Default: "ConversationNewMessageEvent"
Value: "ConversationNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "ConversationNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    }
}

ConversationOffboardingEvent

$_type
string
Default: "ConversationOffboardingEvent"
Value: "ConversationOffboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

endReason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

endComment
string

The comment provided when ending the conversation. May be null.

{
  • "$_type": "ConversationOffboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    },
  • "endReason": "ENDED_BY_PARTICIPANT",
  • "endPerson": {
    },
  • "endComment": "string"
}

ConversationOnboardingEvent

$_type
string
Default: "ConversationOnboardingEvent"
Value: "ConversationOnboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationOnboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationOrderBy

$_type
string
Default: "ConversationOrderBy"
Value: "ConversationOrderBy"
field
string (EConversationOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Sort by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonTypeChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationOrderBy",
  • "field": "CREATION_TIMESTAMP",
  • "order": "ASCENDING"
}

ConversationParticipationData

$_type
string
Default: "ConversationParticipationData"
Value: "ConversationParticipationData"
id
string

Unique ID of the participation

state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the participation was created. It is set when the entity is stored for the first time.

onboardingTimestamp
integer <int64>

Unix timestamp (ms) when the participation started the onboarding process. Null if the participant hasn't yet started the onboarding.

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated. Null if the participation hasn't being activated yet.

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when the participation started the offboarding process. Null if the participant hasn't yet started the offboarding.

leftTimestamp
integer <int64>

Unix timestamp (ms) when the participant left the conversation after finishing offboarding. Null if the participant is still part of the conversation.

leftReason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

leftComment
string

The comment on why the participant left the conversation. If provided, this attribute is set when offboarding starts and is null if the participant is still part of the conversation.

conversationRating
number <float>

The rating the participant gave the conversation. The rating is mapped to a number from 0-1. Null until the participant rates the conversation.

hidden
boolean

Flag indicating whether the participant is hidden

conversationStarred
boolean

Flag indictaing whether the participant has starred this conversation

conversationId
string

The ID of the conversation the participation belongs to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "ConversationParticipationData",
  • "id": "string",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "onboardingTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "FORWARDED",
  • "leftComment": "string",
  • "conversationRating": 0,
  • "hidden": true,
  • "conversationStarred": true,
  • "conversationId": "string",
  • "person": {
    }
}

ConversationQuery

$_type
string
Default: "ConversationQuery"
Value: "ConversationQuery"
Array of any (ConversationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationQueuedEvent

$_type
string
Default: "ConversationQueuedEvent"
Value: "ConversationQueuedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationQueuedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationReboardingEvent

$_type
string
Default: "ConversationReboardingEvent"
Value: "ConversationReboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationReboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationRecipientData

$_type
string
Default: "AccountData"
id
string

Unique id of the account.

displayName
string

Display-Name of the account

object

Localized Display-Name of the account

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the account: id that can be expanded.

Example
{
  • "$_type": "AccountData",
  • "id": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string"
}

ConversationRecipientTypeOperator

$_type
string
Default: "EqualsConversationRecipientTypeOperator"
Value: "EqualsConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

Example
{
  • "$_type": "EqualsConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

ConversationRecordingAvailableEvent

$_type
string
Default: "ConversationRecordingAvailableEvent"
Value: "ConversationRecordingAvailableEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

Id of the conversation this recording belongs to

blobStoreId
string

The blob store id of the actual recording.

mimeType
string

The mime type of the recording

totalSize
integer <int64>

The total size in bytes of this recording

Array of objects (DownloadLink) [ items ]

URLs to download the recording. The URLs are only accessible to authenticated users that have access to the referenced conversation. Authentication is possible with basic authentication or a valid session cookie.

recordingStartTimestamp
integer <int64>

utc timestamp when the conversation recording has started

recordingEndTimestamp
integer <int64>

utc timestamp when the conversation recording has ended

endReason
string (ERecordingEndReason)
Enum: "NORMAL" "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["NORMAL: Recording ended normally","ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
{
  • "$_type": "ConversationRecordingAvailableEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "blobStoreId": "string",
  • "mimeType": "string",
  • "totalSize": 0,
  • "downloadLinks": [
    ],
  • "recordingStartTimestamp": 0,
  • "recordingEndTimestamp": 0,
  • "endReason": "NORMAL"
}

ConversationRecordingFailedEvent

$_type
string
Default: "ConversationRecordingFailedEvent"
Value: "ConversationRecordingFailedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation this recording belongs to

recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording has started. Null if the recording failed to start.

failureReason
string (ERecordingFailedReason)
Enum: "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
{
  • "$_type": "ConversationRecordingFailedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0,
  • "failureReason": "ABORT_SYSTEM"
}

ConversationRecordingHistoryData

$_type
string
Default: "ConversationRecordingHistoryData"
Value: "ConversationRecordingHistoryData"
conversationId
string

ID of the conversation this recording belongs to

blobStoreId
string

The blob store ID of the recording

fileName
string

The filename of this recording

mimeType
string

The MIME type of the recording

totalSize
integer <int64>

The total size of this recording in bytes

Array of objects (DownloadLink) [ items ]

URLs to download the recordings. The URLs are only accessible to authenticated users that have access to the referenced conversation. Authentication is possible with either basic authentication or a valid session cookie.

recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording started

recordingEndTimestamp
integer <int64>

UTC timestamp when the conversation recording ended

status
string (ERecordingStatus)
Enum: "INITIALIZING" "PENDING" "COMPLETE"
enum-descriptions: ["INITIALIZING: Recording initializing","PENDING: Recording pending","COMPLETE: Recording completed"]
endReason
string (ERecordingEndReason)
Enum: "NORMAL" "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["NORMAL: Recording ended normally","ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
callIds
Array of strings

A list of call IDs held during this recording

{
  • "$_type": "ConversationRecordingHistoryData",
  • "conversationId": "string",
  • "blobStoreId": "string",
  • "fileName": "string",
  • "mimeType": "string",
  • "totalSize": 0,
  • "downloadLinks": [
    ],
  • "recordingStartTimestamp": 0,
  • "recordingEndTimestamp": 0,
  • "status": "INITIALIZING",
  • "endReason": "NORMAL",
  • "recordingType": "AUDIO",
  • "callIds": [
    ]
}

ConversationRecordingHistoryDataList

$_type
string
Default: "ConversationRecordingHistoryDataList"
Value: "ConversationRecordingHistoryDataList"
Array of objects (ConversationRecordingHistoryData) [ items ]

The list of mapped entities

{
  • "$_type": "ConversationRecordingHistoryDataList",
  • "items": [
    ]
}

ConversationRecordingStartedEvent

$_type
string
Default: "ConversationRecordingStartedEvent"
Value: "ConversationRecordingStartedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

conversationId
string

ID of the conversation this recording belongs to

recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

UTC timestamp when the conversation recording started

{
  • "$_type": "ConversationRecordingStartedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationId": "string",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0
}

ConversationRecordingState

$_type
string
Default: "ConversationRecordingState"
Value: "ConversationRecordingState"
conversationId
string

Id of the conversation this recording belongs to

recordingState
string (EConversationRecordingState)
Enum: "IDLE" "INITIALIZING" "WAITING_READY" "READY" "STARTED" "STOPPED" "FAILED"
enum-descriptions: ["IDLE: Conversation recording is ready to be initialized","INITIALIZING: Conversation recording is initializing","WAITING_READY: Conversation recording is waiting for the recording entry point to become available","READY: Conversation recording is ready to start recording","STARTED: Conversation recording has started to record","STOPPED: Conversation recording has stopped recording","FAILED: Conversation recording has failed"]
recordingType
string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
recordingStartTimestamp
integer <int64>

utc timestamp when the conversation recording has started

{
  • "$_type": "ConversationRecordingState",
  • "conversationId": "string",
  • "recordingState": "IDLE",
  • "recordingType": "AUDIO",
  • "recordingStartTimestamp": 0
}

ConversationRequeuedEvent

$_type
string
Default: "ConversationRequeuedEvent"
Value: "ConversationRequeuedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationRequeuedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationResult

$_type
string
Default: "ConversationResult"
Value: "ConversationResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationData) [ items ]

The returned list of entities

{
  • "$_type": "ConversationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationSearchFilter

$_type
string
Default: "AssigneePersonIdConversationSearchFilter"
Value: "AssigneePersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "AssigneePersonIdConversationSearchFilter",
  • "field": "ASSIGNEE_PERSON_ID",
  • "operator": {
    }
}

ConversationStateChangeData

$_type
string
Default: "ConversationStateChangeData"
Value: "ConversationStateChangeData"
state
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

timestamp
integer <int64>

Unix timestamp when the conversation state was set (in ms).

{
  • "$_type": "ConversationStateChangeData",
  • "state": "CREATED",
  • "timestamp": 0
}

ConversationStateOperator

$_type
string
Default: "EqualsConversationStateOperator"
Value: "EqualsConversationStateOperator"
type
string (EConversationStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

Example
{
  • "$_type": "EqualsConversationStateOperator",
  • "type": "EQUALS",
  • "value": "CREATED"
}

ConversationTemplate

$_type
string
Default: "ConversationTemplate"
Value: "ConversationTemplate"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the conversation template. Maximum of 250 characters. Mandatory.

description
string

Description of the conversation template. Maximum of 500 characters. Optional.

defaultTemplate
boolean

If true, this will be the default template for the initial engagement Type

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object

A map of localized versions of the name and description of this entity

inheritConfigurationAndTexts
boolean

True if conversations, created from this template, inherit all configuration and texts. If omitted, the property is set to false. New conversations receive a copy of this conversation template's configuration and texts.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "ConversationTemplate",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "defaultTemplate": true,
  • "conversationVisibility": "PRIVATE",
  • "initialEngagementType": "CHAT_REQUEST",
  • "translations": {
    },
  • "inheritConfigurationAndTexts": true,
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

ConversationTemplateIdConversationHistorySearchFilter

$_type
string
Default: "ConversationTemplateIdConversationHistorySearchFilter"
Value: "ConversationTemplateIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationTemplateIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ConversationTemplateIdConversationSearchFilter

$_type
string
Default: "ConversationTemplateIdConversationSearchFilter"
Value: "ConversationTemplateIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ConversationTemplateIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ConversationTemplateList

$_type
string
Default: "ConversationTemplateList"
Value: "ConversationTemplateList"
Array of objects (ConversationTemplate) [ items ]

The list of mapped entities

{
  • "$_type": "ConversationTemplateList",
  • "items": [
    ]
}

ConversationTemplateOrderBy

$_type
string
Default: "ConversationTemplateOrderBy"
Value: "ConversationTemplateOrderBy"
field
string (EConversationTemplateOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","DEFAULT_TEMPLATE: Sort by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ConversationTemplateOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ConversationTemplateQuery

$_type
string
Default: "ConversationTemplateQuery"
Value: "ConversationTemplateQuery"
Array of any (ConversationTemplateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ConversationTemplateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ConversationTemplateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ConversationTemplateResult

$_type
string
Default: "ConversationTemplateResult"
Value: "ConversationTemplateResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationTemplate) [ items ]

The returned list of entities

{
  • "$_type": "ConversationTemplateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ConversationTemplateSearchFilter

$_type
string
Default: "CreationTimestampConversationTemplateSearchFilter"
Value: "CreationTimestampConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampConversationTemplateSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ConversationTemplateTranslation

$_type
string
Default: "ConversationTemplateTranslation"
Value: "ConversationTemplateTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "ConversationTemplateTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

ConversationUnassignedEvent

$_type
string
Default: "ConversationUnassignedEvent"
Value: "ConversationUnassignedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationUnassignedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationUpdatedEvent

$_type
string
Default: "ConversationUpdatedEvent"
Value: "ConversationUpdatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "ConversationUpdatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversation": {
    }
}

ConversationVisibilityOperator

$_type
string
Default: "EqualsConversationVisibilityOperator"
Value: "EqualsConversationVisibilityOperator"
type
string (EConversationVisibilityOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

Example
{
  • "$_type": "EqualsConversationVisibilityOperator",
  • "type": "EQUALS",
  • "value": "PRIVATE"
}

ConversationsAddExternalParticipantBody

externalMessengerContactId
string

The ID of the ExternalMessengerContact to add

{
  • "externalMessengerContactId": "string"
}

ConversationsAddParticipantBody

personId
string

Id of the person to add

hidden
boolean

If the person should be hidden or not. Note: only secondary agents and bots may be hidden.

conversationStarred
boolean

If this conversation should be marked as starred for the person. If null, the default value is false

{
  • "personId": "string",
  • "hidden": true,
  • "conversationStarred": true
}

ConversationsChangeParticipantVisibilityBody

personId
string
hidden
boolean
{
  • "personId": "string",
  • "hidden": true
}

ConversationsEndBody

reason
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

comment
string
{
  • "reason": "ENDED_BY_PARTICIPANT",
  • "comment": "string"
}

ConversationsOffboardParticipantBody

personId
string
reason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

comment
string
{
  • "personId": "string",
  • "reason": "FORWARDED",
  • "comment": "string"
}

ConversationsSetAssigneePersonBody

personId
string
{
  • "personId": "string"
}

ConversationsSetAwaitedPersonTypeBody

awaitedPersonType
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

{
  • "awaitedPersonType": "NONE"
}

ConversationsSetContextPersonBody

personId
string
{
  • "personId": "string"
}

ConversationsSetLocaleBody

locale
string

the new locale

{
  • "locale": "string"
}

ConversationsSetScheduledTimestampBody

scheduledTimestamp
integer <int64>

the new scheduledTimestamp rounded to nearest minute

{
  • "scheduledTimestamp": 0
}

ConversationsSetStarredBody

personId
string

the person for whom the starred status will be set

starred
boolean

the starred status to b set

{
  • "personId": "string",
  • "starred": true
}

ConversationsSetTopicBody

topic
string

the new topic

{
  • "topic": "string"
}

ConversationsSetVisibilityBody

conversationVisibility
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

{
  • "conversationVisibility": "PRIVATE"
}

ConversationsSetVisitorDataBody

$_type
string
Default: "ConversationsSetVisitorDataBody"
Value: "ConversationsSetVisitorDataBody"
visitorData
string

Custom visitor data in any format.

{
  • "$_type": "ConversationsSetVisitorDataBody",
  • "visitorData": "string"
}

CountResult

$_type
string
Default: "CountResult"
Value: "CountResult"
count
integer <int64>

Number of entities found

{
  • "$_type": "CountResult",
  • "count": 0
}

CreationTimestampAccountSearchFilter

$_type
string
Default: "CreationTimestampAccountSearchFilter"
Value: "CreationTimestampAccountSearchFilter"
field
string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampAccountSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampApiKeySearchFilter

$_type
string
Default: "CreationTimestampApiKeySearchFilter"
Value: "CreationTimestampApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampAuditChangeSearchFilter

$_type
string
Default: "CreationTimestampAuditChangeSearchFilter"
Value: "CreationTimestampAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

CreationTimestampCannedResponseSearchFilter

$_type
string
Default: "CreationTimestampCannedResponseSearchFilter"
Value: "CreationTimestampCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

CreationTimestampCannedResponseUsageSearchFilter

$_type
string
Default: "CreationTimestampCannedResponseUsageSearchFilter"
Value: "CreationTimestampCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

CreationTimestampConversationHistorySearchFilter

$_type
string
Default: "CreationTimestampConversationHistorySearchFilter"
Value: "CreationTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

CreationTimestampConversationInvitationSearchFilter

$_type
string
Default: "CreationTimestampConversationInvitationSearchFilter"
Value: "CreationTimestampConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

CreationTimestampConversationSearchFilter

$_type
string
Default: "CreationTimestampConversationSearchFilter"
Value: "CreationTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

CreationTimestampConversationTemplateSearchFilter

$_type
string
Default: "CreationTimestampConversationTemplateSearchFilter"
Value: "CreationTimestampConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampCustomExternalMessengerChannelSearchFilter"
Value: "CreationTimestampCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampDeputyRelationshipSearchFilter

$_type
string
Default: "CreationTimestampDeputyRelationshipSearchFilter"
Value: "CreationTimestampDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

CreationTimestampDialogBotSearchFilter

$_type
string
Default: "CreationTimestampDialogBotSearchFilter"
Value: "CreationTimestampDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampDomainSearchFilter

$_type
string
Default: "CreationTimestampDomainSearchFilter"
Value: "CreationTimestampDomainSearchFilter"
field
string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampDomainSearchFilter",
  • "field": "DOMAIN_NAME",
  • "operator": {
    }
}

CreationTimestampExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerChannelSearchFilter"
Value: "CreationTimestampExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampExternalMessengerContactSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerContactSearchFilter"
Value: "CreationTimestampExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

CreationTimestampFileUploadInterceptorSearchFilter

$_type
string
Default: "CreationTimestampFileUploadInterceptorSearchFilter"
Value: "CreationTimestampFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampFileUploadInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampMessageInterceptorSearchFilter

$_type
string
Default: "CreationTimestampMessageInterceptorSearchFilter"
Value: "CreationTimestampMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampMessageInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampNamedAreaSearchFilter

$_type
string
Default: "CreationTimestampNamedAreaSearchFilter"
Value: "CreationTimestampNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampSmsExternalMessengerChannelSearchFilter"
Value: "CreationTimestampSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampSuggestionSourceSearchFilter

$_type
string
Default: "CreationTimestampSuggestionSourceSearchFilter"
Value: "CreationTimestampSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampSuggestionSourceSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampTeamSearchFilter

$_type
string
Default: "CreationTimestampTeamSearchFilter"
Value: "CreationTimestampTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreationTimestampUserSearchFilter

$_type
string
Default: "CreationTimestampUserSearchFilter"
Value: "CreationTimestampUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

CreationTimestampWebhookRegistrationSearchFilter

$_type
string
Default: "CreationTimestampWebhookRegistrationSearchFilter"
Value: "CreationTimestampWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "CreationTimestampWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

CreatorPersonIdConversationInvitationSearchFilter

$_type
string
Default: "CreatorPersonIdConversationInvitationSearchFilter"
Value: "CreatorPersonIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "CreatorPersonIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

CreatorTypeConversationInvitationSearchFilter

$_type
string
Default: "CreatorTypeConversationInvitationSearchFilter"
Value: "CreatorTypeConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationCreatorTypeOperator)
{
  • "$_type": "CreatorTypeConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

CustomActionData

$_type
string
Default: "CustomConversationActionData"
Value: "CustomConversationActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionBarPosition
string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

apiEventTriggerFilter
string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

Example
{
  • "$_type": "CustomConversationActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "actionBarPosition": "ALWAYS_VISIBLE",
  • "apiEventTriggerFilter": "SELF"
}

CustomActionInvocationErrorResponse

$_type
string
Default: "CustomActionInvocationErrorResponse"
Value: "CustomActionInvocationErrorResponse"
type
string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
errorText
string

The error text why the request failed

{
  • "$_type": "CustomActionInvocationErrorResponse",
  • "type": "EXECUTED",
  • "errorText": "string"
}

CustomActionInvocationExecutedResponse

$_type
string
Default: "CustomActionInvocationExecutedResponse"
Value: "CustomActionInvocationExecutedResponse"
type
string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
{
  • "$_type": "CustomActionInvocationExecutedResponse",
  • "type": "EXECUTED"
}

CustomActionInvocationExecutionStartedResponse

$_type
string
Default: "CustomActionInvocationExecutionStartedResponse"
Value: "CustomActionInvocationExecutionStartedResponse"
type
string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
{
  • "$_type": "CustomActionInvocationExecutionStartedResponse",
  • "type": "EXECUTED"
}

CustomActionInvocationResponse

$_type
string
Default: "CustomActionInvocationErrorResponse"
Value: "CustomActionInvocationErrorResponse"
type
string (ECustomActionInvocationResponseType)
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
errorText
string

The error text why the request failed

Example
{
  • "$_type": "CustomActionInvocationErrorResponse",
  • "type": "ERROR",
  • "errorText": "string"
}

CustomActionOrderBy

$_type
string
Default: "CustomActionOrderBy"
Value: "CustomActionOrderBy"
field
string (ECustomActionOrderByField)
Enum: "ID" "KEY"
enum-descriptions: ["ID: Sort by the 'ID' attribute","KEY: Sort by the 'key' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CustomActionOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CustomActionQuery

$_type
string
Default: "CustomActionQuery"
Value: "CustomActionQuery"
Array of any (CustomActionSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CustomActionOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CustomActionQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CustomActionResult

$_type
string
Default: "CustomActionResult"
Value: "CustomActionResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of any (CustomActionData) [ items ]

The returned list of entities

{
  • "$_type": "CustomActionResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CustomActionSearchFilter

$_type
string
Default: "KeyCustomActionSearchFilter"
Value: "KeyCustomActionSearchFilter"
field
string (ECustomActionSearchFilterField)
enum-descriptions: ["KEY: Filter by the 'key' attribute"]
any (StringOperator)
{
  • "$_type": "KeyCustomActionSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

CustomActionTranslation

$_type
string
Default: "CustomActionTranslation"
Value: "CustomActionTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "CustomActionTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

CustomActionWebhookRegistration

$_type
string
Default: "CustomActionWebhookRegistration"
Value: "CustomActionWebhookRegistration"
endpoint
string

The endpoint URL of the webhook registration. Requests for the webhook events triggered by the related custom action invocation are made to this URL. Maximum length of 4000 characters. Cannot be omitted.

apiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

secret
string

A secret which is sent with each webhook event. Maximum length of 4000 characters. Can be omitted.

outboundTimeout
integer <int64>

Timeout time for the outbound requests.

{
  • "$_type": "CustomActionWebhookRegistration",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "outboundTimeout": 0
}

CustomChannelContactIdentifierTranslation

$_type
string
Default: "CustomChannelContactIdentifierTranslation"
Value: "CustomChannelContactIdentifierTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

{
  • "$_type": "CustomChannelContactIdentifierTranslation",
  • "id": "string",
  • "name": "string"
}

CustomConversationActionData

$_type
string
Default: "CustomConversationActionData"
Value: "CustomConversationActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionBarPosition
string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

apiEventTriggerFilter
string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

{
  • "$_type": "CustomConversationActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "actionBarPosition": "ALWAYS_VISIBLE",
  • "apiEventTriggerFilter": "SELF"
}

CustomConversationActionInvocationEvent

$_type
string
Default: "CustomConversationActionInvocationEvent"
Value: "CustomConversationActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "CustomConversationActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    }
}

CustomConversationActionInvocationRequest

$_type
string
Default: "CustomConversationActionInvocationRequest"
Value: "CustomConversationActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

{
  • "$_type": "CustomConversationActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    }
}

CustomExternalMessengerChannel

$_type
string
Default: "CustomExternalMessengerChannel"
Value: "CustomExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can not be omitted.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the external messenger are dispatched.

outboundSupported
boolean

Defines if outbound requests to create external messenger contacts or conversations are supported

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

contactIdentifierFieldName
string

The name of the field that contacts can be identified by in the external messenger. This can be an email address, a phone number, a number, or some other identifier.

contactIdentifierFieldType
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

object

The translations for the contact identifier field

supportsMultipleConversationsPerContact
boolean

The channel supports multiple conversations for a contact. If false, there can be only one active conversation for that contact.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "channelIcon": "string",
  • "sourceId": "string",
  • "type": "CUSTOM",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": true,
  • "outboundSupported": true,
  • "outboundTimeoutMillis": 0,
  • "contactIdentifierFieldName": "string",
  • "contactIdentifierFieldType": "EMAIL",
  • "contactIdentifierTranslations": {
    },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": {
    }
}

CustomExternalMessengerChannelOrderBy

$_type
string
Default: "CustomExternalMessengerChannelOrderBy"
Value: "CustomExternalMessengerChannelOrderBy"
field
string (ECustomExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "CustomExternalMessengerChannelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

CustomExternalMessengerChannelQuery

$_type
string
Default: "CustomExternalMessengerChannelQuery"
Value: "CustomExternalMessengerChannelQuery"
Array of any (CustomExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (CustomExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "CustomExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

CustomExternalMessengerChannelResult

$_type
string
Default: "CustomExternalMessengerChannelResult"
Value: "CustomExternalMessengerChannelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (CustomExternalMessengerChannel) [ items ]

The returned list of entities

{
  • "$_type": "CustomExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

CustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
Value: "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (StringOperator)
Example
{
  • "$_type": "ContactIdentifierFieldNameCustomExternalMessengerChannelSearchFilter",
  • "field": "CONTACT_IDENTIFIER_FIELD_NAME",
  • "operator": {
    }
}

CustomMessageActionData

$_type
string
Default: "CustomMessageActionData"
Value: "CustomMessageActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

messageTypes
Array of strings (EMessageType)
Items Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"

The message types the action will be available for

fileMessageMimeTypeRegex
string

A regular expression that matches all MIME types of file messages the action can be carried out on. The regular expression must conform to both Java and JavaScript syntax as it is validated on both the server and the client.

invocableForMessagesSentBy
Array of strings (EMessageSenderType)
Items Enum: "SELF" "OTHER_VISITOR" "OTHER_AGENT" "BOT"

A list of types of sender of the messages the action will be available for

apiEventTriggerFilter
string (ECustomMessageActionEventTriggerFilter)
Enum: "SENDER" "SELF" "OTHERS" "ALL"
enum-descriptions: ["SENDER: Trigger the custom action API event only for the sender of the target message","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom message action API event should be triggered for

{
  • "$_type": "CustomMessageActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "messageTypes": [
    ],
  • "fileMessageMimeTypeRegex": "string",
  • "invocableForMessagesSentBy": [
    ],
  • "apiEventTriggerFilter": "SENDER"
}

CustomMessageActionInvocationEvent

$_type
string
Default: "CustomMessageActionInvocationEvent"
Value: "CustomMessageActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "CustomMessageActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "message": {
    }
}

CustomMessageActionInvocationRequest

$_type
string
Default: "CustomMessageActionInvocationRequest"
Value: "CustomMessageActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "CustomMessageActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "message": {
    }
}

CustomPersonActionData

$_type
string
Default: "CustomPersonActionData"
Value: "CustomPersonActionData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

key
string

The unique key of the action

name
string

The name of the custom action. Maximum of 250 characters. Can not be omitted.

description
string

The description of the custom action. Maximum of 500 characters. Can be omitted.

object

A map of localized versions of the name and description of this custom action

string or Avatar (object)
expand-query-key: actionIcon
type: ExpandableField

The avatar ID of the avatar used as the action's icon. The ID can be expanded.

state
string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

object (CustomActionWebhookRegistration)

Holds information about the optional webhook registration or outbound request triggered by the invocation of a custom action.

  • For EWebApiVersion.V3 a webhook is triggered.
  • For newer versions an outbound request is triggered.

invocableFromFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends that the action may be invoked from

invocableForConversationStates
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"

The conversation states the action may be invoked in

invocableForParticipationStates
Array of strings (EConversationParticipationState)
Items Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"

The participation states a person may invoke the action in

invocableBy
Array of strings (EConversationImpactingParticipationType)
Items Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"

The types of participant who may invoke the action

triggerSystemMessage
boolean

A flag indicating whether the action should trigger a system message. The default value is true.

triggerVisitorMobileSdkEvent
boolean

A flag indicating whether the action should trigger a visitor mobile SDK event. The default value is false.

triggerVisitorEmbeddedApiEvent
boolean

A flag indicating whether the action should trigger an Embedded JS API event. The default value is false.

triggerVisitorFloatingApiEvent
boolean

A flag indicating whether the action should trigger a Visitor JS API event. The default value is false.

triggerAgentMobileSdkEvent
boolean

A flag indicating whether the action should trigger an agent mobile SDK event. The default value is false.

sortingOrder
integer <int32>

The sorting order within the custom actions when displayed in the action bar. The default value is 5.

type
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

availableForTargetPersonTypes
Array of strings (ECustomPersonActionTargetPersonType)
Items Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"

The person types the action can be invoked on

availableForTargetFrontends
Array of strings (EFrontend)
Items Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"

The frontends of the person the action can be invoked on. If omitted, the action can be invoked on any of the target person's frontends, even if they aren't present in the conversation at that time.

apiEventTriggerFilter
string (ECustomPersonActionEventTriggerFilter)
Enum: "TARGET_PERSON" "SELF" "OTHERS" "ALL"
enum-descriptions: ["TARGET_PERSON: Trigger the custom action API event only for the target person","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom person action API event should be triggered for

{
  • "$_type": "CustomPersonActionData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "key": "string",
  • "name": "string",
  • "description": "string",
  • "translations": {
    },
  • "actionIcon": "string",
  • "state": "ACTIVE",
  • "triggerWebhook": {
    },
  • "invocableFromFrontends": [
    ],
  • "invocableForConversationStates": [
    ],
  • "invocableForParticipationStates": [
    ],
  • "invocableBy": [
    ],
  • "triggerSystemMessage": true,
  • "triggerVisitorMobileSdkEvent": true,
  • "triggerVisitorEmbeddedApiEvent": true,
  • "triggerVisitorFloatingApiEvent": true,
  • "triggerAgentMobileSdkEvent": true,
  • "sortingOrder": 0,
  • "type": "CONVERSATION",
  • "availableForTargetPersonTypes": [
    ],
  • "availableForTargetFrontends": [
    ],
  • "apiEventTriggerFilter": "TARGET_PERSON"
}

CustomPersonActionInvocationEvent

$_type
string
Default: "CustomPersonActionInvocationEvent"
Value: "CustomPersonActionInvocationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "CustomPersonActionInvocationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "person": {
    }
}

CustomPersonActionInvocationRequest

$_type
string
Default: "CustomPersonActionInvocationRequest"
Value: "CustomPersonActionInvocationRequest"
accountId
string
serviceName
string
actionType
string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

actionKey
string

The unique key of the invoked CustomActionData

actionInvocationId
string

The unique invocation ID of the action

actionInvocationTimestamp
integer <int64>

The timestamp of the action invocation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ConversationData)

Metadata information about a conversation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "CustomPersonActionInvocationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "actionType": "CONVERSATION",
  • "actionKey": "string",
  • "actionInvocationId": "string",
  • "actionInvocationTimestamp": 0,
  • "executedBy": {
    },
  • "conversation": {
    },
  • "person": {
    }
}

DefaultTemplateConversationTemplateSearchFilter

$_type
string
Default: "DefaultTemplateConversationTemplateSearchFilter"
Value: "DefaultTemplateConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (BooleanOperator)
{
  • "$_type": "DefaultTemplateConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DeputyDefinition

$_type
string
Default: "DeputyDefinition"
Value: "DeputyDefinition"
type
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
id
string

The id of the deputy. This is either a user ID, if it is an agent or a team ID if the deputy is a team.

{
  • "$_type": "DeputyDefinition",
  • "type": "AGENT",
  • "id": "string"
}

DeputyDelegationEscalationLevelOperator

$_type
string
Default: "EqualsDeputyDelegationEscalationLevelOperator"
Value: "EqualsDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

Example
{
  • "$_type": "EqualsDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "value": "LEVEL_1"
}

DeputyDelegationPushNotificationEvent

$_type
string
Default: "DeputyDelegationPushNotificationEvent"
Value: "DeputyDelegationPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation delegated to the deputy

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "DeputyDelegationPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string",
  • "primaryAgentPerson": {
    }
}

DeputyIdDeputyRelationshipSearchFilter

$_type
string
Default: "DeputyIdDeputyRelationshipSearchFilter"
Value: "DeputyIdDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "DeputyIdDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

DeputyRelationship

$_type
string
Default: "DeputyRelationship"
Value: "DeputyRelationship"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

agentUserId
string

The agent user id to which the defined deputy belongs to

deputyType
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
deputyId
string

The id of the user or team which is the deputy of the defined agent user

escalationLevel
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

{
  • "$_type": "DeputyRelationship",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "agentUserId": "string",
  • "deputyType": "AGENT",
  • "deputyId": "string",
  • "escalationLevel": "LEVEL_1"
}

DeputyRelationshipList

$_type
string
Default: "DeputyRelationshipList"
Value: "DeputyRelationshipList"
Array of objects (DeputyRelationship) [ items ]

The list of mapped entities

{
  • "$_type": "DeputyRelationshipList",
  • "items": [
    ]
}

DeputyRelationshipModificationEvent

$_type
string
Default: "DeputyRelationshipModificationEvent"
Value: "DeputyRelationshipModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (DeputyRelationship)

Model of a deputy relation ship.
It is a link between one agent and an deputy agent or team

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "DeputyRelationshipModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

DeputyRelationshipOrderBy

$_type
string
Default: "DeputyRelationshipOrderBy"
Value: "DeputyRelationshipOrderBy"
field
string (EDeputyRelationshipOrderByField)
Enum: "ID" "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","AGENT_USER_ID: Sort by the 'agentUserId' attribute","DEPUTY_TYPE: Sort by the 'deputyType' attribute","DEPUTY_ID: Sort by the 'deputyId' attribute","ESCALATION_LEVEL: Sort by the 'escalationLevel' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "DeputyRelationshipOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

DeputyRelationshipQuery

$_type
string
Default: "DeputyRelationshipQuery"
Value: "DeputyRelationshipQuery"
Array of any (DeputyRelationshipSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DeputyRelationshipOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "DeputyRelationshipQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

DeputyRelationshipResult

$_type
string
Default: "DeputyRelationshipResult"
Value: "DeputyRelationshipResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (DeputyRelationship) [ items ]

The returned list of entities

{
  • "$_type": "DeputyRelationshipResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

DeputyRelationshipSearchFilter

$_type
string
Default: "AgentUserIdDeputyRelationshipSearchFilter"
Value: "AgentUserIdDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "AgentUserIdDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

DeputyTypeDeputyRelationshipSearchFilter

$_type
string
Default: "DeputyTypeDeputyRelationshipSearchFilter"
Value: "DeputyTypeDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (DeputyTypeOperator)
{
  • "$_type": "DeputyTypeDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

DeputyTypeOperator

$_type
string
Default: "EqualsDeputyTypeOperator"
Value: "EqualsDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
Example
{
  • "$_type": "EqualsDeputyTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

DescriptionApiKeySearchFilter

$_type
string
Default: "DescriptionApiKeySearchFilter"
Value: "DescriptionApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionConversationTemplateSearchFilter

$_type
string
Default: "DescriptionConversationTemplateSearchFilter"
Value: "DescriptionConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionNamedAreaSearchFilter

$_type
string
Default: "DescriptionNamedAreaSearchFilter"
Value: "DescriptionNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionTeamSearchFilter

$_type
string
Default: "DescriptionTeamSearchFilter"
Value: "DescriptionTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DescriptionWebhookRegistrationSearchFilter

$_type
string
Default: "DescriptionWebhookRegistrationSearchFilter"
Value: "DescriptionWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DescriptionWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

DeviceInfo

$_type
string
Default: "DeviceInfo"
Value: "DeviceInfo"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

osName
string

Operation system name

osVersion
string

Operation system version

browserName
string

Browser name

browserVersion
string

Browser version

userAgent
string

Original user agent string from the browser

screenWidth
integer <int32>

Screen width of the device

screenHeight
integer <int32>

Screen height of the device

screenPixelRatio
number <float>

Screen pixel ratio of the device

type
string (EDeviceType)
Enum: "MOBILE" "DESKTOP"
enum-descriptions: ["MOBILE: Mobile phone / tablet / etc","DESKTOP: Desktop computer"]

The device type of the physical device

identifier
string

Device identifier (via fingerprinting in browser and MobileSDK)

identifierSource
string (EIdentifierSource)
Enum: "COOKIE" "DEVICE_ID"
enum-descriptions: ["COOKIE: Cookie from browser","DEVICE_ID: Device id of MobileSDK"]

The source of the identifier (for devices)

pushToken
string

Token for pushing mobile notifications.

pushKitToken
string

Token for pushing mobile ios voip notifications.

mobilePushNotificationVersion
integer <int32>

Push Notification version supported by the device.

ownerPersonId
string

The person id of the device info owner

{
  • "$_type": "DeviceInfo",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "osName": "string",
  • "osVersion": "string",
  • "browserName": "string",
  • "browserVersion": "string",
  • "userAgent": "string",
  • "screenWidth": 0,
  • "screenHeight": 0,
  • "screenPixelRatio": 0,
  • "type": "MOBILE",
  • "identifier": "string",
  • "identifierSource": "COOKIE",
  • "pushToken": "string",
  • "pushKitToken": "string",
  • "mobilePushNotificationVersion": 0,
  • "ownerPersonId": "string"
}

DialogBotData

$_type
string
Default: "DialogBotData"
Value: "DialogBotData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the dialog bot. Maximum length of 250 characters. Can not be omitted.

description
string

Description of the dialog bot. Maximum length of 500 characters. Can be omitted.

botPersonId
string

ID of the person representing the bot

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters.

Based on the configured filters/flags the following events will be sent to the endpoint:

  • TypedEvent.BOT_ONBOARDING_OFFER: When a person matching the onboarding filter joins a conversation.
  • TypedEvent.BOT_REBOARDING_OFFER: When a person writes a message to an unassigned conversation and the reboardingEnabled flag is set to true.
  • TypedEvent.BOT_OFFBOARDING_OFFER: When a person matching the offboarding filter leaves a conversation or the conversation ends.
  • TypedEvent.BOT_DIALOG_OPENED: When a preaviously accepted bot dialog starts
  • TypedEvent.BOT_DIALOG_MESSAGE: On each message of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_MESSAGE_STATE: On each message state update of a previously accepted bot dialog.
  • TypedEvent.BOT_DIALOG_COUNTERPART_CHANGED: When the counterpart person of dialog changes during a dialog.
  • TypedEvent.BOT_DIALOG_CLOSED: When a previously accepted bot dialog closes.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory for webhookApiVersion greater than 3.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret which is send with each webhook event.

Maximum length of 4000 characters.

onboardingOrder
integer <int32>

Defines the onboarding order of this bot.

If more than one bots want to participate in an onboarding, the one with the lowest order value will go first.

reboardingOrder
integer <int32>

Defines the reboarding order of this bot.

If more than one bots want to participate in an reboarding, the one with the lowest order value will go first.

offboardingOrder
integer <int32>

Defines the offboarding priority of this bot.

If more than one bots want to participate in an offboarding, the one with the lowest order value will go first.

onboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
reboardingEnabled
boolean

Defines if this bot can reboard.

A reboarding offer will be sent only if this flag is enabled, giving the bot the chance to be part of the reboarding.

offboardingFilter
string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
needsCounterpartPresence
boolean

Defines if the counterpart has to be online for the onboarding to start. E.g. if questions have to be answered live.

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the bot are dispatched.

automaticTypingStateHandlingEnabled
boolean

Defines if the bot should automatically display a typing indicator after receiving a message from the counterpart person. The indication starts 1s after the message is received. The typing state can also be influenced through the web API, independently of this property.

onTimeoutBehavior
string (EBotDialogTimeoutBehavior)
Enum: "ABORT" "HAND_OFF"
enum-descriptions: ["ABORT: Abort on-boarding the conversation when it comes to timeout. Default for internal bots.","HAND_OFF: Proceed further in on-boarding the conversation when it comes to timeout. Default for external bots."]

Defines what should happen with the conversation when it comes to timeout during on-boarding.
When omitted the default for external bots is set to HAND_OFF.

{
  • "$_type": "DialogBotData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "botPersonId": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "outboundTimeoutMillis": 0,
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "onboardingOrder": 0,
  • "reboardingOrder": 0,
  • "offboardingOrder": 0,
  • "onboardingFilter": "VISITORS",
  • "reboardingEnabled": true,
  • "offboardingFilter": "VISITORS",
  • "needsCounterpartPresence": true,
  • "messageStateHandledExternally": true,
  • "automaticTypingStateHandlingEnabled": true,
  • "onTimeoutBehavior": "ABORT"
}

DialogBotOrderBy

$_type
string
Default: "DialogBotOrderBy"
Value: "DialogBotOrderBy"
field
string (EDialogBotOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "DialogBotOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

DialogBotQuery

$_type
string
Default: "DialogBotQuery"
Value: "DialogBotQuery"
Array of any (DialogBotSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DialogBotOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "DialogBotQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

DialogBotResult

$_type
string
Default: "DialogBotResult"
Value: "DialogBotResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (DialogBotData) [ items ]

The returned list of entities

{
  • "$_type": "DialogBotResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

DialogBotSearchFilter

$_type
string
Default: "BotPersonIdDialogBotSearchFilter"
Value: "BotPersonIdDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

Example
{
  • "$_type": "BotPersonIdDialogBotSearchFilter",
  • "field": "BOT_PERSON_ID",
  • "operator": {
    }
}

Domain

$_type
string
Default: "Domain"
Value: "Domain"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

domainName
string

The name/address of the domain. It should normally contain a protocol (e.g. http:// or https://) and the url of the domain (e.g. www.unblu.com). Maximum of 250 characters. Can not be omitted. 250 characters.

{
  • "$_type": "Domain",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "domainName": "string"
}

DomainList

$_type
string
Default: "DomainList"
Value: "DomainList"
Array of objects (Domain) [ items ]

The list of mapped entities

{
  • "$_type": "DomainList",
  • "items": [
    ]
}

DomainModificationEvent

$_type
string
Default: "DomainModificationEvent"
Value: "DomainModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Domain)

Model of a domain

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "DomainModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

DomainNameDomainSearchFilter

$_type
string
Default: "DomainNameDomainSearchFilter"
Value: "DomainNameDomainSearchFilter"
field
string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "DomainNameDomainSearchFilter",
  • "field": "DOMAIN_NAME",
  • "operator": {
    }
}

DomainOrderBy

$_type
string
Default: "DomainOrderBy"
Value: "DomainOrderBy"
field
string (EDomainOrderByField)
Enum: "ID" "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","DOMAIN_NAME: Sort by the 'domainName' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "DomainOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

DomainQuery

$_type
string
Default: "DomainQuery"
Value: "DomainQuery"
Array of any (DomainSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (DomainOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "DomainQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

DomainResult

$_type
string
Default: "DomainResult"
Value: "DomainResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Domain) [ items ]

The returned list of entities

{
  • "$_type": "DomainResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

DomainSearchFilter

$_type
string
Default: "CreationTimestampDomainSearchFilter"
Value: "CreationTimestampDomainSearchFilter"
field
string (EDomainSearchFilterField)
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampDomainSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EAccountOrderByField

string (EAccountOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EAccountSearchFilterField

string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EActionBarItemPosition

string (EActionBarItemPosition)
Enum: "ALWAYS_VISIBLE" "ALWAYS_IN_OVERFLOW" "SHOW_IF_POSSIBLE"
enum-descriptions: ["ALWAYS_VISIBLE: Action is always displayed in the action bar","ALWAYS_IN_OVERFLOW: Action is always displayed in the overflow section of the action bar","SHOW_IF_POSSIBLE: Action is displayed in the action bar if there is enough space"]

The position of an item within an action bar

"ALWAYS_VISIBLE"

EAgentRemovalType

string (EAgentRemovalType)
Enum: "KEEP_AGENTS" "REMOVE_ASSIGNED_AGENT" "REMOVE_ALL_AGENTS"
enum-descriptions: ["KEEP_AGENTS","REMOVE_ASSIGNED_AGENT","REMOVE_ALL_AGENTS"]
"KEEP_AGENTS"

EAgentStateOrderByField

string (EAgentStateOrderByField)
Enum: "PERSON_ID" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute","STATUS_MESSAGE: Sort by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Sort by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Sort by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Sort by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Sort by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
"PERSON_ID"

EAgentStateSearchFilterField

string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
"PERSON_ID"

EAnswerStatus

string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

"PENDING"

EApiKeyOrderByField

string (EApiKeyOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","API_KEY: Sort by the 'apiKey' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EApiKeySearchFilterField

string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EAuditChangeInteractionTypeOperatorType

string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EAuditChangeOrderByField

string (EAuditChangeOrderByField)
Enum: "ID" "CREATION_TIMESTAMP" "ENTITY_TYPE" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["ID","CREATION_TIMESTAMP","ENTITY_TYPE","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
"ID"

EAuditChangeSearchFilterField

string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
"CREATION_TIMESTAMP"

EAuditChangeTypeOperatorType

string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EAuthorizationRole

string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

"SUPER_ADMIN"

EAuthorizationRoleOperatorType

string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EAvailabilityState

string (EAvailabilityState)
Enum: "AVAILABLE" "BUSY" "UNAVAILABLE"
enum-descriptions: ["AVAILABLE: There is at least one agent available for the specified named area and locale.","BUSY: There is at least one agent watching the inbound queue for the specified named area and locale but the max capacity of parallel conversations is reached. It is very likely, that an agent will be available in a short time.","UNAVAILABLE: There is currently no agent handling any inbound queue items. It is very unlikely, that an agent will be available in a short time."]

Possible state for agents availability

"AVAILABLE"

EAwaitedPersonType

string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

"NONE"

EAwaitedPersonTypeOperatorType

string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EBooleanOperatorType

string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
"EQUALS"

EBotDialogFilter

string (EBotDialogFilter)
Enum: "VISITORS" "AGENTS" "BOTH" "NONE"
enum-descriptions: ["VISITORS: Only handle dialogs that with visitors as the counterpart.","AGENTS: Only handle dialogs with agents as the counterpart","BOTH: Handle dialogs with both agents and visitors as the counterpart","NONE: Don't handle any dialogs."]
"VISITORS"

EBotDialogFinishReason

string (EBotDialogFinishReason)
Enum: "HAND_OFF" "SOLVED" "ABORTED"
enum-descriptions: ["HAND_OFF: The bot is done with his part and the next bot can to the on-, re- or offboarding.","SOLVED: The problem of the dialog was solved and therefore no further bots are invoked.","ABORTED: The dialog was not successful and the on-, re- or offboarding has to be aborted."]

Reason why a bot finished a dialog.

"HAND_OFF"

EBotDialogTimeoutBehavior

string (EBotDialogTimeoutBehavior)
Enum: "ABORT" "HAND_OFF"
enum-descriptions: ["ABORT: Abort on-boarding the conversation when it comes to timeout. Default for internal bots.","HAND_OFF: Proceed further in on-boarding the conversation when it comes to timeout. Default for external bots."]

Defines what should happen with the conversation when it comes to timeout during on-boarding.
When omitted the default for external bots is set to HAND_OFF.

"ABORT"

EBotDialogType

string (EBotDialogType)
Enum: "ONBOARDING" "REBOARDING" "OFFBOARDING"
enum-descriptions: ["ONBOARDING","REBOARDING","OFFBOARDING"]

Type of a bot dialog

"ONBOARDING"

ECallEndReason

string (ECallEndReason)
Enum: "NOT_ANSWERED" "ABORTED_BY_INITIATOR" "DECLINED" "DECLINED_BECAUSE_UNAVAILABLE" "LAST_MANDATORY_PARTICIPANT_LEFT" "CONVERSATION_ENDED" "RECORDING_DENIED" "SYSTEM_SHUTDOWN" "UNKNOWN"
enum-descriptions: ["NOT_ANSWERED: The call was not answered","ABORTED_BY_INITIATOR: The initiator aborted the call while it was still ringing","DECLINED: The call was declined","DECLINED_BECAUSE_UNAVAILABLE: The call was declined because all conversation participants called were unavailable","LAST_MANDATORY_PARTICIPANT_LEFT: The call ended because the last mandatory participant left","CONVERSATION_ENDED: The call ended because the conversation ended","RECORDING_DENIED: The call ended because conversation recording was denied","SYSTEM_SHUTDOWN: The call ended because the collaboration server pod was shut down","UNKNOWN: The call ended for another reason"]

The reason a call has ended

"NOT_ANSWERED"

ECallOrderByField

string (ECallOrderByField)
Enum: "ID" "CONVERSATION_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","INITIATION_TIMESTAMP: Sort by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Sort by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Sort by the 'establishedTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute"]
"ID"

ECallParticipationEndReason

string (ECallParticipationEndReason)
Enum: "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "MISSED_BECAUSE_UNAVAILABLE" "TERMINATED_BY_PARTICIPANT" "TERMINATED_BY_SYSTEM_ABORT"
enum-descriptions: ["MISSED_BECAUSE_TIMEOUT: The participation was ended because of a timeout on the participant's side.","MISSED_BECAUSE_TERMINATED: The participation ended because the initiator terminated the call before the other participant answered it","MISSED_BECAUSE_UNAVAILABLE: The participation ended because nobody was available to answer the call","TERMINATED_BY_PARTICIPANT: The participation ended normally","TERMINATED_BY_SYSTEM_ABORT: The participation ended because the system aborted the call"]

Determines the reason why the participation on a call ended.

"MISSED_BECAUSE_TIMEOUT"

ECallParticipationLeftReason

string (ECallParticipationLeftReason)
Enum: "HANG_UP" "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "CALL_ENDED" "CALL_ABORTED" "DIAL_IN_ENDED" "REMOVED" "SYSTEM_ABORT" "UNKNOWN"
enum-descriptions: ["HANG_UP: The participant hung up","MISSED_BECAUSE_TIMEOUT: The participant missed the call because they didn't answer it","MISSED_BECAUSE_TERMINATED: The participant missed the call because the caller ended it before they could answer it","CALL_ENDED: The participation ended because the call ended","CALL_ABORTED: The participation ended because the call was aborted before they could answer it","DIAL_IN_ENDED: The participant hung up the dialed-in phone","REMOVED: The participant was removed from the conversation","SYSTEM_ABORT: The participation ended because the system aborted the call","UNKNOWN: The participant left for unknown reason"]

The reason a participant left a call they had joined earlier

"HANG_UP"

ECallPublicationType

string (ECallPublicationType)
Enum: "DIAL_IN" "MEDIA"
enum-descriptions: ["DIAL_IN: The participant is publishing their audio content through a call dial in","MEDIA: The participant is publishing their media content (audio or audio and video) through the computer"]

The type of publication the call participant is using

"DIAL_IN"

ECallSearchFilterField

string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
"CONVERSATION_ID"

ECallServiceProvider

string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
"ACS"

ECallServiceProviderOperatorType

string (ECallServiceProviderOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

ECallState

string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

"IDLE"

ECallType

string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

"AUDIO"

ECannedResponseOrderByField

string (ECannedResponseOrderByField)
Enum: "ID" "KEY" "TITLE" "TEXT" "OWNER_TYPE" "OWNER_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","KEY: Sort by the 'key' attribute","TITLE: Sort by the 'title' attribute","TEXT: Sort by the 'text' attribute","OWNER_TYPE: Sort by the 'ownerType' attribute","OWNER_ID: Sort by the 'ownerId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ECannedResponseSearchFilterField

string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"KEY"

ECannedResponseUsageOrderByField

string (ECannedResponseUsageOrderByField)
Enum: "ID" "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_ID: Sort by the 'personId' attribute","CANNED_RESPONSE_ID: Sort by the 'cannedResponseId' attribute","MESSAGE_ID: Sort by the 'messageId' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
"ID"

ECannedResponseUsageSearchFilterField

string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"PERSON_ID"

EChatSuggestionResponseType

string (EChatSuggestionResponseType)
Enum: "EMPTY" "TEXT"
enum-descriptions: ["EMPTY","TEXT"]
"EMPTY"

ECompoundOperatorType

string (ECompoundOperatorType)
Enum: "AND" "OR"
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
"AND"

EContactIdentifierFieldType

string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

"EMAIL"

EContactIdentifierFieldTypeOperatorType

string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationEndReason

string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

"ENDED_BY_PARTICIPANT"

EConversationEndReasonOperatorType

string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationFileStatus

string (EConversationFileStatus)
Enum: "UPLOADING" "COMPLETED" "CANCELED" "FAILED" "DELETED" "SCANNING" "REJECTED"
enum-descriptions: ["UPLOADING","COMPLETED","CANCELED","FAILED","DELETED","SCANNING","REJECTED"]

Status of a file which is/was uploaded to the collaboration server

"UPLOADING"

EConversationHistoryOrderByField

string (EConversationHistoryOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON" "AWAITED_PERSON_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE" "LAST_MESSAGE_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON: Sort by the 'awaitedPerson' attribute","AWAITED_PERSON_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute","LAST_MESSAGE_TIMESTAMP: Sort by the 'lastMessageTimestamp' attribute"]
"CREATION_TIMESTAMP"

EConversationHistorySearchFilterField

string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
"COMPOUND"

EConversationImpactingParticipationType

string (EConversationImpactingParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR" "GHOST"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR","GHOST"]

This enum contains all human participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

"ASSIGNED_AGENT"

EConversationInvitationOrderByField

string (EConversationInvitationOrderByField)
Enum: "TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_ID" "REDEEMER_PERSON_ID" "SUBTYPE"
enum-descriptions: ["TYPE: Sort by the 'type' attribute","TARGET_TYPE: Sort by the 'targetType' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","TARGET_ID: Sort by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Sort by the 'expirationTimestamp' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","CREATOR_TYPE: Sort by the 'creatorType' attribute","CREATOR_ID: Sort by the 'creatorId' attribute","REDEEMER_PERSON_ID: Sort by the 'redeemerPersonId' attribute","SUBTYPE: Sort by the 'subtype' attribute"]
"TYPE"

EConversationInvitationSearchFilterField

string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
"INVITATION_TYPE"

EConversationLeftReason

string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

"FORWARDED"

EConversationLinkType

string (EConversationLinkType)
Enum: "ACCEPT_IN_AGENT_DESK" "ACCEPT_IN_AGENT_SINGLE_VIEW" "ACCEPT_IN_VISITOR_DESK" "OPEN_IN_AGENT_DESK" "OPEN_IN_AGENT_SINGLE_VIEW" "OPEN_IN_VISITOR_DESK" "OPEN_PUBLIC_LINK"
enum-descriptions: ["ACCEPT_IN_AGENT_DESK: Link that accepts the invitation and loads the agent desk to display the conversation","ACCEPT_IN_AGENT_SINGLE_VIEW: Link that accepts the invitation and display the conversation in a single view <p> The single view only displays the conversation without any navigation and other agent desk features and can be used for integration into third party applications.","ACCEPT_IN_VISITOR_DESK: Link that accepts the invitation and display the conversation in a visitor desk","OPEN_IN_AGENT_DESK: Link to open an existing conversation in the agent desk to display the conversation","OPEN_IN_AGENT_SINGLE_VIEW: Link to open an existing conversation in a single view <p> The single view only displays the conversation without any navigation and other agent desk features and can be used for integration into third party applications.","OPEN_IN_VISITOR_DESK: Link to open an existing conversation in a visitor desk","OPEN_PUBLIC_LINK: Link to open an existing conversation. It will first go to the visitor desk, it it can be detected, that the user is an agent, it will redirect to the single view for the agent."]

Type of link used to accept an invitation.

"ACCEPT_IN_AGENT_DESK"

EConversationMessageActionType

string (EConversationMessageActionType)
Enum: "LINK_INTERNAL" "LINK_EXTERNAL" "LINK_COBROWSABLE" "REPLY_MESSAGE" "REPLY_MESSAGE_WITH_TECHNICAL_VALUE"
enum-descriptions: ["LINK_INTERNAL: An internal link that will open in the same tab as the unblu chat when clicked. <p> The action will be displayed as a link using the action's label as text.","LINK_EXTERNAL: An external link that will open in a new tab when clicked. <p> The action will be displayed as a link with an \"external\" icon using the action's label as text.","LINK_COBROWSABLE: A link that will start universal co-browsing session of provided address when clicked. <p> The action will be displayed as a link with a \"collaborate on website\" icon using the action's label as text.","REPLY_MESSAGE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type TextMessage will be sent in the name of the clicking person containing the action's value as the message text.","REPLY_MESSAGE_WITH_TECHNICAL_VALUE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type ReplyMessage will be sent in the name of the clicking person. It will reference the message this action is part of as questionMessage, contain the action's value as the reply's value and the label as text visible to the user. message text."]

Type of message action used in Card and List messages.

"LINK_INTERNAL"

EConversationMessageTextType

string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

"SIMPLE_TEXT"

EConversationOrderByField

string (EConversationOrderByField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "ID" "TOPIC" "ASSIGNEE_PERSON_ID" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "STATE" "INITIAL_ENGAGEMENT_TYPE" "LOCALE" "TOKBOX_SESSION_ID" "CONVERSATION_TEMPLATE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "END_REASON" "RECIPIENT_ID" "RECIPIENT_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","END_TIMESTAMP: Sort by the 'endTimestamp' attribute","SCHEDULED_TIMESTAMP: Sort by the 'scheduledTimestamp' attribute","ID: Sort by the 'id' attribute","TOPIC: Sort by the 'topic' attribute","ASSIGNEE_PERSON_ID: Sort by the 'assigneePersonId' attribute","CONTEXT_PERSON_ID: Sort by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Sort by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Sort by the 'awaitedPersonTypeChangeTimestamp' attribute","STATE: Sort by the 'state' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","LOCALE: Sort by the 'locale' attribute","TOKBOX_SESSION_ID: Sort by the 'tokboxSessionId' attribute","CONVERSATION_TEMPLATE_ID: Sort by the 'conversationTemplateId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'externalMessengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","END_REASON: Sort by the 'endReason' attribute","RECIPIENT_ID: Sort by the 'recipientId' attribute","RECIPIENT_TYPE: Sort by the 'recipientType' attribute"]
"CREATION_TIMESTAMP"

EConversationParticipationState

string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

"CREATED"

EConversationRealParticipationType

string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

"ASSIGNED_AGENT"

EConversationRealVisitorParticipationType

string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

"CONTEXT_PERSON"

EConversationRecipientType

string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

"AGENT"

EConversationRecipientTypeOperatorType

string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationRecordingState

string (EConversationRecordingState)
Enum: "IDLE" "INITIALIZING" "WAITING_READY" "READY" "STARTED" "STOPPED" "FAILED"
enum-descriptions: ["IDLE: Conversation recording is ready to be initialized","INITIALIZING: Conversation recording is initializing","WAITING_READY: Conversation recording is waiting for the recording entry point to become available","READY: Conversation recording is ready to start recording","STARTED: Conversation recording has started to record","STOPPED: Conversation recording has stopped recording","FAILED: Conversation recording has failed"]
"IDLE"

EConversationSearchFilterField

string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
"CREATION_TIMESTAMP"

EConversationState

string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

"CREATED"

EConversationStateOperatorType

string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EConversationTemplateOrderByField

string (EConversationTemplateOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","DEFAULT_TEMPLATE: Sort by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Sort by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EConversationTemplateSearchFilterField

string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EConversationVisibility

string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

"PRIVATE"

EConversationVisibilityOperatorType

string (EConversationVisibilityOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

ECustomActionInvocationResponseType

string (ECustomActionInvocationResponseType)
Enum: "EXECUTED" "EXECUTION_STARTED" "ERROR"
enum-descriptions: ["EXECUTED: The custom action was successfully executed","EXECUTION_STARTED: The custom action was started, but hasn't finished","ERROR: The custom action failed to execute"]
"EXECUTED"

ECustomActionOrderByField

string (ECustomActionOrderByField)
Enum: "ID" "KEY"
enum-descriptions: ["ID: Sort by the 'ID' attribute","KEY: Sort by the 'key' attribute"]
"ID"

ECustomActionSearchFilterField

string (ECustomActionSearchFilterField)
Value: "KEY"
enum-descriptions: ["KEY: Filter by the 'key' attribute"]
"KEY"

ECustomActionState

string (ECustomActionState)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: State when a custom action is manually enabled","INACTIVE: State when a custom action is manually disabled","INACTIVE_UNAVAILABLE: State when a custom action is automatically disabled because it's webhook registration got automatically disabled"]

Possible Custom Action State

"ACTIVE"

ECustomActionType

string (ECustomActionType)
Enum: "CONVERSATION" "PERSON" "MESSAGE"
enum-descriptions: ["CONVERSATION: Conversation custom action type","PERSON: Person custom action type","MESSAGE: Message custom action type"]

The type of the custom action

"CONVERSATION"

ECustomConversationActionEventTriggerFilter

string (ECustomConversationActionEventTriggerFilter)
Enum: "SELF" "OTHERS" "ALL"
enum-descriptions: ["SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom conversation action API event should be triggered for

"SELF"

ECustomExternalMessengerChannelOrderByField

string (ECustomExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ECustomExternalMessengerChannelSearchFilterField

string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
"NAME"

ECustomMessageActionEventTriggerFilter

string (ECustomMessageActionEventTriggerFilter)
Enum: "SENDER" "SELF" "OTHERS" "ALL"
enum-descriptions: ["SENDER: Trigger the custom action API event only for the sender of the target message","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom message action API event should be triggered for

"SENDER"

ECustomPersonActionEventTriggerFilter

string (ECustomPersonActionEventTriggerFilter)
Enum: "TARGET_PERSON" "SELF" "OTHERS" "ALL"
enum-descriptions: ["TARGET_PERSON: Trigger the custom action API event only for the target person","SELF: Trigger the custom action API event only for the person who invoked it","OTHERS: Trigger the custom action API event for everyone except the person who invoked it","ALL: Trigger the custom action API event for everyone"]

Who a custom person action API event should be triggered for

"TARGET_PERSON"

ECustomPersonActionTargetPersonType

string (ECustomPersonActionTargetPersonType)
Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"
enum-descriptions: ["AGENT: Agent participant","ANONYMOUS_VISITOR: Anonymous visitor participant","AUTHENTICATED_VISITOR: Authenticated visitor participant","BOT: Bot participant"]

The type of the target person of a custom person action

"AGENT"

EDeputyDelegationEscalationLevel

string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

"LEVEL_1"

EDeputyDelegationEscalationLevelOperatorType

string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EDeputyRelationshipOrderByField

string (EDeputyRelationshipOrderByField)
Enum: "ID" "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","AGENT_USER_ID: Sort by the 'agentUserId' attribute","DEPUTY_TYPE: Sort by the 'deputyType' attribute","DEPUTY_ID: Sort by the 'deputyId' attribute","ESCALATION_LEVEL: Sort by the 'escalationLevel' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EDeputyRelationshipSearchFilterField

string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"AGENT_USER_ID"

EDeputyType

string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
"AGENT"

EDeputyTypeOperatorType

string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EDeviceType

string (EDeviceType)
Enum: "MOBILE" "DESKTOP"
enum-descriptions: ["MOBILE: Mobile phone / tablet / etc","DESKTOP: Desktop computer"]

The device type of the physical device

"MOBILE"

EDialInServiceProvider

string (EDialInServiceProvider)
Value: "VONAGE"
enum-descriptions: ["VONAGE: The dial-in service was provided via VONAGE"]
"VONAGE"

EDialogBotOrderByField

string (EDialogBotOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EDialogBotSearchFilterField

string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EDomainOrderByField

string (EDomainOrderByField)
Enum: "ID" "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","DOMAIN_NAME: Sort by the 'domainName' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EDomainSearchFilterField

string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"DOMAIN_NAME"

EDownloadLinkType

string (EDownloadLinkType)
Enum: "WEB_API" "AGENT_DESK"
enum-descriptions: ["WEB_API: Download URL via the web API","AGENT_DESK: Download URL from the Agent Desk"]

Type of link used to download files.

"WEB_API"

EEmptyChatSuggestionReason

string (EEmptyChatSuggestionReason)
Enum: "NO_SUGGESTION" "NOT_AVAILABLE" "OTHER"
enum-descriptions: ["NO_SUGGESTION","NOT_AVAILABLE","OTHER"]
"NO_SUGGESTION"

EExternalMessengerChannelOrderByField

string (EExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute","TYPE: Sort by the 'type' attribute"]
"ID"

EExternalMessengerChannelSearchFilterField

string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
"NAME"

EExternalMessengerChannelType

string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

"CUSTOM"

EExternalMessengerChannelTypeOperatorType

string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EExternalMessengerContactCreationResponseType

string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

"USE_EXISTING"

EExternalMessengerContactOrderByField

string (EExternalMessengerContactOrderByField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'messengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","PERSON_ID: Sort by the 'personId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EExternalMessengerContactSearchFilterField

string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"ID"

EExternalMessengerConversationCreationResponseType

string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

"USE_EXISTING"

EFileUploadInterceptorOrderByField

string (EFileUploadInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EFileUploadInterceptorSearchFilterField

string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
"NAME"

EFileUploadInterceptorSource

string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

"BOT"

EFrontend

string (EFrontend)
Enum: "VISITOR_SITE_INTEGRATION" "VISITOR_SITE_EMBEDDED" "VISITOR_DESK" "VISITOR_MOBILE" "VISITOR_POPOUT" "AGENT_DESK" "TEAMS_AGENT_DESK" "AGENT_SINGLE_CONVERSATION_DESK" "AGENT_MOBILE"
enum-descriptions: ["VISITOR_SITE_INTEGRATION: Sites that integrate Unblu using the Floating Visitor UI","VISITOR_SITE_EMBEDDED: Sites that integrate Unblu using the Embedded Visitor UI","VISITOR_DESK: Sites for visitors to join a session, but the page isn't integrated into any other page","VISITOR_MOBILE: Sites for mobile visitor frontend and pop-out that display the Individual UI of the visitor site integration","VISITOR_POPOUT: Sites for site integration pop-outs","AGENT_DESK: The Agent Desk","TEAMS_AGENT_DESK: The MS Teams Agent Desk","AGENT_SINGLE_CONVERSATION_DESK: Single conversation page for the agent","AGENT_MOBILE: Sites for the mobile agent frontend that display the agent inbox and the conversation UI"]

All the different Unblu conversation frontends users can interact with

"VISITOR_SITE_INTEGRATION"

EIdListOperatorType

string (EIdListOperatorType)
Enum: "ALL_OF" "ANY_OF" "ALL_EQUAL"
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

"ALL_OF"

EIdOperatorType

string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

"EQUALS"

EIdentifierSource

string (EIdentifierSource)
Enum: "COOKIE" "DEVICE_ID"
enum-descriptions: ["COOKIE: Cookie from browser","DEVICE_ID: Device id of MobileSDK"]

The source of the identifier (for devices)

"COOKIE"

EImpersonationType

string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

"NONE"

EImpersonationTypeOperatorType

string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EIngressMigrationStatus

string (EIngressMigrationStatus)
Enum: "MIGRATING" "DONE_INGRESS_ACTIVE" "DONE_INGRESS_INACTIVE" "ERROR"
enum-descriptions: ["MIGRATING: The system is migrating the user uniqueness scope to its desired state (according to the ingress_enabled flag). If ingress_enabled is true, the username_scope column of all existing users is updated to the accountId. If ingress_enabled is false, then the username_scope column of all existing users is updated to GLOBAL.","DONE_INGRESS_ACTIVE: All users are migrated and the account is active with ingress (if configuration is valid)","DONE_INGRESS_INACTIVE: All users are migrated and the account is active without ingress","ERROR: The migration has failed (for example because the account contains usernames that also exist in a different account that isn't using ingress). The migration can be retried using the 'try again' action. If doing so isn't too expensive, the UI shows a list of the users causing conflicts."]

Status of the ingress activation. This status represents the status of the users in the account regarding the scope of the username uniqueness. In order for an account ingress to be fully active, the following conditions must be met: ingress_enabled=true, ingress_activation_status=ACTIVE and ingress configuration is valid.

"MIGRATING"

EIngressStatus

string (EIngressStatus)
Enum: "ACCOUNT" "GLOBAL" "BLOCKED"
enum-descriptions: ["ACCOUNT: Account-specific ingress enabled (using custom origin)","GLOBAL: Account is accessible via global ingress","BLOCKED: Account is blocked, i.e. because ingress is configured but not valid"]

How ingress is handled

"ACCOUNT"

EInitialEngagementType

string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

"CHAT_REQUEST"

EInitialEngagementTypeOperatorType

string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EInternalMessageInterceptorStatus

string (EInternalMessageInterceptorStatus)
Enum: "ACTIVE" "INACTIVE"
enum-descriptions: ["ACTIVE: The interceptor is active and participates in all conversations where it is configured","INACTIVE: The interceptor isn't active and doesn't participate in any conversation"]

The status of an internal message interceptor.

"ACTIVE"

EInvitationCreatorType

string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

"WEB_API"

EInvitationCreatorTypeOperatorType

string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EInvitationResponseState

string (EInvitationResponseState)
Enum: "PENDING" "DECLINED" "IGNORED" "CANCELED" "ACCEPTED"
enum-descriptions: ["PENDING: The response is pending. The user did not answer it yet.","DECLINED: The user declined the response and therefore will not accept the invitation.","IGNORED: The user ignored this invitation and the escalation should proceed","CANCELED: The invitation was canceled for that user.","ACCEPTED: The user accepted the invitation."]

The state of the response for an invitation itself or one of its secondary targets

"PENDING"

EInvitationState

string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

"OPEN"

EInvitationStateOperatorType

string (EInvitationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EInvitationTargetType

string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
"ANONYMOUS"

EInvitationTargetTypeOperatorType

string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EInvitationType

string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
"ASSIGNMENT_REQUEST"

EInvitationTypeOperatorType

string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

ELicenseState

string (ELicenseState)
Enum: "NO_LICENSE" "ACTIVE" "INVALID" "INCOMPATIBLE" "EXPIRED"
enum-descriptions: ["NO_LICENSE: No license installed. All licensed features can not be used.","ACTIVE: Valid license installed, this default state to use Unblu.","INVALID: Invalid license installed. All licensed features can not be used.","INCOMPATIBLE: The license type of the installed license is not compatible with this server. All licensed features can not be used.","EXPIRED: Valid license installed, but with an expiration date in the past. All licensed features can not be used."]

State of the global server license

"NO_LICENSE"

EMediaPublicationType

string (EMediaPublicationType)
Enum: "AUDIO" "VIDEO" "AUDIO_VIDEO" "NONE"
enum-descriptions: ["AUDIO: Only audio is being shared (typically through a microphone)","VIDEO: Only video is being shared (typically through a camera)","AUDIO_VIDEO: Both audio and video are being shared (typically microphone & camera)","NONE: No media is being published, the participant is only watching / listening to the call"]

The media being published during the participation of a call

"AUDIO"

EMessageExportFilterField

string (EMessageExportFilterField)
Value: "SEND_TIMESTAMP"
enum-descriptions: ["SEND_TIMESTAMP: Filter by the 'sendTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"SEND_TIMESTAMP"

EMessageExportOrderByField

string (EMessageExportOrderByField)
Enum: "ID" "CONVERSATION_ID" "SEND_TIMESTAMP" "SERVER_TIMESTAMP" "SENDER_PERSON_ID" "TYPE" "TEXT"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","SEND_TIMESTAMP: Sort by the 'sendTimestamp' attribute","SERVER_TIMESTAMP: Sort by the 'serverTimestamp' attribute","SENDER_PERSON_ID: Sort by the 'senderPersonId' attribute","TYPE: Sort by the 'type' attribute","TEXT: Sort by the 'text' attribute"]
"ID"

EMessageInterceptionPoint

string (EMessageInterceptionPoint)
Enum: "BEFORE_PERSISTING" "AFTER_PERSISTING"
enum-descriptions: ["BEFORE_PERSISTING: Messages are intercepted before the message is persisted. The first interception takes place on the client side before the message is sent to the server. A second validation occurs before the message is persisted and added to the conversation in case the client-side validation was skipped for some reason. <p> If this point of interception is selected, Unblu doesn't store any information about rejected chat messages. It isn't possible to see rejected chat messages, or to be notified of rejected chat messages through logs or webhooks.","AFTER_PERSISTING: Messages are intercepted after they've been persisted and added to the conversation. Until the interception phase is over, the messages are only visible to the sender. If the message is rejected, only participation types with the appropriate rights can see the message. <p> If this interception point is chosen, every message is stored in Unblu and can be accessed later. It is possible to receive a webhook and logs when a message is rejected."]

Identifies the point where an interceptor intercepts messages

"BEFORE_PERSISTING"

EMessageInterceptorMessageFilter

string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
"AGENT"

EMessageInterceptorOrderByField

string (EMessageInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EMessageInterceptorOutboundResponseType

string (EMessageInterceptorOutboundResponseType)
Enum: "APPROVE" "REJECT"
enum-descriptions: ["APPROVE","REJECT"]
"APPROVE"

EMessageInterceptorSearchFilterField

string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EMessageInterceptorTimeoutBehavior

string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

"REJECT"

EMessageInterceptorType

string (EMessageInterceptorType)
Enum: "EXTERNAL" "INTERNAL"
enum-descriptions: ["EXTERNAL","INTERNAL"]
"EXTERNAL"

EMessageSenderType

string (EMessageSenderType)
Enum: "SELF" "OTHER_VISITOR" "OTHER_AGENT" "BOT"
enum-descriptions: ["SELF: The person sent the message themselves","OTHER_VISITOR: Another visitor sent the message","OTHER_AGENT: Another agent sent the message","BOT: Bot sent the message"]

The type of participant who sent a message

"SELF"

EMessageState

string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

"DELIVERED"

EMessageType

string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

"TEXT"

ENamedAreaOrderByField

string (ENamedAreaOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","SITE_ID: Sort by the 'siteId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ENamedAreaSearchFilterField

string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

ENamedAreaType

string (ENamedAreaType)
Enum: "META_TAG" "DOMAIN"
enum-descriptions: ["META_TAG: A meta tag","DOMAIN: a (sub)domain"]

Type of a named area

"META_TAG"

EOffboardingReason

string (EOffboardingReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_TIMEOUT" "ONBOARDING_IDLE_TIMEOUT" "KICKED" "CONVERSATION_UNASSIGNED" "EXTERNAL_CHANNEL_CLOSED" "CONVERSATION_CANCELED" "CONVERSATION_ENDED" "SOLVED_BY_BOT" "CONVERSATION_REQUEUED" "NO_AGENT_AVAILABLE" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED: Conversation was forwarded to another agent and this agent therefore left the conversation","PARTICIPANT_LEFT: The participant left the conversation by himself","REMOVED_AFTER_TIMEOUT: The participant was removed from the conversation as he had a connection timeout","ONBOARDING_DECLINED: The onboarding was declined and therefore the participant will not join the conversation","ONBOARDING_TIMEOUT: The onboarding took too long and therefore the participant will not join the conversation","ONBOARDING_IDLE_TIMEOUT: The onboarding timed out and therefore the participant will not join the conversation","KICKED: The participant was kicked out of the conversation","CONVERSATION_UNASSIGNED: The conversation is no longer assigned to an agent and therefore all other agents were removed","EXTERNAL_CHANNEL_CLOSED: The external channel connected to this conversation has closed, no further messages are possible.","CONVERSATION_CANCELED: The conversation was canceled before it was started","CONVERSATION_ENDED: The conversation has ended","SOLVED_BY_BOT: The conversation was ended because an onboarding bot solved it.","CONVERSATION_REQUEUED: The conversation has been re-queued.","NO_AGENT_AVAILABLE: There was no agent available for the conversation","PUBLIC_DIALIN_ENDED: The public call dial-in ended, which automatically removes the person from the conversation","OTHER: Some other unspecified reason"]

Reason why the offboarding from a conversation was triggered for an individual person.

"FORWARDED"

EOnlineState

string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

"ONLINE"

EOnlineStateOperatorType

string (EOnlineStateOperatorType)
Value: "EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator"]
"EQUALS"

EOutboundEndpointStatus

string (EOutboundEndpointStatus)
Enum: "ENABLED" "DISABLED"
enum-descriptions: ["ENABLED: The endpoint is enabled and calls are allowed.","DISABLED: The endpoint is disabled and calls should be avoided, since they won't work."]

The status of an Outbound Web-API endpoint.

"ENABLED"

EPauseNotificationsMode

string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

"ON"

EPauseNotificationsModeOperatorType

string (EPauseNotificationsModeOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EPauseNotificationsState

string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

"ON"

EPauseNotificationsStateOperatorType

string (EPauseNotificationsStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EPersonLabelManagementRole

string (EPersonLabelManagementRole)
Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"
enum-descriptions: ["SUPERVISOR: Supervisor","AGENT: Agent","AUTHENTICATED_VISITOR: Authenticated visitor","ANONYMOUS_VISITOR: Anonymous visitor"]

The person type a person label can be managed by

"SUPERVISOR"

EPersonLabelOrderByField

string (EPersonLabelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
"ID"

EPersonLabelSearchFilterField

string (EPersonLabelSearchFilterField)
Value: "NAME"
enum-descriptions: ["NAME: Filter by the 'name' attribute"]
"NAME"

EPersonLabelTargetType

string (EPersonLabelTargetType)
Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"
enum-descriptions: ["AGENT: Agent","ANONYMOUS_VISITOR: Anonymous visitor","AUTHENTICATED_VISITOR: Authenticated visitor","BOT: Bot"]

The person type a person label can be set on

"AGENT"

EPersonOrderByField

string (EPersonOrderByField)
Enum: "ID" "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_SOURCE: Sort by the 'personSource' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","SOURCE_DATA: Sort by the 'sourceData' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","PERSON_TYPE: Sort by the 'personType' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
"ID"

EPersonPresenceOrderByField

string (EPersonPresenceOrderByField)
Enum: "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"CREATION_TIMESTAMP"

EPersonPresenceSearchFilterField

string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
"JOINED_TIMESTAMP"

EPersonSearchFilterField

string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
"PERSON_SOURCE"

EPersonSource

string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

"USER_DB"

EPersonSourceOperatorType

string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EPersonStateType

string (EPersonStateType)
Enum: "AGENT" "VISITOR"
enum-descriptions: ["AGENT","VISITOR"]
"AGENT"

EPersonType

string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

"AGENT"

EPersonTypeOperatorType

string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
"EQUALS"

EPersonTypedOrderByField

string (EPersonTypedOrderByField)
Enum: "ID" "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
"ID"

EPersonTypedSearchFilterField

string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
"SOURCE_ID"

EPersonVisibilityLabelSelection

string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
"ALL"

EPersonVisibilityRuleOrderByField

string (EPersonVisibilityRuleOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
"ID"

EPersonVisibilityRuleSearchFilterField

string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
"NAME"

EPlaceholderType

string (EPlaceholderType)
Enum: "TEXT" "MULTIPLE_CHOICE"
enum-descriptions: ["TEXT","MULTIPLE_CHOICE"]
"TEXT"

EPostMessageType

string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

"TEXT"

EPropertyOwnerType

string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

"GLOBAL"

EPropertyOwnerTypeOperatorType

string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
"EQUALS"

EQuestionMessageAbortReason

string (EQuestionMessageAbortReason)
Enum: "TIMEDOUT" "CANCELED"
enum-descriptions: ["TIMEDOUT: A person was to slow to answer a message","CANCELED: The question was canceled explicitly by the system, a bot or an external messenger channel"]

Reason why a question message was not answered

"TIMEDOUT"

ERecordingEndReason

string (ERecordingEndReason)
Enum: "NORMAL" "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["NORMAL: Recording ended normally","ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
"NORMAL"

ERecordingFailedReason

string (ERecordingFailedReason)
Enum: "ABORT_SYSTEM" "ABORT_TIMEOUT" "ABORT_BLOBSTORE_FAILURE" "ABORT_UNEXPECT"
enum-descriptions: ["ABORT_SYSTEM: Recording aborted by the system","ABORT_TIMEOUT: Recording aborted due to timeout","ABORT_BLOBSTORE_FAILURE: Recording aborted due to an error regarding the blob","ABORT_UNEXPECT: Recording aborted unexpectedly"]
"ABORT_SYSTEM"

ERecordingStatus

string (ERecordingStatus)
Enum: "INITIALIZING" "PENDING" "COMPLETE"
enum-descriptions: ["INITIALIZING: Recording initializing","PENDING: Recording pending","COMPLETE: Recording completed"]
"INITIALIZING"

ERecordingType

string (ERecordingType)
Enum: "AUDIO" "AUDIO_VIDEO"
enum-descriptions: ["AUDIO: Recording of type AUDIO","AUDIO_VIDEO: Recording of type AUDIO and VIDEO"]
"AUDIO"

ERegistrationStatus

string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

"ACTIVE"

ESecureTokenType

string (ESecureTokenType)
Enum: "JWT" "OIDC_ACCESS_TOKEN"
enum-descriptions: ["JWT","OIDC_ACCESS_TOKEN"]

Token type

"JWT"

ESendFailState

string (ESendFailState)
Enum: "RETRYABLE" "TERMINAL"
enum-descriptions: ["RETRYABLE: Message could not be sent, but it is not terminal and can be tried again","TERMINAL: Message could not be sent and it will not be possible to send it again"]

The failed state of a message which was sent to an external messenger

"RETRYABLE"

ESentRejectionSeverity

string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

"HIGH"

ESmsExternalMessengerChannelOrderByField

string (ESmsExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ESmsExternalMessengerChannelSearchFilterField

string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
"NAME"

EStringOperatorType

string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
"EQUALS"

ESuggestionSourceOrderByField

string (ESuggestionSourceOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ESuggestionSourceSearchFilterField

string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
"NAME"

ETeamOrderByField

string (ETeamOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","PARENT_ID: Sort by the 'parentId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

ETeamSearchFilterField

string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

ETextQuestionType

string (ETextQuestionType)
Enum: "SHORT_TEXT" "LONG_TEXT" "URL" "EMAIL" "PHONE" "DATE" "TIME" "DATETIME" "NUMBER"
enum-descriptions: ["SHORT_TEXT: Reply should only be a short text.","LONG_TEXT: Reply can be be a long text. Visually displayed with a larger input field.","URL: Reply has to be a URL","EMAIL: Reply has to be a mail address","PHONE: Reply has to be a phone number","DATE: Reply has to be a date","TIME: Reply has to be a time","DATETIME: Reply has to be a date and a time","NUMBER: Reply has to be a number"]

Type of a question message. Defines the reply value of a text message.

"SHORT_TEXT"

ETimestampOperatorType

string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
"EQUALS"

EUserOrderByField

string (EUserOrderByField)
Enum: "ID" "FIRST_NAME" "LAST_NAME" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EUserSearchFilterField

string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
"FIRST_NAME"

EVisibilityRuleLabelSelectionOperatorType

string (EVisibilityRuleLabelSelectionOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
"EQUALS"

EVisitorStateOrderByField

string (EVisitorStateOrderByField)
Value: "PERSON_ID"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute"]
"PERSON_ID"

EVisitorStateSearchFilterField

string (EVisitorStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
"PERSON_ID"

EWebApiVersion

string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

"V1"

EWebhookRegistrationOrderByField

string (EWebhookRegistrationOrderByField)
Enum: "ID" "NAME" "STATUS" "DESCRIPTION" "ENDPOINT" "API_VERSION" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","STATUS: Sort by the 'status' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","API_VERSION: Sort by the 'apiVersion' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
"ID"

EWebhookRegistrationSearchFilterField

string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
"NAME"

EmailPersonSearchFilter

$_type
string
Default: "EmailPersonSearchFilter"
Value: "EmailPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "EmailPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

EmailPersonTypedSearchFilter

$_type
string
Default: "EmailPersonTypedSearchFilter"
Value: "EmailPersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "EmailPersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

EmailUserSearchFilter

$_type
string
Default: "EmailUserSearchFilter"
Value: "EmailUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "EmailUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

EmptyChatSuggestionResponse

$_type
string
Default: "EmptyChatSuggestionResponse"
Value: "EmptyChatSuggestionResponse"
type
string (EChatSuggestionResponseType)
Enum: "EMPTY" "TEXT"
enum-descriptions: ["EMPTY","TEXT"]
reason
string (EEmptyChatSuggestionReason)
Enum: "NO_SUGGESTION" "NOT_AVAILABLE" "OTHER"
enum-descriptions: ["NO_SUGGESTION","NOT_AVAILABLE","OTHER"]
hint
string
{
  • "$_type": "EmptyChatSuggestionResponse",
  • "type": "EMPTY",
  • "reason": "NO_SUGGESTION",
  • "hint": "string"
}

EndReasonConversationHistorySearchFilter

$_type
string
Default: "EndReasonConversationHistorySearchFilter"
Value: "EndReasonConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationEndReasonOperator)
{
  • "$_type": "EndReasonConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

EndReasonConversationSearchFilter

$_type
string
Default: "EndReasonConversationSearchFilter"
Value: "EndReasonConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationEndReasonOperator)
{
  • "$_type": "EndReasonConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EndTimestampCallSearchFilter

$_type
string
Default: "EndTimestampCallSearchFilter"
Value: "EndTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "EndTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

EndTimestampConversationHistorySearchFilter

$_type
string
Default: "EndTimestampConversationHistorySearchFilter"
Value: "EndTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "EndTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

EndTimestampConversationSearchFilter

$_type
string
Default: "EndTimestampConversationSearchFilter"
Value: "EndTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "EndTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EndpointWebhookRegistrationSearchFilter

$_type
string
Default: "EndpointWebhookRegistrationSearchFilter"
Value: "EndpointWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "EndpointWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

EntityIdAuditChangeSearchFilter

$_type
string
Default: "EntityIdAuditChangeSearchFilter"
Value: "EntityIdAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "EntityIdAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EntityModificationAction

string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

"CREATE"

EntityNameAuditChangeSearchFilter

$_type
string
Default: "EntityNameAuditChangeSearchFilter"
Value: "EntityNameAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "EntityNameAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EntityTypeAuditChangeSearchFilter

$_type
string
Default: "EntityTypeAuditChangeSearchFilter"
Value: "EntityTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "EntityTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

EqualsAuditChangeInteractionTypeOperator

$_type
string
Default: "EqualsAuditChangeInteractionTypeOperator"
Value: "EqualsAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
{
  • "$_type": "EqualsAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "value": "API"
}

EqualsAuditChangeTypeOperator

$_type
string
Default: "EqualsAuditChangeTypeOperator"
Value: "EqualsAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
{
  • "$_type": "EqualsAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "value": "CREATE"
}

EqualsAuthorizationRoleOperator

$_type
string
Default: "EqualsAuthorizationRoleOperator"
Value: "EqualsAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

{
  • "$_type": "EqualsAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "value": "SUPER_ADMIN"
}

EqualsAwaitedPersonTypeOperator

$_type
string
Default: "EqualsAwaitedPersonTypeOperator"
Value: "EqualsAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

{
  • "$_type": "EqualsAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

EqualsBooleanOperator

$_type
string
Default: "EqualsBooleanOperator"
Value: "EqualsBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
value
boolean
{
  • "$_type": "EqualsBooleanOperator",
  • "type": "EQUALS",
  • "value": true
}

EqualsCallServiceProviderOperator

$_type
string
Default: "EqualsCallServiceProviderOperator"
Value: "EqualsCallServiceProviderOperator"
type
string (ECallServiceProviderOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
{
  • "$_type": "EqualsCallServiceProviderOperator",
  • "type": "EQUALS",
  • "value": "ACS"
}

EqualsContactIdentifierFieldTypeOperator

$_type
string
Default: "EqualsContactIdentifierFieldTypeOperator"
Value: "EqualsContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

{
  • "$_type": "EqualsContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "value": "EMAIL"
}

EqualsConversationEndReasonOperator

$_type
string
Default: "EqualsConversationEndReasonOperator"
Value: "EqualsConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

{
  • "$_type": "EqualsConversationEndReasonOperator",
  • "type": "EQUALS",
  • "value": "ENDED_BY_PARTICIPANT"
}

EqualsConversationRecipientTypeOperator

$_type
string
Default: "EqualsConversationRecipientTypeOperator"
Value: "EqualsConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

{
  • "$_type": "EqualsConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

EqualsConversationStateOperator

$_type
string
Default: "EqualsConversationStateOperator"
Value: "EqualsConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

{
  • "$_type": "EqualsConversationStateOperator",
  • "type": "EQUALS",
  • "value": "CREATED"
}

EqualsConversationVisibilityOperator

$_type
string
Default: "EqualsConversationVisibilityOperator"
Value: "EqualsConversationVisibilityOperator"
type
string (EConversationVisibilityOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

{
  • "$_type": "EqualsConversationVisibilityOperator",
  • "type": "EQUALS",
  • "value": "PRIVATE"
}

EqualsDeputyDelegationEscalationLevelOperator

$_type
string
Default: "EqualsDeputyDelegationEscalationLevelOperator"
Value: "EqualsDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

{
  • "$_type": "EqualsDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "value": "LEVEL_1"
}

EqualsDeputyTypeOperator

$_type
string
Default: "EqualsDeputyTypeOperator"
Value: "EqualsDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
{
  • "$_type": "EqualsDeputyTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

EqualsExternalMessengerChannelTypeOperator

$_type
string
Default: "EqualsExternalMessengerChannelTypeOperator"
Value: "EqualsExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

{
  • "$_type": "EqualsExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "value": "CUSTOM"
}

EqualsIdOperator

$_type
string
Default: "EqualsIdOperator"
Value: "EqualsIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
{
  • "$_type": "EqualsIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

EqualsImpersonationTypeOperator

$_type
string
Default: "EqualsImpersonationTypeOperator"
Value: "EqualsImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

{
  • "$_type": "EqualsImpersonationTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

EqualsInitialEngagementTypeOperator

$_type
string
Default: "EqualsInitialEngagementTypeOperator"
Value: "EqualsInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

{
  • "$_type": "EqualsInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "value": "CHAT_REQUEST"
}

EqualsInvitationCreatorTypeOperator

$_type
string
Default: "EqualsInvitationCreatorTypeOperator"
Value: "EqualsInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

{
  • "$_type": "EqualsInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "value": "WEB_API"
}

EqualsInvitationStateOperator

$_type
string
Default: "EqualsInvitationStateOperator"
Value: "EqualsInvitationStateOperator"
type
string (EInvitationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

{
  • "$_type": "EqualsInvitationStateOperator",
  • "type": "EQUALS",
  • "value": "OPEN"
}

EqualsInvitationTargetTypeOperator

$_type
string
Default: "EqualsInvitationTargetTypeOperator"
Value: "EqualsInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
{
  • "$_type": "EqualsInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "value": "ANONYMOUS"
}

EqualsInvitationTypeOperator

$_type
string
Default: "EqualsInvitationTypeOperator"
Value: "EqualsInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
{
  • "$_type": "EqualsInvitationTypeOperator",
  • "type": "EQUALS",
  • "value": "ASSIGNMENT_REQUEST"
}

EqualsOnlineStateOperator

$_type
string
Default: "EqualsOnlineStateOperator"
Value: "EqualsOnlineStateOperator"
type
string (EOnlineStateOperatorType)
Value: "EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator"]
value
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

{
  • "$_type": "EqualsOnlineStateOperator",
  • "type": "EQUALS",
  • "value": "ONLINE"
}

EqualsPauseNotificationsModeOperator

$_type
string
Default: "EqualsPauseNotificationsModeOperator"
Value: "EqualsPauseNotificationsModeOperator"
type
string (EPauseNotificationsModeOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

{
  • "$_type": "EqualsPauseNotificationsModeOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

EqualsPauseNotificationsStateOperator

$_type
string
Default: "EqualsPauseNotificationsStateOperator"
Value: "EqualsPauseNotificationsStateOperator"
type
string (EPauseNotificationsStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

{
  • "$_type": "EqualsPauseNotificationsStateOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

EqualsPersonSourceOperator

$_type
string
Default: "EqualsPersonSourceOperator"
Value: "EqualsPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

{
  • "$_type": "EqualsPersonSourceOperator",
  • "type": "EQUALS",
  • "value": "USER_DB"
}

EqualsPersonTypeOperator

$_type
string
Default: "EqualsPersonTypeOperator"
Value: "EqualsPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

{
  • "$_type": "EqualsPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

EqualsPropertyOwnerTypeOperator

$_type
string
Default: "EqualsPropertyOwnerTypeOperator"
Value: "EqualsPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
value
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

{
  • "$_type": "EqualsPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "value": "GLOBAL"
}

EqualsStringOperator

$_type
string
Default: "EqualsStringOperator"
Value: "EqualsStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string
{
  • "$_type": "EqualsStringOperator",
  • "type": "EQUALS",
  • "value": "string"
}

EqualsTimestampOperator

$_type
string
Default: "EqualsTimestampOperator"
Value: "EqualsTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "EqualsTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

EqualsVisibilityRuleLabelSelectionOperator

$_type
string
Default: "EqualsVisibilityRuleLabelSelectionOperator"
Value: "EqualsVisibilityRuleLabelSelectionOperator"
type
string (EVisibilityRuleLabelSelectionOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
{
  • "$_type": "EqualsVisibilityRuleLabelSelectionOperator",
  • "type": "EQUALS",
  • "value": "ALL"
}

Error

$_type
string
Default: "Error"
Value: "Error"
statusCode
integer <int32>

Http status code

statusDescription
string

Reason phrase corresponding to the http status

errorMessage
string

Description of the error

{
  • "$_type": "Error",
  • "statusCode": 0,
  • "statusDescription": "string",
  • "errorMessage": "string"
}

EscalationLevelDeputyRelationshipSearchFilter

$_type
string
Default: "EscalationLevelDeputyRelationshipSearchFilter"
Value: "EscalationLevelDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (DeputyDelegationEscalationLevelOperator)
{
  • "$_type": "EscalationLevelDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

EstablishedTimestampCallSearchFilter

$_type
string
Default: "EstablishedTimestampCallSearchFilter"
Value: "EstablishedTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "EstablishedTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ExpandFields

string (ExpandFields)
Enum: "actionIcon" "avatar" "channelIcon" "configuration" "metadata" "text"
"actionIcon"

ExpirationTimestampConversationInvitationSearchFilter

$_type
string
Default: "ExpirationTimestampConversationInvitationSearchFilter"
Value: "ExpirationTimestampConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (TimestampOperator)
{
  • "$_type": "ExpirationTimestampConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

ExternalMessageInterceptorData

$_type
string
Default: "ExternalMessageInterceptorData"
Value: "ExternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
Enum: "EXTERNAL" "INTERNAL"
enum-descriptions: ["EXTERNAL","INTERNAL"]
webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.MESSAGE_INTERCEPTOR_NEW_MESSAGE: On each message in the conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event

Maximum length of 4000 characters.

{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

ExternalMessengerChannel

$_type
string
Default: "CustomExternalMessengerChannel"
Value: "CustomExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

webhookEndpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can not be omitted.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

messageStateHandledExternally
boolean

Defines if the delivered/read state of messages is handled externally or by the collaboration server.
If the collaboration server handles the state, the messages are marked as delivered and read a soon as the webhook could be successfully dispatched to the configured webhookEndpoint.
If the it is handled externally, the external service has to call the api function to mark the message as delivered/read. Additionally webhook events for the message state of messages from the external messenger are dispatched.

outboundSupported
boolean

Defines if outbound requests to create external messenger contacts or conversations are supported

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

contactIdentifierFieldName
string

The name of the field that contacts can be identified by in the external messenger. This can be an email address, a phone number, a number, or some other identifier.

contactIdentifierFieldType
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

object

The translations for the contact identifier field

supportsMultipleConversationsPerContact
boolean

The channel supports multiple conversations for a contact. If false, there can be only one active conversation for that contact.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

Example
{
  • "$_type": "CustomExternalMessengerChannel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "channelIcon": "string",
  • "sourceId": "string",
  • "type": "CUSTOM",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string",
  • "webhookStatus": "ACTIVE",
  • "messageStateHandledExternally": true,
  • "outboundSupported": true,
  • "outboundTimeoutMillis": 0,
  • "contactIdentifierFieldName": "string",
  • "contactIdentifierFieldType": "EMAIL",
  • "contactIdentifierTranslations": {
    },
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": {
    }
}

ExternalMessengerChannelIdConversationSearchFilter

$_type
string
Default: "ExternalMessengerChannelIdConversationSearchFilter"
Value: "ExternalMessengerChannelIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ExternalMessengerChannelIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ExternalMessengerChannelIdExternalMessengerContactSearchFilter

$_type
string
Default: "ExternalMessengerChannelIdExternalMessengerContactSearchFilter"
Value: "ExternalMessengerChannelIdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ExternalMessengerChannelIdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

ExternalMessengerChannelOrderBy

$_type
string
Default: "ExternalMessengerChannelOrderBy"
Value: "ExternalMessengerChannelOrderBy"
field
string (EExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute","TYPE: Sort by the 'type' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ExternalMessengerChannelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ExternalMessengerChannelQuery

$_type
string
Default: "ExternalMessengerChannelQuery"
Value: "ExternalMessengerChannelQuery"
Array of any (ExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ExternalMessengerChannelResult

$_type
string
Default: "ExternalMessengerChannelResult"
Value: "ExternalMessengerChannelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of any (ExternalMessengerChannel) [ items ]

The returned list of entities

{
  • "$_type": "ExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ExternalMessengerChannelSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerChannelSearchFilter"
Value: "CreationTimestampExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampExternalMessengerChannelSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ExternalMessengerChannelTypeOperator

$_type
string
Default: "EqualsExternalMessengerChannelTypeOperator"
Value: "EqualsExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

Example
{
  • "$_type": "EqualsExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "value": "CUSTOM"
}

ExternalMessengerContact

$_type
string
Default: "ExternalMessengerContact"
Value: "ExternalMessengerContact"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It is filled by the Unblu server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

The name of the contact

description
string

The description for the contact to give more information what the source ID is about. E.g. private or company phone number.

externalMessengerChannelId
string

The external messenger channel ID through which the contact is communicating

sourceId
string

An ID to identify the contact inside the external messenger system

personId
string

The person ID in Unblu that the contact is linked with

{
  • "$_type": "ExternalMessengerContact",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "externalMessengerChannelId": "string",
  • "sourceId": "string",
  • "personId": "string"
}

ExternalMessengerContactList

$_type
string
Default: "ExternalMessengerContactList"
Value: "ExternalMessengerContactList"
Array of objects (ExternalMessengerContact) [ items ]

The list of mapped entities

{
  • "$_type": "ExternalMessengerContactList",
  • "items": [
    ]
}

ExternalMessengerContactOrderBy

$_type
string
Default: "ExternalMessengerContactOrderBy"
Value: "ExternalMessengerContactOrderBy"
field
string (EExternalMessengerContactOrderByField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Sort by the 'messengerChannelId' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","PERSON_ID: Sort by the 'personId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "ExternalMessengerContactOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

ExternalMessengerContactQuery

$_type
string
Default: "ExternalMessengerContactQuery"
Value: "ExternalMessengerContactQuery"
Array of any (ExternalMessengerContactSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (ExternalMessengerContactOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "ExternalMessengerContactQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

ExternalMessengerContactResult

$_type
string
Default: "ExternalMessengerContactResult"
Value: "ExternalMessengerContactResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ExternalMessengerContact) [ items ]

The returned list of entities

{
  • "$_type": "ExternalMessengerContactResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

ExternalMessengerContactSearchFilter

$_type
string
Default: "CreationTimestampExternalMessengerContactSearchFilter"
Value: "CreationTimestampExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampExternalMessengerContactSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ExternalMessengerContactsMigrateContactPersonWithAllConnectedConversationsBody

newPersonId
string

The new person ID to set on the external messenger contact

{
  • "newPersonId": "string"
}

ExternalMessengerCreateContactContactToPersonMismatchResponse

$_type
string
Default: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
Value: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the request failed

{
  • "$_type": "ExternalMessengerCreateContactContactToPersonMismatchResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateContactCreateResponse

$_type
string
Default: "ExternalMessengerCreateContactCreateResponse"
Value: "ExternalMessengerCreateContactCreateResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

name
string

The ID of the ExternalMessengerContact created when processing the ExternalMessengerCreateContactRequest request

sourceId
string

The source ID of the ExternalMessengerContact to identify the contact in the external messenger.

description
string

The description of the ExternalMessengerContact to give more information what the source ID is about. E.g. private or company phone number.

{
  • "$_type": "ExternalMessengerCreateContactCreateResponse",
  • "type": "USE_EXISTING",
  • "name": "string",
  • "sourceId": "string",
  • "description": "string"
}

ExternalMessengerCreateContactErrorResponse

$_type
string
Default: "ExternalMessengerCreateContactErrorResponse"
Value: "ExternalMessengerCreateContactErrorResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the request failed

{
  • "$_type": "ExternalMessengerCreateContactErrorResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateContactInvalidContactIdentifierResponse

$_type
string
Default: "ExternalMessengerCreateContactInvalidContactIdentifierResponse"
Value: "ExternalMessengerCreateContactInvalidContactIdentifierResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the contact identifier is invalid, for example, because a specific format is expected

{
  • "$_type": "ExternalMessengerCreateContactInvalidContactIdentifierResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateContactRequest

$_type
string
Default: "ExternalMessengerCreateContactRequest"
Value: "ExternalMessengerCreateContactRequest"
accountId
string
serviceName
string
externalMessengerChannelId
string

The ID of the external messenger channel to which the conversation has to be linked

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

contactIdentifier
string

The identifier of the person in the external messenger. The identifier value is based on the configured values of the CustomExternalMessengerChannelcontact identifier field name and type.

description
string

The description of the contact. Is null, if the user didn't define one.

{
  • "$_type": "ExternalMessengerCreateContactRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "externalMessengerChannelId": "string",
  • "personData": {
    },
  • "contactIdentifier": "string",
  • "description": "string"
}

ExternalMessengerCreateContactResponse

$_type
string
Default: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
Value: "ExternalMessengerCreateContactContactToPersonMismatchResponse"
type
string (EExternalMessengerContactCreationResponseType)
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

errorText
string

The error text why the request failed

Example
{
  • "$_type": "ExternalMessengerCreateContactContactToPersonMismatchResponse",
  • "type": "CONTACT_TO_PERSON_MISMATCH",
  • "errorText": "string"
}

ExternalMessengerCreateContactUseExistingResponse

$_type
string
Default: "ExternalMessengerCreateContactUseExistingResponse"
Value: "ExternalMessengerCreateContactUseExistingResponse"
type
string (EExternalMessengerContactCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "INVALID_CONTACT_IDENTIFIER" "CONTACT_TO_PERSON_MISMATCH" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing `ExternalMessengerContact` should be used","CREATE: The request was successfully executed and a new `ExternalMessengerContact` should be created","INVALID_CONTACT_IDENTIFIER: The contact identifier is invalid","CONTACT_TO_PERSON_MISMATCH: There is an existing contact for the contact identifier, but it doesn't match the person for whom the contact creation request was sent.","ERROR: The request failed to execute"]

Type of an ExternalMessengerContact creation response

externalMessengerContactId
string

The ID of the ExternalMessengerContact created when processing the ExternalMessengerCreateContactRequest request

{
  • "$_type": "ExternalMessengerCreateContactUseExistingResponse",
  • "type": "USE_EXISTING",
  • "externalMessengerContactId": "string"
}

ExternalMessengerCreateConversationCreateResponse

$_type
string
Default: "ExternalMessengerCreateConversationCreateResponse"
Value: "ExternalMessengerCreateConversationCreateResponse"
type
string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

sourceId
string

The source ID of the conversation which should be added to the creation data from the request. It has to be unique for the related external messenger channel.

sourceUrl
string

URL identifying the system where the conversation was created, for example a CRM. Optional.

object

Additional metadata which should be stored for the new conversation

{
  • "$_type": "ExternalMessengerCreateConversationCreateResponse",
  • "type": "USE_EXISTING",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "metadata": {
    }
}

ExternalMessengerCreateConversationErrorResponse

$_type
string
Default: "ExternalMessengerCreateConversationErrorResponse"
Value: "ExternalMessengerCreateConversationErrorResponse"
type
string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

errorText
string

The error text why the request failed

{
  • "$_type": "ExternalMessengerCreateConversationErrorResponse",
  • "type": "USE_EXISTING",
  • "errorText": "string"
}

ExternalMessengerCreateConversationRequest

$_type
string
Default: "ExternalMessengerCreateConversationRequest"
Value: "ExternalMessengerCreateConversationRequest"
accountId
string
serviceName
string
object (ConversationCreationData)

Data for creating a new conversation

{
  • "$_type": "ExternalMessengerCreateConversationRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "creationData": {
    }
}

ExternalMessengerCreateConversationResponse

$_type
string
Default: "ExternalMessengerCreateConversationCreateResponse"
Value: "ExternalMessengerCreateConversationCreateResponse"
type
string (EExternalMessengerConversationCreationResponseType)
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

sourceId
string

The source ID of the conversation which should be added to the creation data from the request. It has to be unique for the related external messenger channel.

sourceUrl
string

URL identifying the system where the conversation was created, for example a CRM. Optional.

object

Additional metadata which should be stored for the new conversation

Example
{
  • "$_type": "ExternalMessengerCreateConversationCreateResponse",
  • "type": "CREATE",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "metadata": {
    }
}

ExternalMessengerCreateConversationUseExistingResponse

$_type
string
Default: "ExternalMessengerCreateConversationUseExistingResponse"
Value: "ExternalMessengerCreateConversationUseExistingResponse"
type
string (EExternalMessengerConversationCreationResponseType)
Enum: "USE_EXISTING" "CREATE" "ERROR"
enum-descriptions: ["USE_EXISTING: The request was successfully executed and an existing conversation should be used.","CREATE: The request was successfully executed and a new conversation should be created.","ERROR: The request failed to execute"]

Type of a external messenger conversation creation response

conversationId
string

The ID of the conversation created when processing the ExternalMessengerCreateConversationRequest request

{
  • "$_type": "ExternalMessengerCreateConversationUseExistingResponse",
  • "type": "USE_EXISTING",
  • "conversationId": "string"
}

ExternalMessengerMessageStateEvent

$_type
string
Default: "ExternalMessengerMessageStateEvent"
Value: "ExternalMessengerMessageStateEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageId
string

The ID of the message of which the state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

sourceId
string

The source ID of the message

externalMessengerChannelId
string

The ID if the external messenger channel

conversationId
string

The ID of the conversation to which the message belongs to

{
  • "$_type": "ExternalMessengerMessageStateEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "sourceId": "string",
  • "externalMessengerChannelId": "string",
  • "conversationId": "string"
}

ExternalMessengerMessageStateRequest

$_type
string
Default: "ExternalMessengerMessageStateRequest"
Value: "ExternalMessengerMessageStateRequest"
accountId
string
serviceName
string
messageId
string

The ID of the message of which the state has changed

state
string (EMessageState)
Enum: "DELIVERED" "READ"
enum-descriptions: ["DELIVERED: The message was delivered to the recipients","READ: The message was read by the recipients"]

The state of a message if it was delivered or read

sourceId
string

The source ID of the message

externalMessengerChannelId
string

The ID if the external messenger channel

conversationId
string

The ID of the conversation the message belongs to

{
  • "$_type": "ExternalMessengerMessageStateRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "messageId": "string",
  • "state": "DELIVERED",
  • "sourceId": "string",
  • "externalMessengerChannelId": "string",
  • "conversationId": "string"
}

ExternalMessengerMessageStateResponse

$_type
string
Default: "ExternalMessengerMessageStateResponse"
Value: "ExternalMessengerMessageStateResponse"
{
  • "$_type": "ExternalMessengerMessageStateResponse"
}

ExternalMessengerNewMessageEvent

$_type
string
Default: "ExternalMessengerNewMessageEvent"
Value: "ExternalMessengerNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

{
  • "$_type": "ExternalMessengerNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "conversationMessage": {
    }
}

ExternalMessengerNewMessageRequest

$_type
string
Default: "ExternalMessengerNewMessageRequest"
Value: "ExternalMessengerNewMessageRequest"
accountId
string
serviceName
string
any (MessageData)

Base class for all conversation messages

Array of objects (ExternalMessengerContact) [ items ]

The contacts that should receive the message

{
  • "$_type": "ExternalMessengerNewMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "conversationMessage": {
    },
  • "receivingContacts": [
    ]
}

ExternalMessengerNewMessageResponse

$_type
string
Default: "ExternalMessengerNewMessageResponse"
Value: "ExternalMessengerNewMessageResponse"
{
  • "$_type": "ExternalMessengerNewMessageResponse"
}

ExternalMessengerPostMessage

$_type
string
Default: "ExternalMessengerPostMessage"
Value: "ExternalMessengerPostMessage"
conversationId
string

The id of the conversation to which this message belongs to

senderExternalMessengerContactId
string

ID of the ExternalMessengerContact that sent the message.

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If it is null, all active participations are recipients

sourceId
string

An id identifying the source of the external message. Typically the id of the message in the other messaging system

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

any (PostMessageData)

Base class for all conversation messages sent to the collaboration server.

Can be one of CardPostMessageData, FilePostMessageData, ListPostMessageData, MultichoiceQuestionPostMessageData,RatingQuestionPostMessageData, ReplyPostMessageData, TextPostMessageData or TextQuestionPostMessageData

{
  • "$_type": "ExternalMessengerPostMessage",
  • "conversationId": "string",
  • "senderExternalMessengerContactId": "string",
  • "recipientPersonIds": [
    ],
  • "sourceId": "string",
  • "replyToMessageId": "string",
  • "messageData": {
    }
}

ExternalMessengersMessageDeliveredBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message that should be marked as delivered in the conversation

externalMessengerContactId
string

The ID of the ExternalMessengerContact who received the message. If null, it's assumed that the message was delivered to all persons connected through the external messenger.

{
  • "conversationId": "string",
  • "messageId": "string",
  • "externalMessengerContactId": "string"
}

ExternalMessengersMessageReadBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message that should be marked as read in the conversation

externalMessengerContactId
string

The ID of the ExternalMessengerContact who read the message. If null, it's assumed that the message has been read by everyone connected through the external messenger.

{
  • "conversationId": "string",
  • "messageId": "string",
  • "externalMessengerContactId": "string"
}

ExternalMessengersMessageSendFailedBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message from the conversation, which should be set to the failed state

failState
string (ESendFailState)
Enum: "RETRYABLE" "TERMINAL"
enum-descriptions: ["RETRYABLE: Message could not be sent, but it is not terminal and can be tried again","TERMINAL: Message could not be sent and it will not be possible to send it again"]

The failed state of a message which was sent to an external messenger

failureText
string

A text that describes why the message couldn't be sent to the external messenger. The text is displayed to the user.

{
  • "conversationId": "string",
  • "messageId": "string",
  • "failState": "RETRYABLE",
  • "failureText": "string"
}

ExternalMessengersMessageSentSuccessfullyBody

conversationId
string

The ID of the conversation

messageId
string

The ID of the message that was successfully sent to the conversation

{
  • "conversationId": "string",
  • "messageId": "string"
}

ExternalParticipantData

$_type
string
Default: "ExternalParticipantData"
Value: "ExternalParticipantData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

externalMessengerContactId
string

ID of the ExternalMessengerContact for the person in question

personId
string

ID of the Person

sourceId
string

The source ID of the ExternalMessengerContact

participationType
string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ExternalParticipantData",
  • "state": "CREATED",
  • "externalMessengerContactId": "string",
  • "personId": "string",
  • "sourceId": "string",
  • "participationType": "CONTEXT_PERSON"
}

ExternalParticipantHistoryData

$_type
string
Default: "ExternalParticipantHistoryData"
Value: "ExternalParticipantHistoryData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the person participation was created (timestamp when the state was set to EConversationParticipationState.CREATED)

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person joined (timestamp when the state was set to EConversationParticipationState.ONBOARDING)

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated, may be null (timestamp when the state was set to EConversationParticipationState.ACTIVE)

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when the person started offboarding, may be null (timestamp when the state was set toEConversationParticipationState.OFFBOARDING)

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person left, may be null (timestamp when the state was set to EConversationParticipationState.ENDED)

leftReason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

leftComment
string

The comment on why the participant left the conversation. If provided, this attribute is set when offboarding starts and is null if the participant is still part of the conversation.

conversationRating
number <float>

Participant's rating of the conversation (between 0 and 1)

participationType
string (EConversationRealVisitorParticipationType)
Enum: "CONTEXT_PERSON" "SECONDARY_VISITOR"
enum-descriptions: ["CONTEXT_PERSON","SECONDARY_VISITOR"]

This enum contains all "real" visitor participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (ExternalMessengerContact)

Contact belonging to an external messenger.
The entity acts as a storage for external channels to create a link between Collaboration Server persons and the users of an external messenger.

{
  • "$_type": "ExternalParticipantHistoryData",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "joinedTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "FORWARDED",
  • "leftComment": "string",
  • "conversationRating": 0,
  • "participationType": "CONTEXT_PERSON",
  • "person": {
    },
  • "externalMessengerContact": {
    }
}

ExternallyManagedUserSearchFilter

$_type
string
Default: "ExternallyManagedUserSearchFilter"
Value: "ExternallyManagedUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (BooleanOperator)
{
  • "$_type": "ExternallyManagedUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

FileMessageData

$_type
string
Default: "FileMessageData"
Value: "FileMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

fileName
string

The name of the file that is send

caption
string

A caption for the file that is send. Can be omitted

captionType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

mimeType
string

The mime type of the file that is send

source
string

The source of the file

fileStoreId
string

The file store id of the content inside the collaboration server

fileStatus
string (EConversationFileStatus)
Enum: "UPLOADING" "COMPLETED" "CANCELED" "FAILED" "DELETED" "SCANNING" "REJECTED"
enum-descriptions: ["UPLOADING","COMPLETED","CANCELED","FAILED","DELETED","SCANNING","REJECTED"]

Status of a file which is/was uploaded to the collaboration server

totalSize
integer <int64>

The total size of the file. Does not need to be set, when the file is send to the collaboration server

uploadedSize
integer <int64>

The amount of data that was already uploaded to the server. Does not need to be set, when the file is send to the collaboration server

Array of objects (DownloadLink) [ items ]

URLs to download the file. Access is only permitted for authenticated users that have access to the referenced conversation. Authentication is possible with basic authentication or a valid session cookie.
If the file is currently being reviewed by one or more file interceptors, calling one of the URLs returns a 403 code until the file upload has been approved.

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "FileMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "fileName": "string",
  • "caption": "string",
  • "captionType": "SIMPLE_TEXT",
  • "mimeType": "string",
  • "source": "string",
  • "fileStoreId": "string",
  • "fileStatus": "UPLOADING",
  • "totalSize": 0,
  • "uploadedSize": 0,
  • "downloadLinks": [
    ],
  • "quickReplies": [
    ]
}

FilePostMessageData

$_type
string
Default: "FilePostMessageData"
Value: "FilePostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

fileName
string

The name of the file that is send

caption
string

A caption for the file that is send. Can be omitted

captionType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

fileData
string

The the content of the file as data URL scheme (RFC2397 - data:[<mediatype>][;base64],<data>)

Array of objects (QuickReply) [ items ]

Optional list of quick replies available to the message's recipients

Max number of quick replies is 13.

{
  • "$_type": "FilePostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "fileName": "string",
  • "caption": "string",
  • "captionType": "SIMPLE_TEXT",
  • "fileData": "string",
  • "quickReplies": [
    ]
}

FileUploadInterceptorData

$_type
string
Default: "FileUploadInterceptorData"
Value: "FileUploadInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the file upload interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the file upload interceptor. Maximum length of 500 characters. Optional.

order
integer <int64>

Order of execution of the file upload interceptor among all the file upload interceptors configured in the account. Mandatory.

mimeTypeRegex
string

Regular expression used to determine if the interceptor must be used for a particular MIME type. Leave it empty to match all MIME types.

webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.FILE_UPLOAD_INTERCEPTOR_NEW_FILE: On each file uploaded to a conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event. Maximum length of 4000 characters.

{
  • "$_type": "FileUploadInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "order": 0,
  • "mimeTypeRegex": "string",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

FileUploadInterceptorOrderBy

$_type
string
Default: "FileUploadInterceptorOrderBy"
Value: "FileUploadInterceptorOrderBy"
field
string (EFileUploadInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "FileUploadInterceptorOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

FileUploadInterceptorQuery

$_type
string
Default: "FileUploadInterceptorQuery"
Value: "FileUploadInterceptorQuery"
Array of any (FileUploadInterceptorSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (FileUploadInterceptorOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "FileUploadInterceptorQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

FileUploadInterceptorResult

$_type
string
Default: "FileUploadInterceptorResult"
Value: "FileUploadInterceptorResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (FileUploadInterceptorData) [ items ]

The returned list of entities

{
  • "$_type": "FileUploadInterceptorResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

FileUploadInterceptorSearchFilter

$_type
string
Default: "CreationTimestampFileUploadInterceptorSearchFilter"
Value: "CreationTimestampFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampFileUploadInterceptorSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

FileUploadInterceptorsApproveFileUploadBody

token
string

The token used to identify the file this action applies to. The token is received when approval is requested through a file_upload_interceptor.new_file webhook. Each file upload approval request contains a unique token.

{
  • "token": "string"
}

FileUploadInterceptorsRejectFileUploadBody

token
string

The token used to identify the file this action applies to. The token is received when approval is requested through a file_upload_interceptor.new_file webhook. Each file upload approval request contains a unique token.

reason
string

A text explaining why the file upload was rejected. The text is displayed to end users as it was transmitted.

{
  • "token": "string",
  • "reason": "string"
}

FirstNamePersonSearchFilter

$_type
string
Default: "FirstNamePersonSearchFilter"
Value: "FirstNamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "FirstNamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

FirstNamePersonTypedSearchFilter

$_type
string
Default: "FirstNamePersonTypedSearchFilter"
Value: "FirstNamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "FirstNamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

FirstNameUserSearchFilter

$_type
string
Default: "FirstNameUserSearchFilter"
Value: "FirstNameUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "FirstNameUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

GlobalChangeAuditChangeSearchFilter

$_type
string
Default: "GlobalChangeAuditChangeSearchFilter"
Value: "GlobalChangeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (BooleanOperator)
{
  • "$_type": "GlobalChangeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

GlobalData

$_type
string
Default: "GlobalData"
Value: "GlobalData"
serverIdentifier
string

A unique id identifying an Unblu installation. This is read only information it will be set by the server anyway.

object (LicenseData)

Entity representing the current installed license

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "GlobalData",
  • "serverIdentifier": "string",
  • "currentLicense": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

GreaterThanOrNullTimestampOperator

$_type
string
Default: "GreaterThanOrNullTimestampOperator"
Value: "GreaterThanOrNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "GreaterThanOrNullTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

GreaterThanTimestampOperator

$_type
string
Default: "GreaterThanTimestampOperator"
Value: "GreaterThanTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "GreaterThanTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

HasPasswordData

$_type
string
Default: "HasPasswordData"
Value: "HasPasswordData"
hasPassword
boolean

Whether or not the user has a password

{
  • "$_type": "HasPasswordData",
  • "hasPassword": true
}

HavingPersonLabelNameOperator

$_type
string
Default: "HavingPersonLabelNameOperator"
Value: "HavingPersonLabelNameOperator"
values
Array of strings
{
  • "$_type": "HavingPersonLabelNameOperator",
  • "values": [
    ]
}

IdExternalMessengerContactSearchFilter

$_type
string
Default: "IdExternalMessengerContactSearchFilter"
Value: "IdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "IdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

IdListOperator

$_type
string
Default: "AllEqualIdListOperator"
Value: "AllEqualIdListOperator"
type
string (EIdListOperatorType)
enum-descriptions: ["ALL_OF: Checks if all of the values are present in the value list provided by the operator.","ANY_OF: Checks if any of the values is equal to any of the values in the list provided by the operator.","ALL_EQUAL: Check if the lists are of the same length and contain same values."]

Operator types corresponding to operators defined by IdListOperator

values
Array of strings
Example
{
  • "$_type": "AllEqualIdListOperator",
  • "type": "ALL_EQUAL",
  • "values": [
    ]
}

IdOperator

$_type
string
Default: "EqualsIdOperator"
Value: "EqualsIdOperator"
type
string (EIdOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
Example
{
  • "$_type": "EqualsIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

ImpersonationTypeAuditChangeSearchFilter

$_type
string
Default: "ImpersonationTypeAuditChangeSearchFilter"
Value: "ImpersonationTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (ImpersonationTypeOperator)
{
  • "$_type": "ImpersonationTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ImpersonationTypeOperator

$_type
string
Default: "EqualsImpersonationTypeOperator"
Value: "EqualsImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

Example
{
  • "$_type": "EqualsImpersonationTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

InAuditChangeInteractionTypeOperator

$_type
string
Default: "InAuditChangeInteractionTypeOperator"
Value: "InAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditInteractionType)
Items Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
{
  • "$_type": "InAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InAuditChangeTypeOperator

$_type
string
Default: "InAuditChangeTypeOperator"
Value: "InAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditChangeType)
Items Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
{
  • "$_type": "InAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InAuthorizationRoleOperator

$_type
string
Default: "InAuthorizationRoleOperator"
Value: "InAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAuthorizationRole)
Items Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
{
  • "$_type": "InAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InAwaitedPersonTypeOperator

$_type
string
Default: "InAwaitedPersonTypeOperator"
Value: "InAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAwaitedPersonType)
Items Enum: "NONE" "VISITOR" "AGENT"
{
  • "$_type": "InAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InContactIdentifierFieldTypeOperator

$_type
string
Default: "InContactIdentifierFieldTypeOperator"
Value: "InContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EContactIdentifierFieldType)
Items Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
{
  • "$_type": "InContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InConversationEndReasonOperator

$_type
string
Default: "InConversationEndReasonOperator"
Value: "InConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationEndReason)
Items Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
{
  • "$_type": "InConversationEndReasonOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InConversationRecipientTypeOperator

$_type
string
Default: "InConversationRecipientTypeOperator"
Value: "InConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationRecipientType)
Items Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "InConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InConversationStateOperator

$_type
string
Default: "InConversationStateOperator"
Value: "InConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
{
  • "$_type": "InConversationStateOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InDeputyDelegationEscalationLevelOperator

$_type
string
Default: "InDeputyDelegationEscalationLevelOperator"
Value: "InDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyDelegationEscalationLevel)
Items Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
{
  • "$_type": "InDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InDeputyTypeOperator

$_type
string
Default: "InDeputyTypeOperator"
Value: "InDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyType)
Items Enum: "AGENT" "TEAM"
{
  • "$_type": "InDeputyTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InExternalMessengerChannelTypeOperator

$_type
string
Default: "InExternalMessengerChannelTypeOperator"
Value: "InExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EExternalMessengerChannelType)
Items Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
{
  • "$_type": "InExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InIdOperator

$_type
string
Default: "InIdOperator"
Value: "InIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

values
Array of strings
{
  • "$_type": "InIdOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InImpersonationTypeOperator

$_type
string
Default: "InImpersonationTypeOperator"
Value: "InImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EImpersonationType)
Items Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
{
  • "$_type": "InImpersonationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInitialEngagementTypeOperator

$_type
string
Default: "InInitialEngagementTypeOperator"
Value: "InInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInitialEngagementType)
Items Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
{
  • "$_type": "InInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInvitationCreatorTypeOperator

$_type
string
Default: "InInvitationCreatorTypeOperator"
Value: "InInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationCreatorType)
Items Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
{
  • "$_type": "InInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInvitationTargetTypeOperator

$_type
string
Default: "InInvitationTargetTypeOperator"
Value: "InInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationTargetType)
Items Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "InInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InInvitationTypeOperator

$_type
string
Default: "InInvitationTypeOperator"
Value: "InInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationType)
Items Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
{
  • "$_type": "InInvitationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InPersonSourceOperator

$_type
string
Default: "InPersonSourceOperator"
Value: "InPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonSource)
Items Enum: "USER_DB" "VIRTUAL"
{
  • "$_type": "InPersonSourceOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InPersonTypeOperator

$_type
string
Default: "InPersonTypeOperator"
Value: "InPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonType)
Items Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
{
  • "$_type": "InPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InPropertyOwnerTypeOperator

$_type
string
Default: "InPropertyOwnerTypeOperator"
Value: "InPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
values
Array of strings (EPropertyOwnerType)
Items Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
{
  • "$_type": "InPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InRangeTimestampOperator

$_type
string
Default: "InRangeTimestampOperator"
Value: "InRangeTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
minimum
integer <int64>
maximum
integer <int64>
{
  • "$_type": "InRangeTimestampOperator",
  • "type": "EQUALS",
  • "minimum": 0,
  • "maximum": 0
}

InStringOperator

$_type
string
Default: "InStringOperator"
Value: "InStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
values
Array of strings
{
  • "$_type": "InStringOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InTimestampOperator

$_type
string
Default: "InTimestampOperator"
Value: "InTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
values
Array of integers <int64> [ items <int64 > ]
{
  • "$_type": "InTimestampOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

InboundRequestPushNotificationEvent

$_type
string
Default: "InboundRequestPushNotificationEvent"
Value: "InboundRequestPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

{
  • "$_type": "InboundRequestPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string"
}

IncomingCallPushNotificationEvent

$_type
string
Default: "IncomingCallPushNotificationEvent"
Value: "IncomingCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

callStartTimestamp
integer <int64>

Timestamp when the call started

callerName
string

Name of the person calling

callerPersonId
string

Person id of the person calling

{
  • "$_type": "IncomingCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE",
  • "callType": "AUDIO",
  • "callStartTimestamp": 0,
  • "callerName": "string",
  • "callerPersonId": "string"
}

InitialEngagementTypeConversationHistorySearchFilter

$_type
string
Default: "InitialEngagementTypeConversationHistorySearchFilter"
Value: "InitialEngagementTypeConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (InitialEngagementTypeOperator)
{
  • "$_type": "InitialEngagementTypeConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

InitialEngagementTypeConversationSearchFilter

$_type
string
Default: "InitialEngagementTypeConversationSearchFilter"
Value: "InitialEngagementTypeConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (InitialEngagementTypeOperator)
{
  • "$_type": "InitialEngagementTypeConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

InitialEngagementTypeConversationTemplateSearchFilter

$_type
string
Default: "InitialEngagementTypeConversationTemplateSearchFilter"
Value: "InitialEngagementTypeConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (InitialEngagementTypeOperator)
{
  • "$_type": "InitialEngagementTypeConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

InitialEngagementTypeOperator

$_type
string
Default: "EqualsInitialEngagementTypeOperator"
Value: "EqualsInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

Example
{
  • "$_type": "EqualsInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "value": "CHAT_REQUEST"
}

InitiationTimestampCallSearchFilter

$_type
string
Default: "InitiationTimestampCallSearchFilter"
Value: "InitiationTimestampCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (TimestampOperator)
{
  • "$_type": "InitiationTimestampCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

InitiatorPersonIdCallSearchFilter

$_type
string
Default: "InitiatorPersonIdCallSearchFilter"
Value: "InitiatorPersonIdCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "InitiatorPersonIdCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

InteractionNameAuditChangeSearchFilter

$_type
string
Default: "InteractionNameAuditChangeSearchFilter"
Value: "InteractionNameAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "InteractionNameAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

InteractionTypeAuditChangeSearchFilter

$_type
string
Default: "InteractionTypeAuditChangeSearchFilter"
Value: "InteractionTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (AuditChangeInteractionTypeOperator)
{
  • "$_type": "InteractionTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

InterceptorFileRejectedEvent

$_type
string
Default: "InterceptorFileRejectedEvent"
Value: "InterceptorFileRejectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

name
string

The name of the file

mimeType
string

The file's MIME type

length
integer <int64>

The length, or size, of the file in bytes

interceptorId
string

The ID of the file upload interceptor that rejected the file upload

source
string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

personId
string

The ID of the person uploading the file. Depending on the source, this may be null.

conversationId
string

The ID of the conversation where the file is being uploaded. Depending on the source, this may be null.

reason
string

The reason the file upload was rejected

{
  • "$_type": "InterceptorFileRejectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "name": "string",
  • "mimeType": "string",
  • "length": 0,
  • "interceptorId": "string",
  • "source": "BOT",
  • "personId": "string",
  • "conversationId": "string",
  • "reason": "string"
}

InterceptorNewFileEvent

$_type
string
Default: "InterceptorNewFileEvent"
Value: "InterceptorNewFileEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

apiToken
string

The token to get the message's content and approve or reject the message

name
string

The name of the file

mimeType
string

The file's MIME type

length
integer <int64>

The length, or size, of the file in bytes

downloadLink
string

The link to retrieve the file's contents

source
string (EFileUploadInterceptorSource)
Enum: "BOT" "EXTERNAL_MESSENGER" "CONVERSATION" "CALL_SNAPSHOT" "CONVERSATION_RECORDING" "CO_BROWSING_DOWNLOAD"
enum-descriptions: ["BOT","EXTERNAL_MESSENGER: The file is being upload as a file message via an external channel","CONVERSATION: The file is being uploaded as a file message through an external messenger","CALL_SNAPSHOT: The file is a snapshot from a call","CONVERSATION_RECORDING: The file is the recording of a conversation","CO_BROWSING_DOWNLOAD: The file is being uploaded to the conversation from a website participants are co-browsing"]

The source of a file upload

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationId
string

The ID of the conversation where the file is being uploaded. Depending on the source, this may be null.

{
  • "$_type": "InterceptorNewFileEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "apiToken": "string",
  • "name": "string",
  • "mimeType": "string",
  • "length": 0,
  • "downloadLink": "string",
  • "source": "BOT",
  • "person": {
    },
  • "conversationId": "string"
}

InterceptorNewMessageEvent

$_type
string
Default: "InterceptorNewMessageEvent"
Value: "InterceptorNewMessageEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

messageApiToken
string

The token to approve, modify, or reject the message

any (MessageData)

Base class for all conversation messages

conversationLanguage
string

The language of the conversation

{
  • "$_type": "InterceptorNewMessageEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "messageApiToken": "string",
  • "conversationMessage": {
    },
  • "conversationLanguage": "string"
}

InterceptorNewMessageRequest

$_type
string
Default: "InterceptorNewMessageRequest"
Value: "InterceptorNewMessageRequest"
accountId
string
serviceName
string
any (MessageData)

Base class for all conversation messages

conversationLanguage
string

The language of the conversation

{
  • "$_type": "InterceptorNewMessageRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "conversationMessage": {
    },
  • "conversationLanguage": "string"
}

InternalMessageInterceptorData

$_type
string
Default: "InternalMessageInterceptorData"
Value: "InternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
Enum: "EXTERNAL" "INTERNAL"
enum-descriptions: ["EXTERNAL","INTERNAL"]
pointOfInterception
string (EMessageInterceptionPoint)
Enum: "BEFORE_PERSISTING" "AFTER_PERSISTING"
enum-descriptions: ["BEFORE_PERSISTING: Messages are intercepted before the message is persisted. The first interception takes place on the client side before the message is sent to the server. A second validation occurs before the message is persisted and added to the conversation in case the client-side validation was skipped for some reason. <p> If this point of interception is selected, Unblu doesn't store any information about rejected chat messages. It isn't possible to see rejected chat messages, or to be notified of rejected chat messages through logs or webhooks.","AFTER_PERSISTING: Messages are intercepted after they've been persisted and added to the conversation. Until the interception phase is over, the messages are only visible to the sender. If the message is rejected, only participation types with the appropriate rights can see the message. <p> If this interception point is chosen, every message is stored in Unblu and can be accessed later. It is possible to receive a webhook and logs when a message is rejected."]

Identifies the point where an interceptor intercepts messages

language
string

The IETF BCP 47 language tag of the interceptor. The interceptor only applies to conversations in the language specified. Can be omitted for interceptors that apply to all languages. The following rules apply:

  • Internal Message Interceptors with no language defined are used for all conversations where they have been configured no matter the language of the conversation.
  • If the conversation language (e.g. "en-us") is more specific than the language of the internal message interceptor (e.g. "en"), the internal message interceptor is also used.
  • If the language of the internal message interceptor (e.g. "en-us") is more specific than the conversation language (e.g. "en"), the internal message interceptor isn't used.
regex
string

The regular expression used to identify the messages to reject

reason
string

The reason displayed when a message is rejected. If a localized version of the reason exists in the language of the conversation, the translation is used. Otherwise, this value is used.

severity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

status
string (EInternalMessageInterceptorStatus)
Enum: "ACTIVE" "INACTIVE"
enum-descriptions: ["ACTIVE: The interceptor is active and participates in all conversations where it is configured","INACTIVE: The interceptor isn't active and doesn't participate in any conversation"]

The status of an internal message interceptor.

object

A map of localized versions of the reject reason of this entity. The key is the IETF BCP 47 representation of the locale.

{
  • "$_type": "InternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "pointOfInterception": "BEFORE_PERSISTING",
  • "language": "string",
  • "regex": "string",
  • "reason": "string",
  • "severity": "HIGH",
  • "status": "ACTIVE",
  • "translations": {
    }
}

InternalMessageInterceptorTranslation

$_type
string
Default: "InternalMessageInterceptorTranslation"
Value: "InternalMessageInterceptorTranslation"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted, the ID is generated by the server.

reason
string

The reason shown when a message is rejected. If a translation of the reason exists in the language of the conversation, it's used. Otherwise this value is used.

{
  • "$_type": "InternalMessageInterceptorTranslation",
  • "id": "string",
  • "reason": "string"
}

InvitationCreatorTypeOperator

$_type
string
Default: "EqualsInvitationCreatorTypeOperator"
Value: "EqualsInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

Example
{
  • "$_type": "EqualsInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "value": "WEB_API"
}

InvitationStateConversationInvitationSearchFilter

$_type
string
Default: "InvitationStateConversationInvitationSearchFilter"
Value: "InvitationStateConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationStateOperator)
{
  • "$_type": "InvitationStateConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

InvitationStateOperator

$_type
string
Default: "EqualsInvitationStateOperator"
Value: "EqualsInvitationStateOperator"
type
string (EInvitationStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

Example
{
  • "$_type": "EqualsInvitationStateOperator",
  • "type": "EQUALS",
  • "value": "OPEN"
}

InvitationTargetTypeOperator

$_type
string
Default: "EqualsInvitationTargetTypeOperator"
Value: "EqualsInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
Example
{
  • "$_type": "EqualsInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "value": "ANONYMOUS"
}

InvitationTypeConversationInvitationSearchFilter

$_type
string
Default: "InvitationTypeConversationInvitationSearchFilter"
Value: "InvitationTypeConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationTypeOperator)
{
  • "$_type": "InvitationTypeConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

InvitationTypeOperator

$_type
string
Default: "EqualsInvitationTypeOperator"
Value: "EqualsInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
Example
{
  • "$_type": "EqualsInvitationTypeOperator",
  • "type": "EQUALS",
  • "value": "ASSIGNMENT_REQUEST"
}

InvitationsAddSecondaryInvitationTargetBody

personId
string

The person who should be informed of the invitation additionally

{
  • "personId": "string"
}

InvitationsCancelSecondaryInvitationTargetBody

personId
string

The person ID of the secondary invitation target for whom to cancel the invitation

{
  • "personId": "string"
}

InvitationsForwardConversationToAgentBody

conversationId
string

Conversation id.

agentPersonId
string

Person ID of the agent.

comment
string

Invitation comment that will be displayed to the invited agent. Optional.

{
  • "conversationId": "string",
  • "agentPersonId": "string",
  • "comment": "string"
}

InvitationsForwardConversationToTeamBody

conversationId
string

Conversation id.

teamId
string

Team id.

comment
string

Invitation comment. Optional.

{
  • "conversationId": "string",
  • "teamId": "string",
  • "comment": "string"
}

InvitationsGetAcceptLinkBody

token
string

to return the links for

{
  • "token": "string"
}

InvitationsInviteAgentToConversationBody

conversationId
string

Conversation ID

agentPersonId
string

Person ID of the invited agent

comment
string

Invitation comment. Optional.

joinHidden
boolean

Flag deciding whether accepting the invitation resolves into a hidden participation. Optional (false by default).

{
  • "conversationId": "string",
  • "agentPersonId": "string",
  • "comment": "string",
  • "joinHidden": true
}

InvitationsInviteAnonymousVisitorToConversationWithEmailBody

conversationId
string

Conversation id.

email
string

Email address that will be applied to the visitor who accepts the invitation if they are anonymous and haven't provided an email address. Optional.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

{
  • "conversationId": "string",
  • "email": "string",
  • "nickname": "string"
}

InvitationsInviteAnonymousVisitorToConversationWithLinkBody

conversationId
string

Conversation id.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

{
  • "conversationId": "string",
  • "nickname": "string"
}

InvitationsInviteAnonymousVisitorToConversationWithPinBody

conversationId
string

Conversation id.

nickname
string

Nickname that will be applied to the visitor who accepts the invitation if they are anonymous and don't already have a nickname set. Optional.

{
  • "conversationId": "string",
  • "nickname": "string"
}

InvitationsInviteTeamToConversationBody

conversationId
string

Conversation ID

teamId
string

Team ID

comment
string

Invitation comment. Optional.

joinHidden
boolean

Flag deciding whether accepting the invitation resolves into a hidden participation. Optional (false by default).

{
  • "conversationId": "string",
  • "teamId": "string",
  • "comment": "string",
  • "joinHidden": true
}

InvitationsRequeueConversationBody

conversationId
string

Conversation ID

agentRemovalType
string (EAgentRemovalType)
Enum: "KEEP_AGENTS" "REMOVE_ASSIGNED_AGENT" "REMOVE_ALL_AGENTS"
enum-descriptions: ["KEEP_AGENTS","REMOVE_ASSIGNED_AGENT","REMOVE_ALL_AGENTS"]
{
  • "conversationId": "string",
  • "agentRemovalType": "KEEP_AGENTS"
}

IsNotNullBooleanOperator

$_type
string
Default: "IsNotNullBooleanOperator"
Value: "IsNotNullBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
{
  • "$_type": "IsNotNullBooleanOperator",
  • "type": "EQUALS"
}

IsNotNullIdOperator

$_type
string
Default: "IsNotNullIdOperator"
Value: "IsNotNullIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

{
  • "$_type": "IsNotNullIdOperator",
  • "type": "EQUALS"
}

IsNotNullStringOperator

$_type
string
Default: "IsNotNullStringOperator"
Value: "IsNotNullStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
{
  • "$_type": "IsNotNullStringOperator",
  • "type": "EQUALS"
}

IsNotNullTimestampOperator

$_type
string
Default: "IsNotNullTimestampOperator"
Value: "IsNotNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
{
  • "$_type": "IsNotNullTimestampOperator",
  • "type": "EQUALS"
}

IsNullBooleanOperator

$_type
string
Default: "IsNullBooleanOperator"
Value: "IsNullBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
{
  • "$_type": "IsNullBooleanOperator",
  • "type": "EQUALS"
}

IsNullIdOperator

$_type
string
Default: "IsNullIdOperator"
Value: "IsNullIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

{
  • "$_type": "IsNullIdOperator",
  • "type": "EQUALS"
}

IsNullStringOperator

$_type
string
Default: "IsNullStringOperator"
Value: "IsNullStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
{
  • "$_type": "IsNullStringOperator",
  • "type": "EQUALS"
}

IsNullTimestampOperator

$_type
string
Default: "IsNullTimestampOperator"
Value: "IsNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
{
  • "$_type": "IsNullTimestampOperator",
  • "type": "EQUALS"
}

JoinedTimestampPersonPresenceSearchFilter

$_type
string
Default: "JoinedTimestampPersonPresenceSearchFilter"
Value: "JoinedTimestampPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (TimestampOperator)
{
  • "$_type": "JoinedTimestampPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

KeyCannedResponseSearchFilter

$_type
string
Default: "KeyCannedResponseSearchFilter"
Value: "KeyCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "KeyCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

KeyCustomActionSearchFilter

$_type
string
Default: "KeyCustomActionSearchFilter"
Value: "KeyCustomActionSearchFilter"
field
string (ECustomActionSearchFilterField)
Value: "KEY"
enum-descriptions: ["KEY: Filter by the 'key' attribute"]
any (StringOperator)
{
  • "$_type": "KeyCustomActionSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

LastCompletedRecordingTimestampConversationHistorySearchFilter

$_type
string
Default: "LastCompletedRecordingTimestampConversationHistorySearchFilter"
Value: "LastCompletedRecordingTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "LastCompletedRecordingTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

LastMessageTimestampConversationHistorySearchFilter

$_type
string
Default: "LastMessageTimestampConversationHistorySearchFilter"
Value: "LastMessageTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "LastMessageTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

LastNamePersonSearchFilter

$_type
string
Default: "LastNamePersonSearchFilter"
Value: "LastNamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "LastNamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

LastNamePersonTypedSearchFilter

$_type
string
Default: "LastNamePersonTypedSearchFilter"
Value: "LastNamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "LastNamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

LastNameUserSearchFilter

$_type
string
Default: "LastNameUserSearchFilter"
Value: "LastNameUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "LastNameUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

LdapSyncJobEvent

$_type
string
Default: "LdapSyncJobEvent"
Value: "LdapSyncJobEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

numberOfCreatedUsers
integer <int32>

The number of users created in the LDAP sync.

numberOfUpdatedUsers
integer <int32>

The number of users updated in the LDAP sync.

numberOfDeletedUsers
integer <int32>

The number of users deleted in the LDAP sync.

numberOfCreatedTeams
integer <int32>

The number of teams created in the LDAP sync.

numberOfDeletedTeams
integer <int32>

The number of teams deleted in the LDAP sync.

finishedWithError
boolean

Set to true if the LDAP sync finishes with an error.

errorDescription
string

Error description if the LDAP sync finishes with an error.

{
  • "$_type": "LdapSyncJobEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "numberOfCreatedUsers": 0,
  • "numberOfUpdatedUsers": 0,
  • "numberOfDeletedUsers": 0,
  • "numberOfCreatedTeams": 0,
  • "numberOfDeletedTeams": 0,
  • "finishedWithError": true,
  • "errorDescription": "string"
}

LeftTimestampPersonPresenceSearchFilter

$_type
string
Default: "LeftTimestampPersonPresenceSearchFilter"
Value: "LeftTimestampPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (TimestampOperator)
{
  • "$_type": "LeftTimestampPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

LicenseData

$_type
string
Default: "LicenseData"
Value: "LicenseData"
state
string (ELicenseState)
Enum: "NO_LICENSE" "ACTIVE" "INVALID" "INCOMPATIBLE" "EXPIRED"
enum-descriptions: ["NO_LICENSE: No license installed. All licensed features can not be used.","ACTIVE: Valid license installed, this default state to use Unblu.","INVALID: Invalid license installed. All licensed features can not be used.","INCOMPATIBLE: The license type of the installed license is not compatible with this server. All licensed features can not be used.","EXPIRED: Valid license installed, but with an expiration date in the past. All licensed features can not be used."]

State of the global server license

licenseId
string

ID of the current license. Is null when no license is installed. This is read only information that will changed when a new license is installed.

expirationTimestamp
integer <int64>

Unix timestamp (ms) when the current license will expires. Is null when no license is installed. This is read only information that will changed when a new license is installed.

object

features contained in the license.

{
  • "$_type": "LicenseData",
  • "state": "NO_LICENSE",
  • "licenseId": "string",
  • "expirationTimestamp": 0,
  • "features": {
    }
}

ListMessageCardItem

$_type
string
Default: "ListMessageCardItem"
Value: "ListMessageCardItem"
imageUrl
string

URL of the image displayed at the top of the card.

imageAltText
string

Alt text for the image.

title
string

Title displayed bold below the image.

body
string

Body text which may optionally contain markdown.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

object (MessageAction)

Message action used in card messages and on list items.

Links are rendered with their labels below the body text of the card or list item. Reply actions are only rendered in card messages. They aren't rendered on list items.

{
  • "$_type": "ListMessageCardItem",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "action": {
    }
}

ListMessageData

$_type
string
Default: "ListMessageData"
Value: "ListMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

object (MessageHeader)

Header of a message which may contain an image, title and body.

All of these parts are optional as long as it contains at least one of them.

Array of objects (ListMessageCardItem) [ items ]

List of items of the list message

Array of objects (MessageAction) [ items ]

Actions which will be displayed at the bottom of the list

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "ListMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "header": {
    },
  • "items": [
    ],
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

ListPostMessageData

$_type
string
Default: "ListPostMessageData"
Value: "ListPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

object (MessageHeader)

Header of a message which may contain an image, title and body.

All of these parts are optional as long as it contains at least one of them.

Array of objects (PostListMessageCardItemData) [ items ]

List items which will be displayed below the header and above the actions. (optional)

Max number of list items is 10.

Array of objects (MessageAction) [ items ]

Actions which will be displayed at the bottom of the list. (optional)

Max number of actions is 5.

Array of objects (QuickReply) [ items ]

Optional list of quick replies available to the message's recipients

Max number of quick replies is 13.

{
  • "$_type": "ListPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "header": {
    },
  • "items": [
    ],
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

LoginResult

$_type
string
Default: "LoginResult"
Value: "LoginResult"
success
boolean

Whether or not the authentication operation was successful

{
  • "$_type": "LoginResult",
  • "success": true
}

LowerThanOrNullTimestampOperator

$_type
string
Default: "LowerThanOrNullTimestampOperator"
Value: "LowerThanOrNullTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "LowerThanOrNullTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

LowerThanTimestampOperator

$_type
string
Default: "LowerThanTimestampOperator"
Value: "LowerThanTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "LowerThanTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

MessageAction

$_type
string
Default: "MessageAction"
Value: "MessageAction"
actionType
string (EConversationMessageActionType)
Enum: "LINK_INTERNAL" "LINK_EXTERNAL" "LINK_COBROWSABLE" "REPLY_MESSAGE" "REPLY_MESSAGE_WITH_TECHNICAL_VALUE"
enum-descriptions: ["LINK_INTERNAL: An internal link that will open in the same tab as the unblu chat when clicked. <p> The action will be displayed as a link using the action's label as text.","LINK_EXTERNAL: An external link that will open in a new tab when clicked. <p> The action will be displayed as a link with an \"external\" icon using the action's label as text.","LINK_COBROWSABLE: A link that will start universal co-browsing session of provided address when clicked. <p> The action will be displayed as a link with a \"collaborate on website\" icon using the action's label as text.","REPLY_MESSAGE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type TextMessage will be sent in the name of the clicking person containing the action's value as the message text.","REPLY_MESSAGE_WITH_TECHNICAL_VALUE: A reply message will be sent in the name of the clicking person. <p> The action will be displayed as a button with the action's label as text <p> If the action is clicked, a message of the type ReplyMessage will be sent in the name of the clicking person. It will reference the message this action is part of as questionMessage, contain the action's value as the reply's value and the label as text visible to the user. message text."]

Type of message action used in Card and List messages.

label
string

Text displayed in the action button / link

Max length is 24 characters.

value
string

The URL to open if the action type is a link or the reply message if the type is EConversationMessageActionType.REPLY_MESSAGE or a technical value that will be part of the reply message if the action is chosen if the type is EConversationMessageActionType.REPLY_MESSAGE_WITH_TECHNICAL_VALUE.

{
  • "$_type": "MessageAction",
  • "actionType": "LINK_INTERNAL",
  • "label": "string",
  • "value": "string"
}

MessageData

$_type
string
Default: "ApprovalRequestMessageData"
Value: "ApprovalRequestMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

Example
{
  • "$_type": "ApprovalRequestMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "APPROVAL_REQUEST",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING"
}

MessageExportFilter

$_type
string
Default: "SendTimestampMessageExportFilter"
Value: "SendTimestampMessageExportFilter"
field
string (EMessageExportFilterField)
enum-descriptions: ["SEND_TIMESTAMP: Filter by the 'sendTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "SendTimestampMessageExportFilter",
  • "field": "SEND_TIMESTAMP",
  • "operator": {
    }
}

MessageExportOrderBy

$_type
string
Default: "MessageExportOrderBy"
Value: "MessageExportOrderBy"
field
string (EMessageExportOrderByField)
Enum: "ID" "CONVERSATION_ID" "SEND_TIMESTAMP" "SERVER_TIMESTAMP" "SENDER_PERSON_ID" "TYPE" "TEXT"
enum-descriptions: ["ID: Sort by the 'id' attribute","CONVERSATION_ID: Sort by the 'conversationId' attribute","SEND_TIMESTAMP: Sort by the 'sendTimestamp' attribute","SERVER_TIMESTAMP: Sort by the 'serverTimestamp' attribute","SENDER_PERSON_ID: Sort by the 'senderPersonId' attribute","TYPE: Sort by the 'type' attribute","TEXT: Sort by the 'text' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "MessageExportOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

MessageExportQuery

$_type
string
Default: "MessageExportQuery"
Value: "MessageExportQuery"
Array of any (MessageExportFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (MessageExportOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "MessageExportQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

MessageExportResult

$_type
string
Default: "MessageExportResult"
Value: "MessageExportResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (ConversationHistoryMessageData) [ items ]

The returned list of entities

{
  • "$_type": "MessageExportResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

MessageHeader

$_type
string
Default: "MessageHeader"
Value: "MessageHeader"
imageUrl
string

URL of the image displayed at the top of the card.

imageAltText
string

Alt text for the image.

title
string

Title displayed bold below the image.

Max length is 64 characters.

body
string

Body text which may optionally contain markdown.

Max length is 256 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

{
  • "$_type": "MessageHeader",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT"
}

MessageIdCannedResponseUsageSearchFilter

$_type
string
Default: "MessageIdCannedResponseUsageSearchFilter"
Value: "MessageIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "MessageIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

MessageInterceptorData

$_type
string
Default: "ExternalMessageInterceptorData"
Value: "ExternalMessageInterceptorData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

messageFilter
string (EMessageInterceptorMessageFilter)
Enum: "AGENT" "VISITOR" "ALL"
enum-descriptions: ["AGENT","VISITOR","ALL"]
timeoutBehavior
string (EMessageInterceptorTimeoutBehavior)
Enum: "REJECT" "CONTINUE"
enum-descriptions: ["REJECT: Reject the message when a timeout occurs","CONTINUE: Proceed with the message when a timeout occurs"]

What should happen with a message when a timeout occurs during interception.
If omitted, the value REJECT is used.

type
string (EMessageInterceptorType)
enum-descriptions: ["EXTERNAL","INTERNAL"]
webhookStatus
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

webhookEndpoint
string

The URL of the webhook registration endpoint. Requests for webhook events are sent to this URL. Maximum length of 4000 characters.

The following event is sent to the endpoint:

  • TypedEvent.MESSAGE_INTERCEPTOR_NEW_MESSAGE: On each message in the conversation.

webhookApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

webhookSecret
string

Optional secret sent with each webhook event

Maximum length of 4000 characters.

Example
{
  • "$_type": "ExternalMessageInterceptorData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "messageFilter": "AGENT",
  • "timeoutBehavior": "REJECT",
  • "type": "EXTERNAL",
  • "webhookStatus": "ACTIVE",
  • "webhookEndpoint": "string",
  • "webhookApiVersion": "V1",
  • "webhookSecret": "string"
}

MessageInterceptorOrderBy

$_type
string
Default: "MessageInterceptorOrderBy"
Value: "MessageInterceptorOrderBy"
field
string (EMessageInterceptorOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "MessageInterceptorOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

MessageInterceptorOutboundApproveResponse

$_type
string
Default: "MessageInterceptorOutboundApproveResponse"
Value: "MessageInterceptorOutboundApproveResponse"
type
string (EMessageInterceptorOutboundResponseType)
Enum: "APPROVE" "REJECT"
enum-descriptions: ["APPROVE","REJECT"]
{
  • "$_type": "MessageInterceptorOutboundApproveResponse",
  • "type": "APPROVE"
}

MessageInterceptorOutboundRejectResponse

$_type
string
Default: "MessageInterceptorOutboundRejectResponse"
Value: "MessageInterceptorOutboundRejectResponse"
type
string (EMessageInterceptorOutboundResponseType)
Enum: "APPROVE" "REJECT"
enum-descriptions: ["APPROVE","REJECT"]
reason
string

Mandatory field. Holds the message displayed to the sender of the rejected message

severity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

{
  • "$_type": "MessageInterceptorOutboundRejectResponse",
  • "type": "APPROVE",
  • "reason": "string",
  • "severity": "HIGH"
}

MessageInterceptorOutboundResponse

$_type
string
Default: "MessageInterceptorOutboundApproveResponse"
Value: "MessageInterceptorOutboundApproveResponse"
type
string (EMessageInterceptorOutboundResponseType)
enum-descriptions: ["APPROVE","REJECT"]
Example
{
  • "$_type": "MessageInterceptorOutboundApproveResponse",
  • "type": "APPROVE"
}

MessageInterceptorQuery

$_type
string
Default: "MessageInterceptorQuery"
Value: "MessageInterceptorQuery"
Array of any (MessageInterceptorSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (MessageInterceptorOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "MessageInterceptorQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

MessageInterceptorResult

$_type
string
Default: "MessageInterceptorResult"
Value: "MessageInterceptorResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of any (MessageInterceptorData) [ items ]

The returned list of entities

{
  • "$_type": "MessageInterceptorResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

MessageInterceptorSearchFilter

$_type
string
Default: "CreationTimestampMessageInterceptorSearchFilter"
Value: "CreationTimestampMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampMessageInterceptorSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

MessageRejectedEvent

$_type
string
Default: "MessageRejectedEvent"
Value: "MessageRejectedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

any (MessageData)

Base class for all conversation messages

severity
string (ESentRejectionSeverity)
Enum: "HIGH" "MEDIUM" "LOW"
enum-descriptions: ["HIGH: The message was rejected with high severity","MEDIUM: The message was rejected with medium severity","LOW: The message was rejected with low severity"]

The severity of the rejection for messages rejected by a message interceptor. This affects how the rejected message is displayed to different participants.

reason
string

The reason the message was rejected.

Should be localized in the the language of the conversation the message belongs to.

{
  • "$_type": "MessageRejectedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "message": {
    },
  • "severity": "HIGH",
  • "reason": "string"
}

MissedCallPushNotificationEvent

$_type
string
Default: "MissedCallPushNotificationEvent"
Value: "MissedCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

callType
string (ECallType)
Enum: "AUDIO" "VIDEO"
enum-descriptions: ["AUDIO: The call was started as voice call","VIDEO: The call was started as video call"]

Type of the call

callStartTimestamp
integer <int64>

Timestamp when the call started

callerName
string

Name of the person calling

callerPersonId
string

Person ID of the person calling

callEndReason
string (ECallParticipationEndReason)
Enum: "MISSED_BECAUSE_TIMEOUT" "MISSED_BECAUSE_TERMINATED" "MISSED_BECAUSE_UNAVAILABLE" "TERMINATED_BY_PARTICIPANT" "TERMINATED_BY_SYSTEM_ABORT"
enum-descriptions: ["MISSED_BECAUSE_TIMEOUT: The participation was ended because of a timeout on the participant's side.","MISSED_BECAUSE_TERMINATED: The participation ended because the initiator terminated the call before the other participant answered it","MISSED_BECAUSE_UNAVAILABLE: The participation ended because nobody was available to answer the call","TERMINATED_BY_PARTICIPANT: The participation ended normally","TERMINATED_BY_SYSTEM_ABORT: The participation ended because the system aborted the call"]

Determines the reason why the participation on a call ended.

{
  • "$_type": "MissedCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE",
  • "callType": "AUDIO",
  • "callStartTimestamp": 0,
  • "callerName": "string",
  • "callerPersonId": "string",
  • "callEndReason": "MISSED_BECAUSE_TIMEOUT"
}

ModificationTimestampAccountSearchFilter

$_type
string
Default: "ModificationTimestampAccountSearchFilter"
Value: "ModificationTimestampAccountSearchFilter"
field
string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampAccountSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampApiKeySearchFilter

$_type
string
Default: "ModificationTimestampApiKeySearchFilter"
Value: "ModificationTimestampApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampCannedResponseSearchFilter

$_type
string
Default: "ModificationTimestampCannedResponseSearchFilter"
Value: "ModificationTimestampCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

ModificationTimestampConversationTemplateSearchFilter

$_type
string
Default: "ModificationTimestampConversationTemplateSearchFilter"
Value: "ModificationTimestampConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "ModificationTimestampCustomExternalMessengerChannelSearchFilter"
Value: "ModificationTimestampCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampDeputyRelationshipSearchFilter

$_type
string
Default: "ModificationTimestampDeputyRelationshipSearchFilter"
Value: "ModificationTimestampDeputyRelationshipSearchFilter"
field
string (EDeputyRelationshipSearchFilterField)
Enum: "AGENT_USER_ID" "DEPUTY_TYPE" "DEPUTY_ID" "ESCALATION_LEVEL" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["AGENT_USER_ID: Filter by the 'agentUserId' attribute","DEPUTY_TYPE: Filter by the 'deputyType' attribute","DEPUTY_ID: Filter by the 'deputyId' attribute","ESCALATION_LEVEL","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampDeputyRelationshipSearchFilter",
  • "field": "AGENT_USER_ID",
  • "operator": {
    }
}

ModificationTimestampDialogBotSearchFilter

$_type
string
Default: "ModificationTimestampDialogBotSearchFilter"
Value: "ModificationTimestampDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampDomainSearchFilter

$_type
string
Default: "ModificationTimestampDomainSearchFilter"
Value: "ModificationTimestampDomainSearchFilter"
field
string (EDomainSearchFilterField)
Enum: "DOMAIN_NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["DOMAIN_NAME: Filter by the 'domainName' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampDomainSearchFilter",
  • "field": "DOMAIN_NAME",
  • "operator": {
    }
}

ModificationTimestampExternalMessengerChannelSearchFilter

$_type
string
Default: "ModificationTimestampExternalMessengerChannelSearchFilter"
Value: "ModificationTimestampExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampExternalMessengerContactSearchFilter

$_type
string
Default: "ModificationTimestampExternalMessengerContactSearchFilter"
Value: "ModificationTimestampExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

ModificationTimestampFileUploadInterceptorSearchFilter

$_type
string
Default: "ModificationTimestampFileUploadInterceptorSearchFilter"
Value: "ModificationTimestampFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampFileUploadInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampMessageInterceptorSearchFilter

$_type
string
Default: "ModificationTimestampMessageInterceptorSearchFilter"
Value: "ModificationTimestampMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampMessageInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampNamedAreaSearchFilter

$_type
string
Default: "ModificationTimestampNamedAreaSearchFilter"
Value: "ModificationTimestampNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "ModificationTimestampSmsExternalMessengerChannelSearchFilter"
Value: "ModificationTimestampSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampSuggestionSourceSearchFilter

$_type
string
Default: "ModificationTimestampSuggestionSourceSearchFilter"
Value: "ModificationTimestampSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampSuggestionSourceSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampTeamSearchFilter

$_type
string
Default: "ModificationTimestampTeamSearchFilter"
Value: "ModificationTimestampTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ModificationTimestampUserSearchFilter

$_type
string
Default: "ModificationTimestampUserSearchFilter"
Value: "ModificationTimestampUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

ModificationTimestampWebhookRegistrationSearchFilter

$_type
string
Default: "ModificationTimestampWebhookRegistrationSearchFilter"
Value: "ModificationTimestampWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "ModificationTimestampWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

MultichoiceQuestionMessageData

$_type
string
Default: "MultichoiceQuestionMessageData"
Value: "MultichoiceQuestionMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

{
  • "$_type": "MultichoiceQuestionMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING"
}

MultichoiceQuestionOption

$_type
string
Default: "MultichoiceQuestionOption"
Value: "MultichoiceQuestionOption"
label
string

Visual representation of the option

value
string

Value of the option, which is used in a ReplyMessageData

primary
boolean

Defines if the option is a primary or only a secondary choice.

{
  • "$_type": "MultichoiceQuestionOption",
  • "label": "string",
  • "value": "string",
  • "primary": true
}

MultichoiceQuestionPostMessageData

$_type
string
Default: "MultichoiceQuestionPostMessageData"
Value: "MultichoiceQuestionPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Question message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MultichoiceQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyPostMessageData

{
  • "$_type": "MultichoiceQuestionPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ]
}

NameAccountSearchFilter

$_type
string
Default: "NameAccountSearchFilter"
Value: "NameAccountSearchFilter"
field
string (EAccountSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameAccountSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameApiKeySearchFilter

$_type
string
Default: "NameApiKeySearchFilter"
Value: "NameApiKeySearchFilter"
field
string (EApiKeySearchFilterField)
Enum: "NAME" "DESCRIPTION" "API_KEY" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","API_KEY: Filter by the 'apiKey' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameApiKeySearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameConversationTemplateSearchFilter

$_type
string
Default: "NameConversationTemplateSearchFilter"
Value: "NameConversationTemplateSearchFilter"
field
string (EConversationTemplateSearchFilterField)
Enum: "NAME" "DESCRIPTION" "DEFAULT_TEMPLATE" "INITIAL_ENGAGEMENT_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","DEFAULT_TEMPLATE: Filter by the 'defaultTemplate' attribute","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameConversationTemplateSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameCustomExternalMessengerChannelSearchFilter

$_type
string
Default: "NameCustomExternalMessengerChannelSearchFilter"
Value: "NameCustomExternalMessengerChannelSearchFilter"
field
string (ECustomExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "CONTACT_IDENTIFIER_FIELD_NAME" "CONTACT_IDENTIFIER_FIELD_TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CONTACT_IDENTIFIER_FIELD_NAME: Filter by the 'contactIdentifierFieldName' attribute","CONTACT_IDENTIFIER_FIELD_TYPE: Filter by the 'contactIdentifierFieldType' attribute"]
any (StringOperator)
{
  • "$_type": "NameCustomExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameDialogBotSearchFilter

$_type
string
Default: "NameDialogBotSearchFilter"
Value: "NameDialogBotSearchFilter"
field
string (EDialogBotSearchFilterField)
Enum: "NAME" "BOT_PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","BOT_PERSON_ID: Filter by the 'botPersonId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameDialogBotSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameExternalMessengerChannelSearchFilter

$_type
string
Default: "NameExternalMessengerChannelSearchFilter"
Value: "NameExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (StringOperator)
{
  • "$_type": "NameExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameExternalMessengerContactSearchFilter

$_type
string
Default: "NameExternalMessengerContactSearchFilter"
Value: "NameExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

NameFileUploadInterceptorSearchFilter

$_type
string
Default: "NameFileUploadInterceptorSearchFilter"
Value: "NameFileUploadInterceptorSearchFilter"
field
string (EFileUploadInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (StringOperator)
{
  • "$_type": "NameFileUploadInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameMessageInterceptorSearchFilter

$_type
string
Default: "NameMessageInterceptorSearchFilter"
Value: "NameMessageInterceptorSearchFilter"
field
string (EMessageInterceptorSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameMessageInterceptorSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameNamedAreaSearchFilter

$_type
string
Default: "NameNamedAreaSearchFilter"
Value: "NameNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NamePersonLabelSearchFilter

$_type
string
Default: "NamePersonLabelSearchFilter"
Value: "NamePersonLabelSearchFilter"
field
string (EPersonLabelSearchFilterField)
Value: "NAME"
enum-descriptions: ["NAME: Filter by the 'name' attribute"]
any (StringOperator)
{
  • "$_type": "NamePersonLabelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NamePersonVisibilityRuleSearchFilter

$_type
string
Default: "NamePersonVisibilityRuleSearchFilter"
Value: "NamePersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (StringOperator)
{
  • "$_type": "NamePersonVisibilityRuleSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "NameSmsExternalMessengerChannelSearchFilter"
Value: "NameSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
{
  • "$_type": "NameSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameSuggestionSourceSearchFilter

$_type
string
Default: "NameSuggestionSourceSearchFilter"
Value: "NameSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (StringOperator)
{
  • "$_type": "NameSuggestionSourceSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameTeamSearchFilter

$_type
string
Default: "NameTeamSearchFilter"
Value: "NameTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NameWebhookRegistrationSearchFilter

$_type
string
Default: "NameWebhookRegistrationSearchFilter"
Value: "NameWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
Enum: "NAME" "DESCRIPTION" "ENDPOINT" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "NameWebhookRegistrationSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

NamedArea

$_type
string
Default: "NamedArea"
Value: "NamedArea"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the named area. Maximum of 250 characters. Can not be omitted.

description
string

Description of the named area. Maximum of 500 characters. Can be omitted.

type
string (ENamedAreaType)
Enum: "META_TAG" "DOMAIN"
enum-descriptions: ["META_TAG: A meta tag","DOMAIN: a (sub)domain"]

Type of a named area

siteId
string

Meta tag name if the type is META_TAG or domain name if the type is DOMAIN. If the type is META_TAG, it can be omitted during creation and a random ID will generated for it. Modification of this attribute is not allowed. Maximum of 250 characters.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: text
type: Map

The entity's text properties. Only contains values when the 'expand' query parameter is used with the value 'text'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "NamedArea",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "description": "string",
  • "type": "META_TAG",
  • "siteId": "string",
  • "translations": {
    },
  • "configuration": {
    },
  • "text": {
    },
  • "metadata": {
    }
}

NamedAreaData

$_type
string
Default: "NamedAreaData"
Value: "NamedAreaData"
id
string

Unique id of the named area.

accountId
string

Account id to which a named area belongs to.

displayName
string

Display-Name of the named area

object

Localized Display-Name of the named area

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the named area: id that can be expanded.

{
  • "$_type": "NamedAreaData",
  • "id": "string",
  • "accountId": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string"
}

NamedAreaList

$_type
string
Default: "NamedAreaList"
Value: "NamedAreaList"
Array of objects (NamedArea) [ items ]

The list of mapped entities

{
  • "$_type": "NamedAreaList",
  • "items": [
    ]
}

NamedAreaModificationEvent

$_type
string
Default: "NamedAreaModificationEvent"
Value: "NamedAreaModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (NamedArea)

Model of named areas. They can either be domains or meta tags

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "NamedAreaModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

NamedAreaOrderBy

$_type
string
Default: "NamedAreaOrderBy"
Value: "NamedAreaOrderBy"
field
string (ENamedAreaOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","SITE_ID: Sort by the 'siteId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "NamedAreaOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

NamedAreaQuery

$_type
string
Default: "NamedAreaQuery"
Value: "NamedAreaQuery"
Array of any (NamedAreaSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (NamedAreaOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "NamedAreaQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

NamedAreaResult

$_type
string
Default: "NamedAreaResult"
Value: "NamedAreaResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (NamedArea) [ items ]

The returned list of entities

{
  • "$_type": "NamedAreaResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

NamedAreaSearchFilter

$_type
string
Default: "CreationTimestampNamedAreaSearchFilter"
Value: "CreationTimestampNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampNamedAreaSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

NamedAreaTranslation

$_type
string
Default: "NamedAreaTranslation"
Value: "NamedAreaTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "NamedAreaTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

NewMessagePushNotificationEvent

$_type
string
Default: "NewMessagePushNotificationEvent"
Value: "NewMessagePushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

messageId
string

Id of the message

messageText
string

Text of the message

messageSendTimestamp
integer <int64>

Timestamp when the message was sent

messageServerTimestamp
integer <int64>

Timestamp when the message was received by the server.

senderName
string

Name of the sender, can be null if the message was sent by the system.

senderPersonId
string

Person id of the sender, can be null if the message was sent by the system.

notificationCount
integer <int32>

Number of notifications (i.e. unread messages) in this conversation

recipientNotificationCount
integer <int32>

Number of notifications (i.e. unread messages) the recipient person has in total

{
  • "$_type": "NewMessagePushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "messageId": "string",
  • "messageText": "string",
  • "messageSendTimestamp": 0,
  • "messageServerTimestamp": 0,
  • "senderName": "string",
  • "senderPersonId": "string",
  • "notificationCount": 0,
  • "recipientNotificationCount": 0
}

NicknamePersonSearchFilter

$_type
string
Default: "NicknamePersonSearchFilter"
Value: "NicknamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "NicknamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

NicknamePersonTypedSearchFilter

$_type
string
Default: "NicknamePersonTypedSearchFilter"
Value: "NicknamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "NicknamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

NotEqualsAuditChangeInteractionTypeOperator

$_type
string
Default: "NotEqualsAuditChangeInteractionTypeOperator"
Value: "NotEqualsAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditInteractionType)
Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
enum-descriptions: ["API","RPC","JOB","ACTION","INTERNAL","SYNCJOB","GC"]
{
  • "$_type": "NotEqualsAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "value": "API"
}

NotEqualsAuditChangeTypeOperator

$_type
string
Default: "NotEqualsAuditChangeTypeOperator"
Value: "NotEqualsAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
{
  • "$_type": "NotEqualsAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "value": "CREATE"
}

NotEqualsAuthorizationRoleOperator

$_type
string
Default: "NotEqualsAuthorizationRoleOperator"
Value: "NotEqualsAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

{
  • "$_type": "NotEqualsAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "value": "SUPER_ADMIN"
}

NotEqualsAwaitedPersonTypeOperator

$_type
string
Default: "NotEqualsAwaitedPersonTypeOperator"
Value: "NotEqualsAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EAwaitedPersonType)
Enum: "NONE" "VISITOR" "AGENT"
enum-descriptions: ["NONE","VISITOR","AGENT"]

Indicates which type of person the conversation is waiting for

{
  • "$_type": "NotEqualsAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

NotEqualsBooleanOperator

$_type
string
Default: "NotEqualsBooleanOperator"
Value: "NotEqualsBooleanOperator"
type
string (EBooleanOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IS_NULL" "IS_NOT_NULL"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null"]
value
boolean
{
  • "$_type": "NotEqualsBooleanOperator",
  • "type": "EQUALS",
  • "value": true
}

NotEqualsCallServiceProviderOperator

$_type
string
Default: "NotEqualsCallServiceProviderOperator"
Value: "NotEqualsCallServiceProviderOperator"
type
string (ECallServiceProviderOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (ECallServiceProvider)
Enum: "ACS" "LIVEKIT" "OPENTOK"
enum-descriptions: ["ACS: The call service was provided by ACS","LIVEKIT: The call service was provided by LiveKit","OPENTOK: The call service was provided by Vonage"]
{
  • "$_type": "NotEqualsCallServiceProviderOperator",
  • "type": "EQUALS",
  • "value": "ACS"
}

NotEqualsContactIdentifierFieldTypeOperator

$_type
string
Default: "NotEqualsContactIdentifierFieldTypeOperator"
Value: "NotEqualsContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EContactIdentifierFieldType)
Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
enum-descriptions: ["EMAIL: The contact identifier is an email address","PHONE_NUMBER: The contact identifier is a phone number","NUMBER: The contact identifier is a number","OTHER: The contact identifier is something else and will be handled as a plain string"]

The type of the contact identifier field. Used to improve the validation of user input when creating contacts.

{
  • "$_type": "NotEqualsContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "value": "EMAIL"
}

NotEqualsConversationEndReasonOperator

$_type
string
Default: "NotEqualsConversationEndReasonOperator"
Value: "NotEqualsConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationEndReason)
Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
enum-descriptions: ["ENDED_BY_PARTICIPANT","MANDATORY_PARTICIPANT_GONE","REQUEST_DECLINED","REQUEST_NOT_ANSWERED","EXTERNAL_CHANNEL_CLOSED","SOLVED_BY_BOT","CANCELED","CALL_ENDED","NO_AGENT_AVAILABLE","OTHER"]

Closing reason of a conversation

{
  • "$_type": "NotEqualsConversationEndReasonOperator",
  • "type": "EQUALS",
  • "value": "ENDED_BY_PARTICIPANT"
}

NotEqualsConversationRecipientTypeOperator

$_type
string
Default: "NotEqualsConversationRecipientTypeOperator"
Value: "NotEqualsConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

{
  • "$_type": "NotEqualsConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

NotEqualsConversationStateOperator

$_type
string
Default: "NotEqualsConversationStateOperator"
Value: "NotEqualsConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EConversationState)
Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Initial state of a conversation","ONBOARDING: Depending of the engagement type of the conversation, the conversation stays in the onboarding state as long as the person in the center of the conversation is doing his onboarding","REBOARDING: When a message is send to an unassigned conversation, the conversation first is put into the reboarding state as long as the person in the center of the conversation is doing the reboarding.","QUEUED: Depending of the engagement type of the conversation, the conversation is put in the queued state when it is inside the queue.","ACTIVE: Conversation is active","UNASSIGNED: After there is no assignee of a conversation anymore, the conversation goes to unassigned state until a message from a visitor is written to start reboarding again, or until the conversation is requeued.","OFFBOARDING: Conversation is being ended","ENDED: Conversation is ended"]

Life cycle state of the conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING
  • ONBOARDING --> QUEUED, ACTIVE, OFFBOARDING, UNASSIGNED
  • REBOARDING --> QUEUED, UNASSIGNED, OFFBOARDING
  • QUEUED --> ACTIVE, OFFBOARDING, UNASSIGNED
  • ACTIVE --> UNASSIGNED, OFFBOARDING, QUEUED
  • UNASSIGNED --> REBOARDING, OFFBOARDING, QUEUED, ACTIVE
  • OFFBOARDING --> ENDED
  • ENDED --> none

{
  • "$_type": "NotEqualsConversationStateOperator",
  • "type": "EQUALS",
  • "value": "CREATED"
}

NotEqualsConversationVisibilityOperator

$_type
string
Default: "NotEqualsConversationVisibilityOperator"
Value: "NotEqualsConversationVisibilityOperator"
type
string (EConversationVisibilityOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EConversationVisibility)
Enum: "PRIVATE" "RULE_BASED"
enum-descriptions: ["PRIVATE: Conversation can only be seen by participants","RULE_BASED: Conversation can be seen by participants as well as non-participating agents who can see the conversation's context person based on their visibility rules"]

The visibility of a conversation. The visibility used at creation time determines who is allowed to see the conversation.

{
  • "$_type": "NotEqualsConversationVisibilityOperator",
  • "type": "EQUALS",
  • "value": "PRIVATE"
}

NotEqualsDeputyDelegationEscalationLevelOperator

$_type
string
Default: "NotEqualsDeputyDelegationEscalationLevelOperator"
Value: "NotEqualsDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyDelegationEscalationLevel)
Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
enum-descriptions: ["LEVEL_1","LEVEL_2","LEVEL_3"]

The escalation levels for a deputy delegation

{
  • "$_type": "NotEqualsDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "value": "LEVEL_1"
}

NotEqualsDeputyTypeOperator

$_type
string
Default: "NotEqualsDeputyTypeOperator"
Value: "NotEqualsDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EDeputyType)
Enum: "AGENT" "TEAM"
enum-descriptions: ["AGENT","TEAM"]
{
  • "$_type": "NotEqualsDeputyTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

NotEqualsExternalMessengerChannelTypeOperator

$_type
string
Default: "NotEqualsExternalMessengerChannelTypeOperator"
Value: "NotEqualsExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

{
  • "$_type": "NotEqualsExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "value": "CUSTOM"
}

NotEqualsIdOperator

$_type
string
Default: "NotEqualsIdOperator"
Value: "NotEqualsIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
{
  • "$_type": "NotEqualsIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

NotEqualsImpersonationTypeOperator

$_type
string
Default: "NotEqualsImpersonationTypeOperator"
Value: "NotEqualsImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

{
  • "$_type": "NotEqualsImpersonationTypeOperator",
  • "type": "EQUALS",
  • "value": "NONE"
}

NotEqualsInitialEngagementTypeOperator

$_type
string
Default: "NotEqualsInitialEngagementTypeOperator"
Value: "NotEqualsInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

{
  • "$_type": "NotEqualsInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "value": "CHAT_REQUEST"
}

NotEqualsInvitationCreatorTypeOperator

$_type
string
Default: "NotEqualsInvitationCreatorTypeOperator"
Value: "NotEqualsInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

{
  • "$_type": "NotEqualsInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "value": "WEB_API"
}

NotEqualsInvitationStateOperator

$_type
string
Default: "NotEqualsInvitationStateOperator"
Value: "NotEqualsInvitationStateOperator"
type
string (EInvitationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EInvitationState)
Enum: "OPEN" "REDEEMED" "REVOKED" "EXPIRED"
enum-descriptions: ["OPEN","REDEEMED","REVOKED","EXPIRED"]

Reuses names of values from EInvitationStatus and adds EXPIRED value.

{
  • "$_type": "NotEqualsInvitationStateOperator",
  • "type": "EQUALS",
  • "value": "OPEN"
}

NotEqualsInvitationTargetTypeOperator

$_type
string
Default: "NotEqualsInvitationTargetTypeOperator"
Value: "NotEqualsInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationTargetType)
Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["ANONYMOUS","VISITOR","AGENT","TEAM","NAMED_AREA","ACCOUNT"]
{
  • "$_type": "NotEqualsInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "value": "ANONYMOUS"
}

NotEqualsInvitationTypeOperator

$_type
string
Default: "NotEqualsInvitationTypeOperator"
Value: "NotEqualsInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EInvitationType)
Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
enum-descriptions: ["ASSIGNMENT_REQUEST: Conversations that don't have any agent participants but require an assigned agent, for example new inbound chats, audio/video calls, or conversations that are pushed back to the queue.","AGENT_FORWARDING: Conversation forwarding to an other agent, directly or via a team. <ul> <li>The forwarding agent will leave the conversation once it has been accepted.</li> <li>The assignee will change to the forwarded agent once it has been accepted.</li> </ul>","AGENT_INVITATION: Invites an other agent into the conversation, directly or via a team. <ul> <li>The inviting agent stays in the conversation.</li> <li>The assignee will NOT change when the invited agent accepts the invitation.</li> </ul>","VISITOR_INVITATION: Anonymous Visitor invitation <ul> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the invitation has been redeemed it can not be reused by other Visitors.</li> </ul>","PIN_CONVERSATION: Universal / Embedded / Mobile PIN Session. <ul> <li>The conversation doesn't really start until the invitation is redeemed.</li> <li>Anyone with the invitations ticket (and the accounts API key) may enter the conversation as a Visitor.</li> <li>Once the ticket has been redeemed it can not be reused by other Visitors.</li> </ul>"]
{
  • "$_type": "NotEqualsInvitationTypeOperator",
  • "type": "EQUALS",
  • "value": "ASSIGNMENT_REQUEST"
}

NotEqualsPauseNotificationsModeOperator

$_type
string
Default: "NotEqualsPauseNotificationsModeOperator"
Value: "NotEqualsPauseNotificationsModeOperator"
type
string (EPauseNotificationsModeOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

{
  • "$_type": "NotEqualsPauseNotificationsModeOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

NotEqualsPauseNotificationsStateOperator

$_type
string
Default: "NotEqualsPauseNotificationsStateOperator"
Value: "NotEqualsPauseNotificationsStateOperator"
type
string (EPauseNotificationsStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

{
  • "$_type": "NotEqualsPauseNotificationsStateOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

NotEqualsPersonSourceOperator

$_type
string
Default: "NotEqualsPersonSourceOperator"
Value: "NotEqualsPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

{
  • "$_type": "NotEqualsPersonSourceOperator",
  • "type": "EQUALS",
  • "value": "USER_DB"
}

NotEqualsPersonTypeOperator

$_type
string
Default: "NotEqualsPersonTypeOperator"
Value: "NotEqualsPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

{
  • "$_type": "NotEqualsPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

NotEqualsPropertyOwnerTypeOperator

$_type
string
Default: "NotEqualsPropertyOwnerTypeOperator"
Value: "NotEqualsPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
value
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

{
  • "$_type": "NotEqualsPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "value": "GLOBAL"
}

NotEqualsStringOperator

$_type
string
Default: "NotEqualsStringOperator"
Value: "NotEqualsStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string
{
  • "$_type": "NotEqualsStringOperator",
  • "type": "EQUALS",
  • "value": "string"
}

NotEqualsTimestampOperator

$_type
string
Default: "NotEqualsTimestampOperator"
Value: "NotEqualsTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
{
  • "$_type": "NotEqualsTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

NotEqualsVisibilityRuleLabelSelectionOperator

$_type
string
Default: "NotEqualsVisibilityRuleLabelSelectionOperator"
Value: "NotEqualsVisibilityRuleLabelSelectionOperator"
type
string (EVisibilityRuleLabelSelectionOperatorType)
Enum: "EQUALS" "NOT_EQUALS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
{
  • "$_type": "NotEqualsVisibilityRuleLabelSelectionOperator",
  • "type": "EQUALS",
  • "value": "ALL"
}

NotInAuditChangeInteractionTypeOperator

$_type
string
Default: "NotInAuditChangeInteractionTypeOperator"
Value: "NotInAuditChangeInteractionTypeOperator"
type
string (EAuditChangeInteractionTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditInteractionType)
Items Enum: "API" "RPC" "JOB" "ACTION" "INTERNAL" "SYNCJOB" "GC"
{
  • "$_type": "NotInAuditChangeInteractionTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInAuditChangeTypeOperator

$_type
string
Default: "NotInAuditChangeTypeOperator"
Value: "NotInAuditChangeTypeOperator"
type
string (EAuditChangeTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (AuditChangeType)
Items Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
{
  • "$_type": "NotInAuditChangeTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInAuthorizationRoleOperator

$_type
string
Default: "NotInAuthorizationRoleOperator"
Value: "NotInAuthorizationRoleOperator"
type
string (EAuthorizationRoleOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAuthorizationRole)
Items Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
{
  • "$_type": "NotInAuthorizationRoleOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInAwaitedPersonTypeOperator

$_type
string
Default: "NotInAwaitedPersonTypeOperator"
Value: "NotInAwaitedPersonTypeOperator"
type
string (EAwaitedPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of those provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EAwaitedPersonType)
Items Enum: "NONE" "VISITOR" "AGENT"
{
  • "$_type": "NotInAwaitedPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInContactIdentifierFieldTypeOperator

$_type
string
Default: "NotInContactIdentifierFieldTypeOperator"
Value: "NotInContactIdentifierFieldTypeOperator"
type
string (EContactIdentifierFieldTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EContactIdentifierFieldType)
Items Enum: "EMAIL" "PHONE_NUMBER" "NUMBER" "OTHER"
{
  • "$_type": "NotInContactIdentifierFieldTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInConversationEndReasonOperator

$_type
string
Default: "NotInConversationEndReasonOperator"
Value: "NotInConversationEndReasonOperator"
type
string (EConversationEndReasonOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationEndReason)
Items Enum: "ENDED_BY_PARTICIPANT" "MANDATORY_PARTICIPANT_GONE" "REQUEST_DECLINED" "REQUEST_NOT_ANSWERED" "EXTERNAL_CHANNEL_CLOSED" "SOLVED_BY_BOT" "CANCELED" "CALL_ENDED" "NO_AGENT_AVAILABLE" "OTHER"
{
  • "$_type": "NotInConversationEndReasonOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInConversationRecipientTypeOperator

$_type
string
Default: "NotInConversationRecipientTypeOperator"
Value: "NotInConversationRecipientTypeOperator"
type
string (EConversationRecipientTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationRecipientType)
Items Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "NotInConversationRecipientTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInConversationStateOperator

$_type
string
Default: "NotInConversationStateOperator"
Value: "NotInConversationStateOperator"
type
string (EConversationStateOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EConversationState)
Items Enum: "CREATED" "ONBOARDING" "REBOARDING" "QUEUED" "ACTIVE" "UNASSIGNED" "OFFBOARDING" "ENDED"
{
  • "$_type": "NotInConversationStateOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInDeputyDelegationEscalationLevelOperator

$_type
string
Default: "NotInDeputyDelegationEscalationLevelOperator"
Value: "NotInDeputyDelegationEscalationLevelOperator"
type
string (EDeputyDelegationEscalationLevelOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyDelegationEscalationLevel)
Items Enum: "LEVEL_1" "LEVEL_2" "LEVEL_3"
{
  • "$_type": "NotInDeputyDelegationEscalationLevelOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInDeputyTypeOperator

$_type
string
Default: "NotInDeputyTypeOperator"
Value: "NotInDeputyTypeOperator"
type
string (EDeputyTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equals to the one provided in the operator","NOT_EQUALS: Check if the value not is equals to the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EDeputyType)
Items Enum: "AGENT" "TEAM"
{
  • "$_type": "NotInDeputyTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInExternalMessengerChannelTypeOperator

$_type
string
Default: "NotInExternalMessengerChannelTypeOperator"
Value: "NotInExternalMessengerChannelTypeOperator"
type
string (EExternalMessengerChannelTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EExternalMessengerChannelType)
Items Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
{
  • "$_type": "NotInExternalMessengerChannelTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInIdOperator

$_type
string
Default: "NotInIdOperator"
Value: "NotInIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

values
Array of strings
{
  • "$_type": "NotInIdOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInImpersonationTypeOperator

$_type
string
Default: "NotInImpersonationTypeOperator"
Value: "NotInImpersonationTypeOperator"
type
string (EImpersonationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EImpersonationType)
Items Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
{
  • "$_type": "NotInImpersonationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInitialEngagementTypeOperator

$_type
string
Default: "NotInInitialEngagementTypeOperator"
Value: "NotInInitialEngagementTypeOperator"
type
string (EInitialEngagementTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInitialEngagementType)
Items Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
{
  • "$_type": "NotInInitialEngagementTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInvitationCreatorTypeOperator

$_type
string
Default: "NotInInvitationCreatorTypeOperator"
Value: "NotInInvitationCreatorTypeOperator"
type
string (EInvitationCreatorTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationCreatorType)
Items Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
{
  • "$_type": "NotInInvitationCreatorTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInvitationTargetTypeOperator

$_type
string
Default: "NotInInvitationTargetTypeOperator"
Value: "NotInInvitationTargetTypeOperator"
type
string (EInvitationTargetTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationTargetType)
Items Enum: "ANONYMOUS" "VISITOR" "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
{
  • "$_type": "NotInInvitationTargetTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInInvitationTypeOperator

$_type
string
Default: "NotInInvitationTypeOperator"
Value: "NotInInvitationTypeOperator"
type
string (EInvitationTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EInvitationType)
Items Enum: "ASSIGNMENT_REQUEST" "AGENT_FORWARDING" "AGENT_INVITATION" "VISITOR_INVITATION" "PIN_CONVERSATION"
{
  • "$_type": "NotInInvitationTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInPersonSourceOperator

$_type
string
Default: "NotInPersonSourceOperator"
Value: "NotInPersonSourceOperator"
type
string (EPersonSourceOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonSource)
Items Enum: "USER_DB" "VIRTUAL"
{
  • "$_type": "NotInPersonSourceOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInPersonTypeOperator

$_type
string
Default: "NotInPersonTypeOperator"
Value: "NotInPersonTypeOperator"
type
string (EPersonTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
values
Array of strings (EPersonType)
Items Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
{
  • "$_type": "NotInPersonTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInPropertyOwnerTypeOperator

$_type
string
Default: "NotInPropertyOwnerTypeOperator"
Value: "NotInPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
values
Array of strings (EPropertyOwnerType)
Items Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
{
  • "$_type": "NotInPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInRangeTimestampOperator

$_type
string
Default: "NotInRangeTimestampOperator"
Value: "NotInRangeTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
minimum
integer <int64>
maximum
integer <int64>
{
  • "$_type": "NotInRangeTimestampOperator",
  • "type": "EQUALS",
  • "minimum": 0,
  • "maximum": 0
}

NotInStringOperator

$_type
string
Default: "NotInStringOperator"
Value: "NotInStringOperator"
type
string (EStringOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "CONTAINS"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
values
Array of strings
{
  • "$_type": "NotInStringOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotInTimestampOperator

$_type
string
Default: "NotInTimestampOperator"
Value: "NotInTimestampOperator"
type
string (ETimestampOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "GREATER_THAN" "GREATER_THAN_OR_NULL" "LOWER_THAN" "LOWER_THAN_OR_NULL" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "IN_RANGE" "NOT_IN_RANGE"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
values
Array of integers <int64> [ items <int64 > ]
{
  • "$_type": "NotInTimestampOperator",
  • "type": "EQUALS",
  • "values": [
    ]
}

NotificationCountData

$_type
string
Default: "NotificationCountData"
Value: "NotificationCountData"
personId
string

The ID of the person this notification count belongs to

totalNotificationCount
integer <int32>

The sum of all a person's notifications across all their conversations

{
  • "$_type": "NotificationCountData",
  • "personId": "string",
  • "totalNotificationCount": 0
}

OnlineStateAgentStateSearchFilter

$_type
string
Default: "OnlineStateAgentStateSearchFilter"
Value: "OnlineStateAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (OnlineStateOperator)
{
  • "$_type": "OnlineStateAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

OnlineStateOperator

$_type
string
Default: "EqualsOnlineStateOperator"
Value: "EqualsOnlineStateOperator"
type
string (EOnlineStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator"]
value
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

{
  • "$_type": "EqualsOnlineStateOperator",
  • "type": "EQUALS",
  • "value": "ONLINE"
}

OnlineStateVisitorStateSearchFilter

$_type
string
Default: "OnlineStateVisitorStateSearchFilter"
Value: "OnlineStateVisitorStateSearchFilter"
field
string (EVisitorStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
any (OnlineStateOperator)
{
  • "$_type": "OnlineStateVisitorStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

OrCompoundOperator

$_type
string
Default: "OrCompoundOperator"
Value: "OrCompoundOperator"
type
string (ECompoundOperatorType)
Enum: "AND" "OR"
enum-descriptions: ["AND: Links the child search filters with the logical AND operation","OR: Links the child search filters with the logical OR operation"]
{
  • "$_type": "OrCompoundOperator",
  • "type": "AND"
}

Order

string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
"ASCENDING"

OwnerIdAuditChangeSearchFilter

$_type
string
Default: "OwnerIdAuditChangeSearchFilter"
Value: "OwnerIdAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "OwnerIdAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

OwnerIdCannedResponseSearchFilter

$_type
string
Default: "OwnerIdCannedResponseSearchFilter"
Value: "OwnerIdCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "OwnerIdCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

OwnerTypeAuditChangeSearchFilter

$_type
string
Default: "OwnerTypeAuditChangeSearchFilter"
Value: "OwnerTypeAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (PropertyOwnerTypeOperator)
{
  • "$_type": "OwnerTypeAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

OwnerTypeCannedResponseSearchFilter

$_type
string
Default: "OwnerTypeCannedResponseSearchFilter"
Value: "OwnerTypeCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (PropertyOwnerTypeOperator)
{
  • "$_type": "OwnerTypeCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

ParentIdTeamSearchFilter

$_type
string
Default: "ParentIdTeamSearchFilter"
Value: "ParentIdTeamSearchFilter"
field
string (ETeamSearchFilterField)
Enum: "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ParentIdTeamSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

ParticipantData

$_type
string
Default: "ParticipantData"
Value: "ParticipantData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

personId
string

Id of the participant person

hidden
boolean

Indicates if the participant is hidden

conversationStarred
boolean

Indicates whether this conversation is starred for the participant or not

participationType
string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

{
  • "$_type": "ParticipantData",
  • "state": "CREATED",
  • "personId": "string",
  • "hidden": true,
  • "conversationStarred": true,
  • "participationType": "ASSIGNED_AGENT"
}

ParticipantExternalMessengerContactIdConversationHistorySearchFilter

$_type
string
Default: "ParticipantExternalMessengerContactIdConversationHistorySearchFilter"
Value: "ParticipantExternalMessengerContactIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantExternalMessengerContactIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ParticipantExternalMessengerContactIdConversationSearchFilter

$_type
string
Default: "ParticipantExternalMessengerContactIdConversationSearchFilter"
Value: "ParticipantExternalMessengerContactIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantExternalMessengerContactIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ParticipantHistoryData

$_type
string
Default: "ParticipantHistoryData"
Value: "ParticipantHistoryData"
state
string (EConversationParticipationState)
Enum: "CREATED" "ONBOARDING" "ACTIVE" "OFFBOARDING" "ENDED"
enum-descriptions: ["CREATED: Participant has been created","ONBOARDING: Participant is doing the onboarding to join the conversation","ACTIVE: Participant has joined the conversation and is an active member","OFFBOARDING: Participant is doing the offboarding to leave the conversation","ENDED: Participant is no longer present in the conversation"]

The state of a participation inside a conversation. Following transitions are possible:

  • CREATED --> ONBOARDING, OFFBOARDING, ACTIVE
  • ONBOARDING --> ACTIVE, OFFBOARDING
  • ACTIVE --> OFFBOARDING
  • OFFBOARDING --> ENDED
  • ENDED --> none

createdTimestamp
integer <int64>

Unix timestamp (ms) when the person participation was created (timestamp when the state was set to EConversationParticipationState.CREATED)

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person joined (timestamp when the state was set to EConversationParticipationState.ONBOARDING)

activationTimestamp
integer <int64>

Unix timestamp (ms) when the participation was activated, may be null (timestamp when the state was set to EConversationParticipationState.ACTIVE)

offboardingTimestamp
integer <int64>

Unix timestamp (ms) when the person started offboarding, may be null (timestamp when the state was set toEConversationParticipationState.OFFBOARDING)

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person left, may be null (timestamp when the state was set to EConversationParticipationState.ENDED)

leftReason
string (EConversationLeftReason)
Enum: "FORWARDED" "PARTICIPANT_LEFT" "REMOVED_AFTER_TIMEOUT" "ONBOARDING_DECLINED" "ONBOARDING_IDLE_TIMEOUT" "ONBOARDING_TIMEOUT" "USER_CHANGED" "KICKED" "CONVERSATION_UNASSIGNED" "CONVERSATION_REQUEUED" "PUBLIC_DIALIN_ENDED" "OTHER"
enum-descriptions: ["FORWARDED","PARTICIPANT_LEFT","REMOVED_AFTER_TIMEOUT","ONBOARDING_DECLINED","ONBOARDING_IDLE_TIMEOUT","ONBOARDING_TIMEOUT","USER_CHANGED","KICKED","CONVERSATION_UNASSIGNED","CONVERSATION_REQUEUED","PUBLIC_DIALIN_ENDED","OTHER"]

Participation left reason of a conversation

leftComment
string

The comment on why the participant left the conversation. If provided, this attribute is set when offboarding starts and is null if the participant is still part of the conversation.

conversationRating
number <float>

Participant's rating of the conversation (between 0 and 1)

hidden
boolean

Indicates if the participant is hidden in the current conversation.

conversationStarred
boolean

Indicates whether this conversation is starred for the participant or not

participationType
string (EConversationRealParticipationType)
Enum: "ASSIGNED_AGENT" "CONTEXT_PERSON" "SECONDARY_AGENT" "SECONDARY_VISITOR"
enum-descriptions: ["ASSIGNED_AGENT","CONTEXT_PERSON","SECONDARY_AGENT","SECONDARY_VISITOR"]

This enum contains all "real" participation types within a conversation:

  • EConversationParticipationType All types including non-human ones
  • ENonVisitorParticipationType All types excluding visitors
  • EConversationImpactingParticipationType All human participation types (No recorder)
  • EConversationRealParticipationType} Only the participation types that actually create a ConversationParticipation (No ghost or recorder)

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "ParticipantHistoryData",
  • "state": "CREATED",
  • "createdTimestamp": 0,
  • "joinedTimestamp": 0,
  • "activationTimestamp": 0,
  • "offboardingTimestamp": 0,
  • "leftTimestamp": 0,
  • "leftReason": "FORWARDED",
  • "leftComment": "string",
  • "conversationRating": 0,
  • "hidden": true,
  • "conversationStarred": true,
  • "participationType": "ASSIGNED_AGENT",
  • "person": {
    }
}

ParticipantPersonIdConversationHistorySearchFilter

$_type
string
Default: "ParticipantPersonIdConversationHistorySearchFilter"
Value: "ParticipantPersonIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantPersonIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ParticipantPersonIdConversationSearchFilter

$_type
string
Default: "ParticipantPersonIdConversationSearchFilter"
Value: "ParticipantPersonIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdListOperator)

Defines operators used for comparing lists of id fields.

{
  • "$_type": "ParticipantPersonIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

ParticipationActivatedEvent

$_type
string
Default: "ParticipationActivatedEvent"
Value: "ParticipationActivatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationActivatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationConversationRatedEvent

$_type
string
Default: "ParticipationConversationRatedEvent"
Value: "ParticipationConversationRatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationConversationRatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationCreatedEvent

$_type
string
Default: "ParticipationCreatedEvent"
Value: "ParticipationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationHiddenEvent

$_type
string
Default: "ParticipationHiddenEvent"
Value: "ParticipationHiddenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationHiddenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationLeftEvent

$_type
string
Default: "ParticipationLeftEvent"
Value: "ParticipationLeftEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationLeftEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationOffboardingEvent

$_type
string
Default: "ParticipationOffboardingEvent"
Value: "ParticipationOffboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationOffboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationOnboardingEvent

$_type
string
Default: "ParticipationOnboardingEvent"
Value: "ParticipationOnboardingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationOnboardingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationUnhiddenEvent

$_type
string
Default: "ParticipationUnhiddenEvent"
Value: "ParticipationUnhiddenEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationUnhiddenEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

ParticipationUpdatedEvent

$_type
string
Default: "ParticipationUpdatedEvent"
Value: "ParticipationUpdatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (ConversationParticipationData)

Data about a conversation participation

{
  • "$_type": "ParticipationUpdatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "participation": {
    }
}

PauseNotificationsEndTimestampAgentStateSearchFilter

$_type
string
Default: "PauseNotificationsEndTimestampAgentStateSearchFilter"
Value: "PauseNotificationsEndTimestampAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (TimestampOperator)
{
  • "$_type": "PauseNotificationsEndTimestampAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PauseNotificationsModeAgentStateSearchFilter

$_type
string
Default: "PauseNotificationsModeAgentStateSearchFilter"
Value: "PauseNotificationsModeAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (PauseNotificationsModeOperator)
{
  • "$_type": "PauseNotificationsModeAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PauseNotificationsModeOperator

$_type
string
Default: "EqualsPauseNotificationsModeOperator"
Value: "EqualsPauseNotificationsModeOperator"
type
string (EPauseNotificationsModeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

Example
{
  • "$_type": "EqualsPauseNotificationsModeOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

PauseNotificationsStateAgentStateSearchFilter

$_type
string
Default: "PauseNotificationsStateAgentStateSearchFilter"
Value: "PauseNotificationsStateAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (PauseNotificationsStateOperator)
{
  • "$_type": "PauseNotificationsStateAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PauseNotificationsStateOperator

$_type
string
Default: "EqualsPauseNotificationsStateOperator"
Value: "EqualsPauseNotificationsStateOperator"
type
string (EPauseNotificationsStateOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

Example
{
  • "$_type": "EqualsPauseNotificationsStateOperator",
  • "type": "EQUALS",
  • "value": "ON"
}

PersonCompoundSearchFilter

$_type
string
Default: "PersonCompoundSearchFilter"
Value: "PersonCompoundSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (CompoundOperator)
Array of any (PersonSearchFilter) [ items ]

List of filters to be linked with either AND or OR

{
  • "$_type": "PersonCompoundSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    },
  • "searchFilters": [
    ]
}

PersonData

$_type
string
Default: "PersonData"
Value: "PersonData"
id
string

Unique id of the person, when creating a person this property can be omitted as it will be generated by the server anyway.

accountId
string

Account id to which a Person belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

personSource
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

sourceId
string

Identifier of the person in its source (defined by personSource). For EPersonSource.USER_DB this is the userId, forEPersonSource.VIRTUAL the propagated user id. Maximum length of 250 characters. Mandatory for virtual persons.

sourceUrl
string

URL identifying the source of the person. Maximum length of 2000 characters. Only available for virtual persons in conversations that were created outside Unblu.

sourceData
string

Vendor specific data.

firstName
string

The first name of the person. Maximum length of 250 characters. Can be omitted.

lastName
string

the last name of the person. Maximum length of 250 characters. Can be omitted.

username
string

The username of the person. When firstName and lastName are unknown, it is recommended to use this value to change the displayName. Depending on the configuration, this is may also be the email of the corresponding user. Maximum length of 250 characters. Can be omitted.

nickname
string

A name that an anonymous person has given itself. Maximum length of 250 characters. Can be omitted.

displayName
string

Display name of the person. This is read only information, it will be set by the server anyway.

personType
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

email
string

The email of the person. Optional.

phone
string

The phone of the person. Optional.

teamId
string

Team id of the person. Optional.

Array of objects (PersonLabel) [ items ]

List of labels set for this person

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "PersonData",
  • "id": "string",
  • "accountId": "string",
  • "personSource": "USER_DB",
  • "sourceId": "string",
  • "sourceUrl": "string",
  • "sourceData": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "username": "string",
  • "nickname": "string",
  • "displayName": "string",
  • "personType": "AGENT",
  • "authorizationRole": "SUPER_ADMIN",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "labels": [
    ],
  • "avatar": "string",
  • "metadata": {
    }
}

PersonIdAgentStateSearchFilter

$_type
string
Default: "PersonIdAgentStateSearchFilter"
Value: "PersonIdAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PersonIdCannedResponseUsageSearchFilter

$_type
string
Default: "PersonIdCannedResponseUsageSearchFilter"
Value: "PersonIdCannedResponseUsageSearchFilter"
field
string (ECannedResponseUsageSearchFilterField)
Enum: "PERSON_ID" "CANNED_RESPONSE_ID" "MESSAGE_ID" "CONVERSATION_ID" "CREATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","CANNED_RESPONSE_ID: Filter by the 'cannedResponseId' attribute","MESSAGE_ID: Filter by the 'messageId' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdCannedResponseUsageSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PersonIdExternalMessengerContactSearchFilter

$_type
string
Default: "PersonIdExternalMessengerContactSearchFilter"
Value: "PersonIdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

PersonIdPersonPresenceSearchFilter

$_type
string
Default: "PersonIdPersonPresenceSearchFilter"
Value: "PersonIdPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
Enum: "JOINED_TIMESTAMP" "LEFT_TIMESTAMP" "PERSON_ID"
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

PersonIdVisitorStateSearchFilter

$_type
string
Default: "PersonIdVisitorStateSearchFilter"
Value: "PersonIdVisitorStateSearchFilter"
field
string (EVisitorStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "PersonIdVisitorStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

PersonLabel

$_type
string
Default: "PersonLabel"
Value: "PersonLabel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the person label. Maximum length of 250 characters. Mandatory.
If the label is a scoped label, the name consists of the scope name and the value of this particular label, separated by "::", for example "upsell potential::high".

description
string

Description of the person label. Maximum length of 500 characters. Can be omitted.

color
string

Color of the person label, specified in a format compatible with CSS. Maximum length of 50 characters. Mandatory.

settableOn
Array of strings (EPersonLabelTargetType)
Items Enum: "AGENT" "ANONYMOUS_VISITOR" "AUTHENTICATED_VISITOR" "BOT"

The person types the label may be set on

readableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can read the label on a person via API. If this is not set only admins are able to read this label.

settableByRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles that can set the label on a person. If this is not set only admins are able to set this label.

displayedToRoles
Array of strings (EPersonLabelManagementRole)
Items Enum: "SUPERVISOR" "AGENT" "AUTHENTICATED_VISITOR" "ANONYMOUS_VISITOR"

The roles for which the label is displayed to in the UIs. If this is not set only admins are able to see this label in the UI.

{
  • "$_type": "PersonLabel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "color": "string",
  • "settableOn": [
    ],
  • "readableByRoles": [
    ],
  • "settableByRoles": [
    ],
  • "displayedToRoles": [
    ]
}

PersonLabelList

$_type
string
Default: "PersonLabelList"
Value: "PersonLabelList"
Array of objects (PersonLabel) [ items ]

The list of mapped entities

{
  • "$_type": "PersonLabelList",
  • "items": [
    ]
}

PersonLabelModificationEvent

$_type
string
Default: "PersonLabelModificationEvent"
Value: "PersonLabelModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonLabel)

Model of a person label.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonLabelModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

PersonLabelNamePersonSearchFilter

$_type
string
Default: "PersonLabelNamePersonSearchFilter"
Value: "PersonLabelNamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
object (HavingPersonLabelNameOperator)
{
  • "$_type": "PersonLabelNamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PersonLabelNamePersonTypedSearchFilter

$_type
string
Default: "PersonLabelNamePersonTypedSearchFilter"
Value: "PersonLabelNamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
object (HavingPersonLabelNameOperator)
{
  • "$_type": "PersonLabelNamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

PersonLabelOrderBy

$_type
string
Default: "PersonLabelOrderBy"
Value: "PersonLabelOrderBy"
field
string (EPersonLabelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonLabelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonLabelQuery

$_type
string
Default: "PersonLabelQuery"
Value: "PersonLabelQuery"
Array of any (PersonLabelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonLabelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonLabelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonLabelResult

$_type
string
Default: "PersonLabelResult"
Value: "PersonLabelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonLabel) [ items ]

The returned list of entities

{
  • "$_type": "PersonLabelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonLabelSearchFilter

$_type
string
Default: "NamePersonLabelSearchFilter"
Value: "NamePersonLabelSearchFilter"
field
string (EPersonLabelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute"]
any (StringOperator)
{
  • "$_type": "NamePersonLabelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

PersonLabelsGetByScopeBody

scope
string

The scope to search for labels in

{
  • "scope": "string"
}

PersonModificationEvent

$_type
string
Default: "PersonModificationEvent"
Value: "PersonModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

PersonOrderBy

$_type
string
Default: "PersonOrderBy"
Value: "PersonOrderBy"
field
string (EPersonOrderByField)
Enum: "ID" "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","PERSON_SOURCE: Sort by the 'personSource' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","SOURCE_DATA: Sort by the 'sourceData' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","PERSON_TYPE: Sort by the 'personType' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonPresenceData

$_type
string
Default: "PersonPresenceData"
Value: "PersonPresenceData"
id
string

Unique id of the entity. When creating an entity this property can be omitted as it will be generated by the server anyway.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is stored the first time in the system. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

accountId
string

Account id to which an entity belongs to. When creating an entity, the accountId can be omitted, as it will be filled by the server automatically with the account of the currently logged in user. When editing an entity, you must include the account ID.

joinedTimestamp
integer <int64>

Unix timestamp (ms) when the person has joined

leftTimestamp
integer <int64>

Unix timestamp (ms) when the person has left (may not be present or -1 if still online)

personId
string

Person id to which an entity belongs to

object (DeviceInfo)

Model of a device (os, browser, etc) This is the representation of a physical device which may browsers (desktop and mobile) if accessed via the website or actual devices if accessed via the unblu MobileSDK

impersonationType
string (EImpersonationType)
Enum: "NONE" "USER_OWN_ROLE" "USER_SUPER_ADMIN" "ACCOUNT"
enum-descriptions: ["NONE","USER_OWN_ROLE","USER_SUPER_ADMIN","ACCOUNT"]

Type of impersonation

impersonatedFromUserId
string
impersonatedFromAccountId
string
additionalInfo
string
authInfo
string
propagated
boolean
{
  • "$_type": "PersonPresenceData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "accountId": "string",
  • "joinedTimestamp": 0,
  • "leftTimestamp": 0,
  • "personId": "string",
  • "deviceInfo": {
    },
  • "impersonationType": "NONE",
  • "impersonatedFromUserId": "string",
  • "impersonatedFromAccountId": "string",
  • "additionalInfo": "string",
  • "authInfo": "string",
  • "propagated": true
}

PersonPresenceOrderBy

$_type
string
Default: "PersonPresenceOrderBy"
Value: "PersonPresenceOrderBy"
field
string (EPersonPresenceOrderByField)
Enum: "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonPresenceOrderBy",
  • "field": "CREATION_TIMESTAMP",
  • "order": "ASCENDING"
}

PersonPresenceQuery

$_type
string
Default: "PersonPresenceQuery"
Value: "PersonPresenceQuery"
Array of any (PersonPresenceSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonPresenceOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonPresenceQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonPresenceResult

$_type
string
Default: "PersonPresenceResult"
Value: "PersonPresenceResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonPresenceData) [ items ]

The returned list of entities

{
  • "$_type": "PersonPresenceResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonPresenceSearchFilter

$_type
string
Default: "JoinedTimestampPersonPresenceSearchFilter"
Value: "JoinedTimestampPersonPresenceSearchFilter"
field
string (EPersonPresenceSearchFilterField)
enum-descriptions: ["JOINED_TIMESTAMP: Filter by the 'joinedTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LEFT_TIMESTAMP: Filter by the 'leftTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","PERSON_ID: Filter by the 'personId' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "JoinedTimestampPersonPresenceSearchFilter",
  • "field": "JOINED_TIMESTAMP",
  • "operator": {
    }
}

PersonQuery

$_type
string
Default: "PersonQuery"
Value: "PersonQuery"
Array of any (PersonSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonResult

$_type
string
Default: "PersonResult"
Value: "PersonResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonData) [ items ]

The returned list of entities

{
  • "$_type": "PersonResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonSearchFilter

$_type
string
Default: "AuthorizationRolePersonSearchFilter"
Value: "AuthorizationRolePersonSearchFilter"
field
string (EPersonSearchFilterField)
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
Example
{
  • "$_type": "AuthorizationRolePersonSearchFilter",
  • "field": "AUTHORIZATION_ROLE",
  • "operator": {
    }
}

PersonSourceOperator

$_type
string
Default: "EqualsPersonSourceOperator"
Value: "EqualsPersonSourceOperator"
type
string (EPersonSourceOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonSource)
Enum: "USER_DB" "VIRTUAL"
enum-descriptions: ["USER_DB: The source of the person is the ${link User} entity, so the `Person` is considered to be physical","VIRTUAL: The source of the person is virtual, that is, the individual is either anonymous or their identity was propagated by a single sign-on (SSO) mechanism."]

The source type of a person (participant of a conversation)

Example
{
  • "$_type": "EqualsPersonSourceOperator",
  • "type": "EQUALS",
  • "value": "USER_DB"
}

PersonSourcePersonSearchFilter

$_type
string
Default: "PersonSourcePersonSearchFilter"
Value: "PersonSourcePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (PersonSourceOperator)
{
  • "$_type": "PersonSourcePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PersonStateData

$_type
string
Default: "AgentPersonStateData"
Value: "AgentPersonStateData"
personId
string

The ID of the person this state data belongs to

onlineState
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

type
string (EPersonStateType)
enum-descriptions: ["AGENT","VISITOR"]
statusMessage
string

The agent's status message. The message is displayed in the person's details in the UI.

pauseNotificationsMode
string (EPauseNotificationsMode)
Enum: "ON" "OFF" "AUTO"
enum-descriptions: ["ON: Explicitly paused notifications.","OFF: Explicitly allowed notifications.","AUTO: Notifications are paused automatically, if there is a reason for it set, otherwise they are allowed."]

Defines the mode whether and how the notifications should be paused or not.

pauseNotificationsState
string (EPauseNotificationsState)
Enum: "ON" "OFF"
enum-descriptions: ["ON: Notifications are currently paused.","OFF: Notifications are currently allowed."]

Defines whether the notifications are currently paused or not.

pauseNotificationsEndTimestamp
integer <int64>

The Unix timestamp (ms) when pausing notifications should end

Array of objects (AutoPauseNotificationsReasonData) [ items ]

A list of reasons based on which the agent's notifications should be auto-paused

Example
{
  • "$_type": "AgentPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT",
  • "statusMessage": "string",
  • "pauseNotificationsMode": "ON",
  • "pauseNotificationsState": "ON",
  • "pauseNotificationsEndTimestamp": 0,
  • "autoPauseNotificationsReasons": [
    ]
}

PersonTypeOperator

$_type
string
Default: "EqualsPersonTypeOperator"
Value: "EqualsPersonTypeOperator"
type
string (EPersonTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator"]
value
string (EPersonType)
Enum: "AGENT" "VISITOR" "SYSTEM" "BOT"
enum-descriptions: ["AGENT: Agent participant","VISITOR: Visitor participant","SYSTEM: System participant","BOT: Bot participant"]

The type of a person (participant of a session)

Example
{
  • "$_type": "EqualsPersonTypeOperator",
  • "type": "EQUALS",
  • "value": "AGENT"
}

PersonTypePersonSearchFilter

$_type
string
Default: "PersonTypePersonSearchFilter"
Value: "PersonTypePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (PersonTypeOperator)
{
  • "$_type": "PersonTypePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PersonTypedCompoundSearchFilter

$_type
string
Default: "PersonTypedCompoundSearchFilter"
Value: "PersonTypedCompoundSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (CompoundOperator)
Array of any (PersonTypedSearchFilter) [ items ]

List of filters to be linked with either AND or OR

{
  • "$_type": "PersonTypedCompoundSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    },
  • "searchFilters": [
    ]
}

PersonTypedOrderBy

$_type
string
Default: "PersonTypedOrderBy"
Value: "PersonTypedOrderBy"
field
string (EPersonTypedOrderByField)
Enum: "ID" "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID"
enum-descriptions: ["ID: Sort by the 'id' attribute","SOURCE_ID: Sort by the 'sourceId' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","USERNAME: Sort by the 'username' attribute","NICKNAME: Sort by the 'nickname' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","EMAIL: Sort by the 'email' attribute","PHONE: Sort by the 'phone' attribute","TEAM_ID: Sort by the 'teamId' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonTypedOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonTypedQuery

$_type
string
Default: "PersonTypedQuery"
Value: "PersonTypedQuery"
Array of any (PersonTypedSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonTypedOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonTypedQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonTypedSearchFilter

$_type
string
Default: "AuthorizationRolePersonTypedSearchFilter"
Value: "AuthorizationRolePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (AuthorizationRoleOperator)
Example
{
  • "$_type": "AuthorizationRolePersonTypedSearchFilter",
  • "field": "AUTHORIZATION_ROLE",
  • "operator": {
    }
}

PersonVisibilityRuleData

$_type
string
Default: "PersonVisibilityRuleData"
Value: "PersonVisibilityRuleData"
id
string

The person's unique ID. When creating a person this property can be omitted, it's generated by the server.

accountId
string

ID of the Unblu account the person belongs to. When creating an entity this property can be omitted. Unblu automatically fills it with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Unique name of the visibility rule. Maximum length of 250 characters. Mandatory.

enabled
boolean

Flag indicating whether the rule is enabled or not. The default value is true.

description
string

Description of the visibility rule. Maximum length of 500 characters. Optional.

agentLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
agentLabelNames
Array of strings

A list of all the person labels an agent needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when agentLabelSelection = DEFINED_LIST.

visitorLabelSelection
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
visitorLabelNames
Array of strings

A list of all the person labels a visitor needs to have so that they're selected by the visibility rule. For any given scope, the list may only contain one label in that scope. Mandatory when visitorLabelSelection = DEFINED_LIST.

version
integer <int64>

Version of the entity. The version is incremented on each change. Entity updates that aren't based on the latest version are rejected. When creating an object, the version can be omitted.

{
  • "$_type": "PersonVisibilityRuleData",
  • "id": "string",
  • "accountId": "string",
  • "name": "string",
  • "enabled": true,
  • "description": "string",
  • "agentLabelSelection": "ALL",
  • "agentLabelNames": [
    ],
  • "visitorLabelSelection": "ALL",
  • "visitorLabelNames": [
    ],
  • "version": 0
}

PersonVisibilityRuleDataList

$_type
string
Default: "PersonVisibilityRuleDataList"
Value: "PersonVisibilityRuleDataList"
Array of objects (PersonVisibilityRuleData) [ items ]

The list of mapped entities

{
  • "$_type": "PersonVisibilityRuleDataList",
  • "items": [
    ]
}

PersonVisibilityRuleModificationEvent

$_type
string
Default: "PersonVisibilityRuleModificationEvent"
Value: "PersonVisibilityRuleModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (PersonVisibilityRuleData)

Model of a person visibility rule.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "PersonVisibilityRuleModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

PersonVisibilityRuleOrderBy

$_type
string
Default: "PersonVisibilityRuleOrderBy"
Value: "PersonVisibilityRuleOrderBy"
field
string (EPersonVisibilityRuleOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'ID' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "PersonVisibilityRuleOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

PersonVisibilityRuleQuery

$_type
string
Default: "PersonVisibilityRuleQuery"
Value: "PersonVisibilityRuleQuery"
Array of any (PersonVisibilityRuleSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (PersonVisibilityRuleOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "PersonVisibilityRuleQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

PersonVisibilityRuleResult

$_type
string
Default: "PersonVisibilityRuleResult"
Value: "PersonVisibilityRuleResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (PersonVisibilityRuleData) [ items ]

The returned list of entities

{
  • "$_type": "PersonVisibilityRuleResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

PersonVisibilityRuleSearchFilter

$_type
string
Default: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
Value: "AgentLabelSelectionPersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (VisibilityRuleLabelSelectionOperator)
Example
{
  • "$_type": "AgentLabelSelectionPersonVisibilityRuleSearchFilter",
  • "field": "AGENT_LABEL_SELECTION",
  • "operator": {
    }
}

PersonVisibilityRulesGetByUsedLabelNameBody

labelName
string

The name of a person label to search for in the rule selection

{
  • "labelName": "string"
}

PersonsAddAutoPauseNotificationsReasonBody

sourceId
string

The source identifier of the auto-pause reason. This can be used later to remove or change the timeout for this reason.

displayName
string

The name of the auto-pause reason displayed in the UI

timeoutSeconds
integer <int32>

The duration, in seconds, for which notifications should be paused automatically

{
  • "sourceId": "string",
  • "displayName": "string",
  • "timeoutSeconds": 0
}

PersonsPauseNotificationsBody

timeoutSeconds
integer <int32>

The duration, in seconds, that notifications should be paused for

{
  • "timeoutSeconds": 0
}

PersonsRemoveAutoPauseNotificationsReasonBody

sourceId
string

The identifier of the auto-pause reason to remove

{
  • "sourceId": "string"
}

PersonsSetAwayBody

away
boolean

Boolean Whether to set the person's online state to AWAY (true) of ONLINE (false)

{
  • "away": true
}

PersonsSetStatusMessageBody

statusMessage
string

The status message to display in the person's details

{
  • "statusMessage": "string"
}

PhoneNumberSmsExternalMessengerChannelSearchFilter

$_type
string
Default: "PhoneNumberSmsExternalMessengerChannelSearchFilter"
Value: "PhoneNumberSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "ACCOUNT_SID" "PHONE_NUMBER"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
{
  • "$_type": "PhoneNumberSmsExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

PhonePersonSearchFilter

$_type
string
Default: "PhonePersonSearchFilter"
Value: "PhonePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "PhonePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

PhonePersonTypedSearchFilter

$_type
string
Default: "PhonePersonTypedSearchFilter"
Value: "PhonePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "PhonePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

PinCreatedEvent

$_type
string
Default: "PinCreatedEvent"
Value: "PinCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the pin event with the token.
Only one link may be used.

{
  • "$_type": "PinCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

PinRedeemedEvent

$_type
string
Default: "PinRedeemedEvent"
Value: "PinRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "PinRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "redeemingPerson": {
    }
}

PinRenewedEvent

$_type
string
Default: "PinRenewedEvent"
Value: "PinRenewedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "PinRenewedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

PinRevokedEvent

$_type
string
Default: "PinRevokedEvent"
Value: "PinRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

{
  • "$_type": "PinRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "expirationTimestamp": 0
}

PingRequest

$_type
string
Default: "PingRequest"
Value: "PingRequest"
accountId
string
serviceName
string
pingId
string

A random ID that identifies this ping request. The response to the request must have the same ID.

{
  • "$_type": "PingRequest",
  • "accountId": "string",
  • "serviceName": "string",
  • "pingId": "string"
}

PingResponse

$_type
string
Default: "PingResponse"
Value: "PingResponse"
pingId
string

The pingId of the request this event is responding to

{
  • "$_type": "PingResponse",
  • "pingId": "string"
}

Placeholder

$_type
string
Default: "Placeholder"
Value: "Placeholder"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

Array of objects (PlaceholderValue) [ items ]
cannedResponseId
string
type
string (EPlaceholderType)
Enum: "TEXT" "MULTIPLE_CHOICE"
enum-descriptions: ["TEXT","MULTIPLE_CHOICE"]
title
string
hint
string
{
  • "$_type": "Placeholder",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "placeholderValues": [
    ],
  • "cannedResponseId": "string",
  • "type": "TEXT",
  • "title": "string",
  • "hint": "string"
}

PlaceholderValue

$_type
string
Default: "PlaceholderValue"
Value: "PlaceholderValue"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

placeholderId
string
textValue
string
{
  • "$_type": "PlaceholderValue",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "placeholderId": "string",
  • "textValue": "string"
}

PostListMessageCardItemData

$_type
string
Default: "PostListMessageCardItemData"
Value: "PostListMessageCardItemData"
imageUrl
string

URL of the image displayed on the list item. (optional)

The alignment of the image on the item is determined by com.unblu.conversation.messaging.ui.listMessageImageAlignment.

imageAltText
string

Alt text for the image. Required if imageUrl is set.

title
string

Title displayed below the image. (optional)

Max length is 64 characters.

body
string

Body text. May optionally contain Markdown. (optional)

Max length is 256 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

object (MessageAction)

Message action used in card messages and on list items.

Links are rendered with their labels below the body text of the card or list item. Reply actions are only rendered in card messages. They aren't rendered on list items.

{
  • "$_type": "PostListMessageCardItemData",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "action": {
    }
}

PostMessageData

$_type
string
Default: "CardPostMessageData"
Value: "CardPostMessageData"
type
string (EPostMessageType)
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

imageUrl
string

URL of the image displayed at the top of the card. (optional)

  • The image is always displayed with an aspect ratio of 16:9
  • If the image doesn't fit the aspect ratio it's magnified to cover the whole area
  • Depending on the chat windows size, the image is displayed with a width of 200-400px.

imageAltText
string

Alt text for the image. Required if imageUrl is set.

title
string

Title displayed below the image. (optional)

Max length is 64 characters.

body
string

Body text. May optionally contain Markdown. (optional)

Max length is 640 characters.

bodyTextType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (MessageAction) [ items ]

Actions to be displayed at the bottom of the card. (optional)

Max number of actions is 5.

Array of objects (QuickReply) [ items ]

List of quick replies available to the message's recipients. (optional)

Max number of quick replies is 13.

Example
{
  • "$_type": "CardPostMessageData",
  • "type": "CARD",
  • "fallbackText": "string",
  • "imageUrl": "string",
  • "imageAltText": "string",
  • "title": "string",
  • "body": "string",
  • "bodyTextType": "SIMPLE_TEXT",
  • "actions": [
    ],
  • "quickReplies": [
    ]
}

ProductVersion

$_type
string
Default: "ProductVersion"
Value: "ProductVersion"
productVersion
string

The version of the product

productGuid
string

The unique identifier of the product build

{
  • "$_type": "ProductVersion",
  • "productVersion": "string",
  • "productGuid": "string"
}

PropertyOwnerTypeOperator

$_type
string
Default: "EqualsPropertyOwnerTypeOperator"
Value: "EqualsPropertyOwnerTypeOperator"
type
string (EPropertyOwnerTypeOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value not is equal to the one provided in the operator","IN: Check if the value is one of the ones provided in the operator","NOT_IN: Check the value is not one of the ones provided in the operator"]
value
string (EPropertyOwnerType)
Enum: "GLOBAL" "ACCOUNT" "TEAM" "USER" "AREA" "APIKEY" "PERSON" "CONVERSATION" "CONVERSATION_TEMPLATE" "EXTERNAL_MESSENGER_CHANNEL" "CUSTOM_ACTION"
enum-descriptions: ["GLOBAL: Global system is owner","ACCOUNT: Account is owner","TEAM: Team is owner","USER: User is owner","AREA: NamedArea is owner","APIKEY: ApiKey is owner","PERSON: Person","CONVERSATION: Conversation","CONVERSATION_TEMPLATE: Conversation template","EXTERNAL_MESSENGER_CHANNEL: External messenger channel","CUSTOM_ACTION: Custom action"]

Type of an owner of an entity

Example
{
  • "$_type": "EqualsPropertyOwnerTypeOperator",
  • "type": "EQUALS",
  • "value": "GLOBAL"
}

QuestionAbortedMessageData

$_type
string
Default: "QuestionAbortedMessageData"
Value: "QuestionAbortedMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

questionMessageId
string

ID of the question message for which this reply is

value
string

The reply value for the question message.

reason
string (EQuestionMessageAbortReason)
Enum: "TIMEDOUT" "CANCELED"
enum-descriptions: ["TIMEDOUT: A person was to slow to answer a message","CANCELED: The question was canceled explicitly by the system, a bot or an external messenger channel"]

Reason why a question message was not answered

{
  • "$_type": "QuestionAbortedMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "questionMessageId": "string",
  • "value": "string",
  • "reason": "TIMEDOUT"
}

QuickReply

$_type
string
Default: "QuickReply"
Value: "QuickReply"
text
string

Quick reply text displayed as button available to the message's recipient.

Simple text, max 40 characters.

{
  • "$_type": "QuickReply",
  • "text": "string"
}

QuotaUsageData

$_type
string
Default: "QuotaUsageData"
Value: "QuotaUsageData"
current
integer <int32>

Current usage value

limit
string

Usage limit value

{
  • "$_type": "QuotaUsageData",
  • "current": 0,
  • "limit": "string"
}

RatingQuestionMessageData

$_type
string
Default: "RatingQuestionMessageData"
Value: "RatingQuestionMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (RatingQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyMessageData

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

{
  • "$_type": "RatingQuestionMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "answerStatus": "PENDING",
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string"
}

RatingQuestionOption

$_type
string
Default: "RatingQuestionOption"
Value: "RatingQuestionOption"
label
string

Visual representation of the option

value
string

Value of the option, which is used in a ReplyMessageData

{
  • "$_type": "RatingQuestionOption",
  • "label": "string",
  • "value": "string"
}

RatingQuestionPostMessageData

$_type
string
Default: "RatingQuestionPostMessageData"
Value: "RatingQuestionPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Question message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (RatingQuestionOption) [ items ]

Response options for the question.
When replying to this question, the value of an option needs to be send in a ReplyPostMessageData

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

{
  • "$_type": "RatingQuestionPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "options": [
    ],
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string"
}

ReadMessagePushNotificationEvent

$_type
string
Default: "ReadMessagePushNotificationEvent"
Value: "ReadMessagePushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

messageId
string

Id of the message

readTimestamp
integer <int64>

Timestamp when the message was read.

notificationCount
integer <int32>

Number of notifications (i.e. unread messages) in this conversation

recipientNotificationCount
integer <int32>

Number of notifications (i.e. unread messages) the recipient person has in total

{
  • "$_type": "ReadMessagePushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "messageId": "string",
  • "readTimestamp": 0,
  • "notificationCount": 0,
  • "recipientNotificationCount": 0
}

RecipientIdConversationHistorySearchFilter

$_type
string
Default: "RecipientIdConversationHistorySearchFilter"
Value: "RecipientIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "RecipientIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

RecipientIdConversationSearchFilter

$_type
string
Default: "RecipientIdConversationSearchFilter"
Value: "RecipientIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "RecipientIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

RecipientTypeConversationHistorySearchFilter

$_type
string
Default: "RecipientTypeConversationHistorySearchFilter"
Value: "RecipientTypeConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationRecipientTypeOperator)
{
  • "$_type": "RecipientTypeConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

RecipientTypeConversationSearchFilter

$_type
string
Default: "RecipientTypeConversationSearchFilter"
Value: "RecipientTypeConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationRecipientTypeOperator)
{
  • "$_type": "RecipientTypeConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

RecordRetentionData

$_type
string
Default: "RecordRetentionData"
Value: "RecordRetentionData"
accountId
string

ID of the account whose retention configuration properties the object represents

retentionIntervalConversationSeconds
integer <int64>

Retention interval of conversations represented as number of seconds. Conversations are deleted after the interval, counting from when they ended.

retentionIntervalPresenceSeconds
integer <int64>

Retention interval of person presences represented as number of seconds. If a person presence exists without a conversation, the log is deleted after the time set below. Otherwise, it is deleted when the conversation record is deleted.

retentionIntervalWebhookDeliveryLogSeconds
integer <int64>

Retention interval of webhook delivery logs represented as number of seconds. Webhook logs are deleted after the time set below, counting from when they were created.

retentionIntervalAuditLogSeconds
integer <int64>

Retention interval of audit logs represented as number of seconds. Audit logs are deleted after the time set below, counting from when they were created.

{
  • "$_type": "RecordRetentionData",
  • "accountId": "string",
  • "retentionIntervalConversationSeconds": 0,
  • "retentionIntervalPresenceSeconds": 0,
  • "retentionIntervalWebhookDeliveryLogSeconds": 0,
  • "retentionIntervalAuditLogSeconds": 0
}

RecordedMinutesData

$_type
string
Default: "RecordedMinutesData"
Value: "RecordedMinutesData"
recordedMinutes
integer <int64>

The number of recorded minutes

{
  • "$_type": "RecordedMinutesData",
  • "recordedMinutes": 0
}

RecordingAvailableMessageData

$_type
string
Default: "RecordingAvailableMessageData"
Value: "RecordingAvailableMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

blobId
string

The blob store ID of the recording

blobSize
integer <int64>

The total size, in bytes, of this recording

fileName
string

The filename of this recording

startTimestamp
integer <int64>

UTC timestamp when the conversation recording started

endTimestamp
integer <int64>

UTC timestamp when the conversation recording ended

{
  • "$_type": "RecordingAvailableMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "blobId": "string",
  • "blobSize": 0,
  • "fileName": "string",
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

RedeemingPersonIdConversationInvitationSearchFilter

$_type
string
Default: "RedeemingPersonIdConversationInvitationSearchFilter"
Value: "RedeemingPersonIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "RedeemingPersonIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

ReplyMessageData

$_type
string
Default: "ReplyMessageData"
Value: "ReplyMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

questionMessageId
string

ID of the question message for which this reply is

value
string

The reply value for the question message.

{
  • "$_type": "ReplyMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "questionMessageId": "string",
  • "value": "string"
}

ReplyPostMessageData

$_type
string
Default: "ReplyPostMessageData"
Value: "ReplyPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

questionMessageId
string

ID of the question message for which this reply is

value
string

The reply value for the question message.

{
  • "$_type": "ReplyPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "questionMessageId": "string",
  • "value": "string"
}

RevokeCallPushNotificationEvent

$_type
string
Default: "RevokeCallPushNotificationEvent"
Value: "RevokeCallPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

callState
string (ECallState)
Enum: "IDLE" "CALLING" "FORWARDING" "UNAVAILABLE" "ACTIVE"
enum-descriptions: ["IDLE: The call is not active (anymore)","CALLING: The call is ringing, nobody accepted it yet","FORWARDING: The call is ringing for the hidden agents of the conversation, after no visible agent has accepted the call","UNAVAILABLE: As no call recipient is available to accept the call it just notifies the caller of this fact","ACTIVE: The call is active"]

State of the call

{
  • "$_type": "RevokeCallPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "callState": "IDLE"
}

RevokeDeputyDelegationPushNotificationEvent

$_type
string
Default: "RevokeDeputyDelegationPushNotificationEvent"
Value: "RevokeDeputyDelegationPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation delegated to the deputy

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "RevokeDeputyDelegationPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string",
  • "primaryAgentPerson": {
    }
}

RevokeInboundRequestPushNotificationEvent

$_type
string
Default: "RevokeInboundRequestPushNotificationEvent"
Value: "RevokeInboundRequestPushNotificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

locale
string

Locale (as BCP 47 language tag form including region if available)

conversationId
string

Id of the conversation

deviceTokens
Array of strings

List of device tokens

invitationId
string

The ID of the invitation

initialEngagementType
string (EInitialEngagementType)
Enum: "CHAT_REQUEST" "OFFLINE_CHAT_REQUEST" "VIDEO_REQUEST" "AUDIO_REQUEST" "HEADLESS_BROWSER_REQUEST" "DOMCAP_BROWSER_REQUEST" "MOBILE_COBROWSING_REQUEST" "WHITEBOARD_REQUEST" "SCREEN_SHARING_REQUEST" "VISITOR_COBROWSING" "HEADLESS_PIN" "DOMCAP_PIN" "MOBILE_PIN" "WHITEBOARD_PIN" "SCREEN_SHARING_PIN" "CHAT_PIN" "CHAT_INVITE" "HEADLESS_INVITE" "WHITEBOARD_INVITE" "SCREEN_SHARING_INVITE" "SCHEDULED_CONVERSATION"
enum-descriptions: ["CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation.","OFFLINE_CHAT_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming chat conversation while all agents are offline.","VIDEO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming video conversation.","AUDIO_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming audio conversation.","HEADLESS_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming universal co-browsing conversation.","DOMCAP_BROWSER_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming embedded co-browsing conversation.","MOBILE_COBROWSING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming mobile co-browsing conversation.","WHITEBOARD_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming whiteboard conversation.","SCREEN_SHARING_REQUEST: (Visitor initiated, visitor centered) A visitor creates an incoming screen sharing conversation.","VISITOR_COBROWSING: (Api initiated, visitor centered) A visitor creates a conversation via API which is not added to the queue and where he can invite other visitor to do embedded","HEADLESS_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an universal co-browsing conversation.","DOMCAP_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join an embedded co-browsing conversation.","MOBILE_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a mobile co-browsing conversation.","WHITEBOARD_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a whiteboard conversation.","SCREEN_SHARING_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a screen sharing conversation.","CHAT_PIN: (Agent initiated, visitor centered) An agent creates a conversation with a PIN invitation for the visitor to join a chat conversation.","CHAT_INVITE: (Web-API initiated, agent centered) A chat conversation is created for a visitor to join a chat conversation.","HEADLESS_INVITE: (Agent initiated, agent centered) An agent creates universal co-browsing conversation and invites customer later.","WHITEBOARD_INVITE: (Agent initiated, agent centered) An agent creates whiteboard conversation and invites customer later.","SCREEN_SHARING_INVITE: (Agent initiated, agent centered) An agent creates screen sharing conversation and invites customer later.","SCHEDULED_CONVERSATION: (Agent initiated, agent centered) Conversation created with a certain topic and scheduled for some point in time."]

The initial type of a conversation. The type used at creation time of the conversation determines the conversation template that is used.

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

conversationStartUrl
string

The URL where the conversation started

{
  • "$_type": "RevokeInboundRequestPushNotificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "recipient": {
    },
  • "locale": "string",
  • "conversationId": "string",
  • "deviceTokens": [
    ],
  • "invitationId": "string",
  • "initialEngagementType": "CHAT_REQUEST",
  • "contextPerson": {
    },
  • "conversationStartUrl": "string"
}

ScheduledTimestampConversationHistorySearchFilter

$_type
string
Default: "ScheduledTimestampConversationHistorySearchFilter"
Value: "ScheduledTimestampConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (TimestampOperator)
{
  • "$_type": "ScheduledTimestampConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

ScheduledTimestampConversationSearchFilter

$_type
string
Default: "ScheduledTimestampConversationSearchFilter"
Value: "ScheduledTimestampConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (TimestampOperator)
{
  • "$_type": "ScheduledTimestampConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

SecureTokenRequest

$_type
string
Default: "SecureTokenRequest"
Value: "SecureTokenRequest"
token
string
type
string (ESecureTokenType)
Enum: "JWT" "OIDC_ACCESS_TOKEN"
enum-descriptions: ["JWT","OIDC_ACCESS_TOKEN"]

Token type

{
  • "$_type": "SecureTokenRequest",
  • "token": "string",
  • "type": "JWT"
}

SendMessageResult

$_type
string
Default: "SendMessageResult"
Value: "SendMessageResult"
messageId
string
{
  • "$_type": "SendMessageResult",
  • "messageId": "string"
}

SendTimestampMessageExportFilter

$_type
string
Default: "SendTimestampMessageExportFilter"
Value: "SendTimestampMessageExportFilter"
field
string (EMessageExportFilterField)
Value: "SEND_TIMESTAMP"
enum-descriptions: ["SEND_TIMESTAMP: Filter by the 'sendTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
{
  • "$_type": "SendTimestampMessageExportFilter",
  • "field": "SEND_TIMESTAMP",
  • "operator": {
    }
}

ServiceProviderCallIdCallSearchFilter

$_type
string
Default: "ServiceProviderCallIdCallSearchFilter"
Value: "ServiceProviderCallIdCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "ServiceProviderCallIdCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

ServiceProviderTypeCallSearchFilter

$_type
string
Default: "ServiceProviderTypeCallSearchFilter"
Value: "ServiceProviderTypeCallSearchFilter"
field
string (ECallSearchFilterField)
Enum: "CONVERSATION_ID" "SERVICE_PROVIDER_TYPE" "SERVICE_PROVIDER_CALL_ID" "INITIATION_TIMESTAMP" "ACCEPT_TIMESTAMP" "ESTABLISHED_TIMESTAMP" "END_TIMESTAMP" "INITIATOR_PERSON_ID"
enum-descriptions: ["CONVERSATION_ID: Filter by the 'creationTimestamp' attribute","SERVICE_PROVIDER_TYPE: Filter by the 'serviceProviderType' attribute","SERVICE_PROVIDER_CALL_ID: Filter by the 'serviceProviderCallId' attribute","INITIATION_TIMESTAMP: Filter by the 'initiationTimestamp' attribute","ACCEPT_TIMESTAMP: Filter by the 'acceptTimestamp' attribute","ESTABLISHED_TIMESTAMP: Filter by the 'establishedTimestamp' attribute","END_TIMESTAMP: Filter by the 'endTimestamp' attribute","INITIATOR_PERSON_ID: Filter by the 'initiatorPersonId' attribute"]
any (CallServiceProviderOperator)
{
  • "$_type": "ServiceProviderTypeCallSearchFilter",
  • "field": "CONVERSATION_ID",
  • "operator": {
    }
}

SiteIdNamedAreaSearchFilter

$_type
string
Default: "SiteIdNamedAreaSearchFilter"
Value: "SiteIdNamedAreaSearchFilter"
field
string (ENamedAreaSearchFilterField)
Enum: "NAME" "DESCRIPTION" "SITE_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","SITE_ID: Filter by the 'siteId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SiteIdNamedAreaSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

SmsExternalMessengerChannel

$_type
string
Default: "SmsExternalMessengerChannel"
Value: "SmsExternalMessengerChannel"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the channel. Needs to be unique in the account.

description
string

Optional description of the channel

string or Avatar (object)
expand-query-key: channelIcon
type: ExpandableField

Channel icon of the entity: id that can be expanded.

sourceId
string

Custom identifier to find the source of the channel.
Has a maximum of 250 characters

type
string (EExternalMessengerChannelType)
Enum: "CUSTOM" "WHATS_APP" "FACEBOOK" "SMS"
enum-descriptions: ["CUSTOM: A custom channel connected via REST and webhooks","WHATS_APP: A WhatsApp channel managed by the Collaboration Server","FACEBOOK: A Facebook channel managed by the Collaboration Server","SMS: An SMS channel managed by the Collaboration Server"]

The type of external messenger channel

twilioAccountSid
string

A unique key that identifies a specific Twilio parent account or subaccount. The Account SID is a credential and acts as a username.

twilioAuthToken
string

The promoted authentication token used to authenticate future API requests

phoneNumber
string

The phone number used as the sender for SMS messages. The phone number must conform to the E.164 format.

inboundTemplateName
string

The name of the conversation template for new inbound conversation requests. If no template of that name can be found, the default template forEInitialEngagementType.OFFLINE_CHAT_REQUEST is used.

recipientType
string (EConversationRecipientType)
Enum: "AGENT" "TEAM" "NAMED_AREA" "ACCOUNT"
enum-descriptions: ["AGENT: Recipient is a single agent","TEAM: Recipient is an agent of the team","NAMED_AREA: Recipient is an agent responsible for a specific named-area","ACCOUNT: Recipient is one of all the agents of an account"]

Recipient type of the conversation

recipientName
string

The name of the conversation recipient for new inbound conversation requests. It is used together with the recipientType. If the recipient can't be found, the account is used.

For EConversationRecipientType.ACCOUNT, the recipientName is not relevant. The account that the channel belongs to is used.

For EConversationRecipientType.NAMED_AREA, the recipientName must match the name (not the ID) of a named area.

For EConversationRecipientType.TEAM, the recipientName must match a team's name.

For EConversationRecipientType.AGENT, the recipientName must match an agent's username.

active
boolean

Specifies whether the channel is active

supportsMultipleConversationsPerContact
boolean

SMS channels only support one active conversation per contact. This field must therefore always be "false".

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "SmsExternalMessengerChannel",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "channelIcon": "string",
  • "sourceId": "string",
  • "type": "CUSTOM",
  • "twilioAccountSid": "string",
  • "twilioAuthToken": "string",
  • "phoneNumber": "string",
  • "inboundTemplateName": "string",
  • "recipientType": "AGENT",
  • "recipientName": "string",
  • "active": true,
  • "supportsMultipleConversationsPerContact": true,
  • "metadata": {
    }
}

SmsExternalMessengerChannelOrderBy

$_type
string
Default: "SmsExternalMessengerChannelOrderBy"
Value: "SmsExternalMessengerChannelOrderBy"
field
string (ESmsExternalMessengerChannelOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "SmsExternalMessengerChannelOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

SmsExternalMessengerChannelQuery

$_type
string
Default: "SmsExternalMessengerChannelQuery"
Value: "SmsExternalMessengerChannelQuery"
Array of any (SmsExternalMessengerChannelSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (SmsExternalMessengerChannelOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "SmsExternalMessengerChannelQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

SmsExternalMessengerChannelResult

$_type
string
Default: "SmsExternalMessengerChannelResult"
Value: "SmsExternalMessengerChannelResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (SmsExternalMessengerChannel) [ items ]

The returned list of entities

{
  • "$_type": "SmsExternalMessengerChannelResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

SmsExternalMessengerChannelSearchFilter

$_type
string
Default: "AccountSidSmsExternalMessengerChannelSearchFilter"
Value: "AccountSidSmsExternalMessengerChannelSearchFilter"
field
string (ESmsExternalMessengerChannelSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ACCOUNT_SID: Filter by the 'accountSid' attribute of the SMS external messenger channel","PHONE_NUMBER: Filter by the 'phoneNumber' attribute of the SMS external messenger channel"]
any (StringOperator)
Example
{
  • "$_type": "AccountSidSmsExternalMessengerChannelSearchFilter",
  • "field": "ACCOUNT_SID",
  • "operator": {
    }
}

SourceDataPersonSearchFilter

$_type
string
Default: "SourceDataPersonSearchFilter"
Value: "SourceDataPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "SourceDataPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

SourceIdConversationSearchFilter

$_type
string
Default: "SourceIdConversationSearchFilter"
Value: "SourceIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SourceIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

SourceIdExternalMessengerContactSearchFilter

$_type
string
Default: "SourceIdExternalMessengerContactSearchFilter"
Value: "SourceIdExternalMessengerContactSearchFilter"
field
string (EExternalMessengerContactSearchFilterField)
Enum: "ID" "NAME" "EXTERNAL_MESSENGER_CHANNEL_ID" "SOURCE_ID" "PERSON_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Filter by the 'id' attribute","NAME: Filter by the 'name' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'messengerChannelId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","PERSON_ID: Filter by the 'personId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "SourceIdExternalMessengerContactSearchFilter",
  • "field": "ID",
  • "operator": {
    }
}

SourceIdPersonSearchFilter

$_type
string
Default: "SourceIdPersonSearchFilter"
Value: "SourceIdPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SourceIdPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

SourceIdPersonTypedSearchFilter

$_type
string
Default: "SourceIdPersonTypedSearchFilter"
Value: "SourceIdPersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "SourceIdPersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

StartsWithIdOperator

$_type
string
Default: "StartsWithIdOperator"
Value: "StartsWithIdOperator"
type
string (EIdOperatorType)
Enum: "EQUALS" "NOT_EQUALS" "IN" "NOT_IN" "IS_NULL" "IS_NOT_NULL" "STARTS_WITH"
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","STARTS_WITH: Check if the value starts with the given value provided in the operator."]

Operator types corresponding to operators defined by IdOperator

value
string
{
  • "$_type": "StartsWithIdOperator",
  • "type": "EQUALS",
  • "value": "string"
}

StateConversationHistorySearchFilter

$_type
string
Default: "StateConversationHistorySearchFilter"
Value: "StateConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationStateOperator)
{
  • "$_type": "StateConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

StateConversationSearchFilter

$_type
string
Default: "StateConversationSearchFilter"
Value: "StateConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationStateOperator)
{
  • "$_type": "StateConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

StatusMessageAgentStateSearchFilter

$_type
string
Default: "StatusMessageAgentStateSearchFilter"
Value: "StatusMessageAgentStateSearchFilter"
field
string (EAgentStateSearchFilterField)
Enum: "PERSON_ID" "ONLINE_STATE" "STATUS_MESSAGE" "PAUSE_NOTIFICATIONS_MODE" "PAUSE_NOTIFICATIONS_STATE" "PAUSE_NOTIFICATIONS_END_TIMESTAMP" "AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID" "AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP"
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute","STATUS_MESSAGE: Filter by the 'statusMessage' attribute","PAUSE_NOTIFICATIONS_MODE: Filter by the 'pauseNotificationsMode' attribute","PAUSE_NOTIFICATIONS_STATE: Filter by the 'pauseNotificationsState' attribute","PAUSE_NOTIFICATIONS_END_TIMESTAMP: Filter by the 'pauseNotificationsEndTimestamp' attribute","AUTO_PAUSE_NOTIFICATIONS_REASON_SOURCE_ID: Filter by the 'sourceId' attribute of the related AutoPauseNotificationsReason","AUTO_PAUSE_NOTIFICATIONS_REASON_EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute of the related AutoPauseNotificationsReason"]
any (StringOperator)
{
  • "$_type": "StatusMessageAgentStateSearchFilter",
  • "field": "PERSON_ID",
  • "operator": {
    }
}

StringOperator

$_type
string
Default: "ContainsStringOperator"
Value: "ContainsStringOperator"
type
string (EStringOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","CONTAINS: Check if the value contains the string provided in the operator"]
value
string

The value to check if it is contained within the searched field. Mandatory.

caseSensitive
boolean

Whether the search should be case sensitive. Optional, false if not provided.

Example
{
  • "$_type": "ContainsStringOperator",
  • "type": "CONTAINS",
  • "value": "string",
  • "caseSensitive": true
}

SuggestionSourceData

$_type
string
Default: "SuggestionSourceData"
Value: "SuggestionSourceData"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the message interceptor. Maximum length of 250 characters. Mandatory.

description
string

Description of the message interceptor. Maximum length of 500 characters. Optional.

outboundApiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

outboundStatus
string (EOutboundEndpointStatus)
Enum: "ENABLED" "DISABLED"
enum-descriptions: ["ENABLED: The endpoint is enabled and calls are allowed.","DISABLED: The endpoint is disabled and calls should be avoided, since they won't work."]

The status of an Outbound Web-API endpoint.

outboundEndpoint
string

The endpoint url of the outbound registration. To this url the requests for the outbound requests are done. Maximum length of 4000 characters.

The following requests will be sent to the endpoint:

  • OutboundRequest#ServiceNameConstants#CONVERSATION_CHAT_SUGGESTION: When a suggestion for one or more chat messages is requested.
  • OutboundRequest#ServiceNameConstants#PING: When pinging the endpoint.

outboundSecret
string

Optional secret which is send with each outbound request.

Maximum length of 4000 characters.

outboundTimeoutMillis
integer <int64>

The timeout for the requests sent to the outbound endpoint. Mandatory.

{
  • "$_type": "SuggestionSourceData",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "description": "string",
  • "outboundApiVersion": "V1",
  • "outboundStatus": "ENABLED",
  • "outboundEndpoint": "string",
  • "outboundSecret": "string",
  • "outboundTimeoutMillis": 0
}

SuggestionSourceOrderBy

$_type
string
Default: "SuggestionSourceOrderBy"
Value: "SuggestionSourceOrderBy"
field
string (ESuggestionSourceOrderByField)
Enum: "ID" "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "SuggestionSourceOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

SuggestionSourceQuery

$_type
string
Default: "SuggestionSourceQuery"
Value: "SuggestionSourceQuery"
Array of any (SuggestionSourceSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (SuggestionSourceOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "SuggestionSourceQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

SuggestionSourceResult

$_type
string
Default: "SuggestionSourceResult"
Value: "SuggestionSourceResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (SuggestionSourceData) [ items ]

The returned list of entities

{
  • "$_type": "SuggestionSourceResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

SuggestionSourceSearchFilter

$_type
string
Default: "CreationTimestampSuggestionSourceSearchFilter"
Value: "CreationTimestampSuggestionSourceSearchFilter"
field
string (ESuggestionSourceSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute"]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampSuggestionSourceSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

SystemMessageData

$_type
string
Default: "SystemMessageData"
Value: "SystemMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

{
  • "$_type": "SystemMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string"
}

TargetIdConversationInvitationSearchFilter

$_type
string
Default: "TargetIdConversationInvitationSearchFilter"
Value: "TargetIdConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TargetIdConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

TargetTypeConversationInvitationSearchFilter

$_type
string
Default: "TargetTypeConversationInvitationSearchFilter"
Value: "TargetTypeConversationInvitationSearchFilter"
field
string (EConversationInvitationSearchFilterField)
Enum: "INVITATION_TYPE" "TARGET_TYPE" "CONVERSATION_ID" "TARGET_ID" "EXPIRATION_TIMESTAMP" "CREATION_TIMESTAMP" "CREATOR_TYPE" "CREATOR_PERSON_ID" "REDEEMING_PERSON_ID" "INVITATION_STATE"
enum-descriptions: ["INVITATION_TYPE: Filter by the 'type' attribute","TARGET_TYPE: Filter by the 'targetType' attribute","CONVERSATION_ID: Filter by the 'conversationId' attribute","TARGET_ID: Filter by the 'targetId' attribute","EXPIRATION_TIMESTAMP: Filter by the 'expirationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","CREATOR_TYPE: Filter by the 'creatorType' attribute","CREATOR_PERSON_ID: Filter by the 'creatorId' attribute","REDEEMING_PERSON_ID: Filter by the 'redeemerPersonId' attribute","INVITATION_STATE: Filter by the 'invitationState' attribute"]
any (InvitationTargetTypeOperator)
{
  • "$_type": "TargetTypeConversationInvitationSearchFilter",
  • "field": "INVITATION_TYPE",
  • "operator": {
    }
}

Team

$_type
string
Default: "Team"
Value: "Team"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

name
string

Name of the team. Maximum of 250 characters. Can not be omitted.

parentId
string

Id of the parent team. Only the default team has no parent team. When creating a team and the parentId is omitted, the default team is automatically inserted by the server.

description
string

Description of the team. Maximum of 500 characters. Can be omitted.

externallyManaged
boolean

True if the team is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

object

A map of localized versions of the name and description of this entity

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "Team",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "name": "string",
  • "parentId": "string",
  • "description": "string",
  • "externallyManaged": true,
  • "translations": {
    },
  • "configuration": {
    },
  • "metadata": {
    }
}

TeamData

$_type
string
Default: "TeamData"
Value: "TeamData"
id
string

Unique id of the team.

accountId
string

Account id to which a team belongs to.

displayName
string

Display-Name of the team

object

Localized Display-Name of the team

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the team: id that can be expanded.

parentId
string

Id of the parent team. Only the default team has no parent team. When creating a team and the parentId is omitted, the default team is automatically inserted by the server.

{
  • "$_type": "TeamData",
  • "id": "string",
  • "accountId": "string",
  • "displayName": "string",
  • "displayNameTranslations": {
    },
  • "avatar": "string",
  • "parentId": "string"
}

TeamIdPersonSearchFilter

$_type
string
Default: "TeamIdPersonSearchFilter"
Value: "TeamIdPersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TeamIdPersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

TeamIdPersonTypedSearchFilter

$_type
string
Default: "TeamIdPersonTypedSearchFilter"
Value: "TeamIdPersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TeamIdPersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

TeamIdUserSearchFilter

$_type
string
Default: "TeamIdUserSearchFilter"
Value: "TeamIdUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TeamIdUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

TeamList

$_type
string
Default: "TeamList"
Value: "TeamList"
Array of objects (Team) [ items ]

The list of mapped entities

{
  • "$_type": "TeamList",
  • "items": [
    ]
}

TeamModificationEvent

$_type
string
Default: "TeamModificationEvent"
Value: "TeamModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (Team)

Model of a team. A team consist out of multiple users. For each account there is at least the default team.

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "TeamModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

TeamOrderBy

$_type
string
Default: "TeamOrderBy"
Value: "TeamOrderBy"
field
string (ETeamOrderByField)
Enum: "ID" "NAME" "DESCRIPTION" "PARENT_ID" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","PARENT_ID: Sort by the 'parentId' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "TeamOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

TeamQuery

$_type
string
Default: "TeamQuery"
Value: "TeamQuery"
Array of any (TeamSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (TeamOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "TeamQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

TeamResult

$_type
string
Default: "TeamResult"
Value: "TeamResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (Team) [ items ]

The returned list of entities

{
  • "$_type": "TeamResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

TeamSearchFilter

$_type
string
Default: "CreationTimestampTeamSearchFilter"
Value: "CreationTimestampTeamSearchFilter"
field
string (ETeamSearchFilterField)
enum-descriptions: ["NAME: Filter by the 'name' attribute","DESCRIPTION: Filter by the 'description' attribute","PARENT_ID: Filter by the 'parentId' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampTeamSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

TeamTranslation

$_type
string
Default: "TeamTranslation"
Value: "TeamTranslation"
id
string

Unique ID of the entity. When creating an entity this property can be omitted; it is generated by the server.

name
string

Translated name of the entity this translation entity belongs to

description
string

Translated description of the corresponding description field of the main entity this translation belongs to

{
  • "$_type": "TeamTranslation",
  • "id": "string",
  • "name": "string",
  • "description": "string"
}

TextCannedResponseSearchFilter

$_type
string
Default: "TextCannedResponseSearchFilter"
Value: "TextCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "TextCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

TextChatSuggestionResponse

$_type
string
Default: "TextChatSuggestionResponse"
Value: "TextChatSuggestionResponse"
type
string (EChatSuggestionResponseType)
Enum: "EMPTY" "TEXT"
enum-descriptions: ["EMPTY","TEXT"]
suggestionText
string

The suggested text

{
  • "$_type": "TextChatSuggestionResponse",
  • "type": "EMPTY",
  • "suggestionText": "string"
}

TextMessageData

$_type
string
Default: "TextMessageData"
Value: "TextMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (QuickReply) [ items ]

Optional quick replies which will be displayed above the chat input as a possible response options

{
  • "$_type": "TextMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "quickReplies": [
    ]
}

TextPostMessageData

$_type
string
Default: "TextPostMessageData"
Value: "TextPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

Array of objects (QuickReply) [ items ]

Optional list of quick replies available to the message's recipients

Max number of quick replies is 13.

{
  • "$_type": "TextPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "quickReplies": [
    ]
}

TextQuestionMessageData

$_type
string
Default: "TextQuestionMessageData"
Value: "TextQuestionMessageData"
id
string

The ID of the message

conversationId
string

Conversation ID this message belongs to

externalMessengerChannelId
string

ID of the external messenger channel connected to the conversation. Null if the conversation is not connected to an external messenger.

accountId
string

ID of the account this message and conversation belong to

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

senderPersonPresenceId
string

ID of the person presence who sent the message.

May be null if the message was sent by the system.

serverTimestamp
integer <int64>

UTC timestamp when the message was received by the server
Empty when sending a new message to the collaboration server

sendTimestamp
integer <int64>

UTC timestamp when the message was sent by the client.
Empty when sending a new message to the collaboration server

type
string (EMessageType)
Enum: "TEXT" "SYSTEM" "FILE" "CARD" "LIST" "APPROVAL_REQUEST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY" "QUESTION_ABORTED" "RECORDING_AVAILABLE"
enum-descriptions: ["TEXT","SYSTEM","FILE","CARD","LIST","APPROVAL_REQUEST","MULTICHOICE_QUESTION","RATING_QUESTION","TEXT_QUESTION","REPLY","QUESTION_ABORTED","RECORDING_AVAILABLE"]

The message type of a conversation message

recipientPersonIds
Array of strings

Person IDs of the recipients of the message. If null, all active participations are recipients.

fallbackText
string

Text representation of the message which is used in following cases:

  • Unblu cannot restore the complex content of the message anymore
  • Push notifications
  • For the last message in the conversation overview
The text doesn't contain markdown.
The fallback text can be provided by the sender (bot, external messenger) or is generated when missing. It may, however, not always be a perfect textual representation of the message.

actionId
string

The same value as in the messageID field. This field is maintained for reasons of backwards compatibility, since previously, it wasn't possible to provide bots and external messengers with the ID of the messages they'd created.

sourceId
string

A custom ID which identifies where this message initially came from

botThreadId
string

An ID which identifies the bot thread this message belongs. Null if the message is not part of a bot thread.

internal
boolean

Flag indicating whether the message is internal and only visible to agents. If 'false', the message is public and visible for everyone.

replyToMessageId
string

Optional ID that identifies the message that this message is replying to

text
string

Text of the message

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

questionType
string (ETextQuestionType)
Enum: "SHORT_TEXT" "LONG_TEXT" "URL" "EMAIL" "PHONE" "DATE" "TIME" "DATETIME" "NUMBER"
enum-descriptions: ["SHORT_TEXT: Reply should only be a short text.","LONG_TEXT: Reply can be be a long text. Visually displayed with a larger input field.","URL: Reply has to be a URL","EMAIL: Reply has to be a mail address","PHONE: Reply has to be a phone number","DATE: Reply has to be a date","TIME: Reply has to be a time","DATETIME: Reply has to be a date and a time","NUMBER: Reply has to be a number"]

Type of a question message. Defines the reply value of a text message.

hint
string

Hint which is displayed inside the reply field to give the user a hint, what the answer should contain.
Optional value

minCharacters
integer <int32>

Minimum amount of characters the user has to answer with.
Optional value

maxCharacters
integer <int32>

Maximum amount if characters the user can answer with.
Optional

additionalRegex
string

The reply has to match this regex.
Optional value

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

answerStatus
string (EAnswerStatus)
Enum: "PENDING" "ANSWERED" "TIMEDOUT" "CANCELED"
enum-descriptions: ["PENDING: Question is not answered yet","ANSWERED: Question was successfully answered","TIMEDOUT: Question was running into a timeout","CANCELED: Question was canceled by the system, a bot or an external messenger channel"]

The state of a question message

{
  • "$_type": "TextQuestionMessageData",
  • "id": "string",
  • "conversationId": "string",
  • "externalMessengerChannelId": "string",
  • "accountId": "string",
  • "senderPerson": {
    },
  • "senderPersonPresenceId": "string",
  • "serverTimestamp": 0,
  • "sendTimestamp": 0,
  • "type": "TEXT",
  • "recipientPersonIds": [
    ],
  • "fallbackText": "string",
  • "actionId": "string",
  • "sourceId": "string",
  • "botThreadId": "string",
  • "internal": true,
  • "replyToMessageId": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "questionType": "SHORT_TEXT",
  • "hint": "string",
  • "minCharacters": 0,
  • "maxCharacters": 0,
  • "additionalRegex": "string",
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string",
  • "answerStatus": "PENDING"
}

TextQuestionPostMessageData

$_type
string
Default: "TextQuestionPostMessageData"
Value: "TextQuestionPostMessageData"
type
string (EPostMessageType)
Enum: "TEXT" "FILE" "CARD" "LIST" "MULTICHOICE_QUESTION" "RATING_QUESTION" "TEXT_QUESTION" "REPLY"
enum-descriptions: ["TEXT: See `TextPostMessageData`","FILE: See `FilePostMessageData`","CARD: See `CardPostMessageData`","LIST: See `ListPostMessageData`","MULTICHOICE_QUESTION: See `MultichoiceQuestionPostMessageData`","RATING_QUESTION: See `RatingQuestionPostMessageData`","TEXT_QUESTION: See `TextQuestionPostMessageData`","REPLY: See `ReplyPostMessageData`"]

Type of a message which is send to the collaboration server

fallbackText
string

Optional fallback text which is used when:

  • Unblu can't restore the complex content of a message
  • A push notification couldn't be decrypted
  • Last message in the conversation overview
The usage of this field is recommended especially for complex message types.
The value must not contain markdown.
If no fallback is given, a fallback text based on the content of the message is generated. This may however not always be a perfect textual representation of the message.

text
string

Message text

textType
string (EConversationMessageTextType)
Enum: "SIMPLE_TEXT" "MARKDOWN"
enum-descriptions: ["SIMPLE_TEXT: Text will be interpreted as simple text. <p> Auto link detection will still be possible.","MARKDOWN: Text will be interpreted as Markdown. <p> The supported Markdown subset depends on the message type."]

How text in a conversation message should be interpreted.

questionType
string (ETextQuestionType)
Enum: "SHORT_TEXT" "LONG_TEXT" "URL" "EMAIL" "PHONE" "DATE" "TIME" "DATETIME" "NUMBER"
enum-descriptions: ["SHORT_TEXT: Reply should only be a short text.","LONG_TEXT: Reply can be be a long text. Visually displayed with a larger input field.","URL: Reply has to be a URL","EMAIL: Reply has to be a mail address","PHONE: Reply has to be a phone number","DATE: Reply has to be a date","TIME: Reply has to be a time","DATETIME: Reply has to be a date and a time","NUMBER: Reply has to be a number"]

Type of a question message. Defines the reply value of a text message.

hint
string

Hint which is displayed inside the reply field to give the user a hint, what the answer should contain.
Optional value

minCharacters
integer <int32>

Minimum amount of characters the user has to answer with.
Optional value

maxCharacters
integer <int32>

Maximum amount if characters the user can answer with.
Optional

additionalRegex
string

The reply has to match this regex.
Optional value

declinable
boolean

Whether the question can be declined

declineLabel
string

Label for the decline button which will also be used as text for the reply

declineValue
string

Value which will be propagated as reply value if the question is declined

{
  • "$_type": "TextQuestionPostMessageData",
  • "type": "TEXT",
  • "fallbackText": "string",
  • "text": "string",
  • "textType": "SIMPLE_TEXT",
  • "questionType": "SHORT_TEXT",
  • "hint": "string",
  • "minCharacters": 0,
  • "maxCharacters": 0,
  • "additionalRegex": "string",
  • "declinable": true,
  • "declineLabel": "string",
  • "declineValue": "string"
}

TimestampOperator

$_type
string
Default: "EqualsTimestampOperator"
Value: "EqualsTimestampOperator"
type
string (ETimestampOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator","GREATER_THAN: Check if the value is greater than the one provided in the operator","GREATER_THAN_OR_NULL: Check if the value is null or greater than the one provided in the operator","LOWER_THAN: Check if the value is lower than the one provided in the operator","LOWER_THAN_OR_NULL: Check if the value is null or lower than the one provided in the operator","IN: Check if the value is one of the one provided in the operator","NOT_IN: Check if the value is not one of the one provided in the operator","IS_NULL: Check if the value is null","IS_NOT_NULL: Check if the value is not null","IN_RANGE: Check if the value is in the range of the provided values. Results equal to the provided values are included.","NOT_IN_RANGE: Check if the value is NOT in the range of the provided values. Results equal to the provided values are not included."]
value
integer <int64>
Example
{
  • "$_type": "EqualsTimestampOperator",
  • "type": "EQUALS",
  • "value": 0
}

TitleCannedResponseSearchFilter

$_type
string
Default: "TitleCannedResponseSearchFilter"
Value: "TitleCannedResponseSearchFilter"
field
string (ECannedResponseSearchFilterField)
Enum: "KEY" "TITLE" "TEXT" "OWNER_ID" "OWNER_TYPE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["KEY: Filter by the 'key' attribute","TITLE: Filter by the 'title' attribute","TEXT: Filter by the 'text' attribute","OWNER_ID: Filter by the 'ownerId' attribute","OWNER_TYPE: Filter by the 'ownerType' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (StringOperator)
{
  • "$_type": "TitleCannedResponseSearchFilter",
  • "field": "KEY",
  • "operator": {
    }
}

TokboxSessionIdConversationHistorySearchFilter

$_type
string
Default: "TokboxSessionIdConversationHistorySearchFilter"
Value: "TokboxSessionIdConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TokboxSessionIdConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

TokboxSessionIdConversationSearchFilter

$_type
string
Default: "TokboxSessionIdConversationSearchFilter"
Value: "TokboxSessionIdConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "TokboxSessionIdConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

TopicConversationHistorySearchFilter

$_type
string
Default: "TopicConversationHistorySearchFilter"
Value: "TopicConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (StringOperator)
{
  • "$_type": "TopicConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

TopicConversationSearchFilter

$_type
string
Default: "TopicConversationSearchFilter"
Value: "TopicConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (StringOperator)
{
  • "$_type": "TopicConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

TypeExternalMessengerChannelSearchFilter

$_type
string
Default: "TypeExternalMessengerChannelSearchFilter"
Value: "TypeExternalMessengerChannelSearchFilter"
field
string (EExternalMessengerChannelSearchFilterField)
Enum: "NAME" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "TYPE"
enum-descriptions: ["NAME: Filter by the 'name' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","TYPE: Filter by the 'type' attribute"]
any (ExternalMessengerChannelTypeOperator)
{
  • "$_type": "TypeExternalMessengerChannelSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

User

$_type
string
Default: "User"
Value: "User"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

string or Avatar (object)
expand-query-key: avatar
type: ExpandableField

Avatar of the entity: id that can be expanded.

username
string

The username for the login. Maximum length of 250 characters. Depending on the configuration, this may also be the email address.
Cannot be omitted when creating or updating a user and 'com.unblu.storage.user.useEmailAsUsername' is set to 'false'.
When creating or updating a user, and 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', this field can be omitted. If provided, its value must be the same as that of the 'email' field.

email
string

The user's email address. Maximum length of 250 characters. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'false', the email may be an empty string or set to null. If 'com.unblu.storage.user.useEmailAsUsername' is set to 'true', the field is mandatory.

phone
string

The phone number of the user. Maximum length of 100 characters.

teamId
string

The ID of the team the user belongs to. If omitted when creating a user, it is filled by the server with the ID of the account's default team.

authorizationRole
string (EAuthorizationRole)
Enum: "SUPER_ADMIN" "TECHNICAL_ADMIN" "ADMIN" "SUPERVISOR" "REGISTERED_USER" "WEBUSER" "ANONYMOUS_USER"
enum-descriptions: ["SUPER_ADMIN: Super admin role. Only for unblu or system admins","TECHNICAL_ADMIN: Technical admin role.","ADMIN: Admin role. For Admins of the system","SUPERVISOR: Supervisor role. For users which manage teams","REGISTERED_USER: User role. For normal users (agents)","WEBUSER: Webuser role. For internal representation of users from the outside","ANONYMOUS_USER: Anonymous role. For internal representation of unknown users"]

The authorization role is mainly used for access definition of a service

displayName
string

The display name of the user. Calculated by the server. Can be omitted when creating a user.

firstName
string

The first name of the user. Maximum length of 250 characters. Cannot be omitted.

lastName
string

The user's last name. Maximum length of 250 characters. Cannot be omitted.

externallyManaged
boolean

True if the user is externally managed and cannot be edited in the Unblu user interface. If omitted, the property is set to false.

virtualUser
boolean

True if the user is purely virtual (they weren't created as the result of an LDAP sync, for instance) and thus can't be edited in the Unblu UI. If omitted, the property is set to false, and the user is considered to be a physical user.

object
expand-query-key: configuration
type: Map

The entity's configuration properties. Only contains values when the 'expand' query parameter is used with the value 'configuration'. Not filled in webhook events.

object
expand-query-key: metadata
type: Map

The entity's metadata properties. Only contains values when the 'expand' query parameter is used with the value 'metadata'. Not filled in webhook events.

{
  • "$_type": "User",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "avatar": "string",
  • "username": "string",
  • "email": "string",
  • "phone": "string",
  • "teamId": "string",
  • "authorizationRole": "SUPER_ADMIN",
  • "displayName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "externallyManaged": true,
  • "virtualUser": true,
  • "configuration": {
    },
  • "metadata": {
    }
}

UserIdAuditChangeSearchFilter

$_type
string
Default: "UserIdAuditChangeSearchFilter"
Value: "UserIdAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (IdOperator)

Defines operators used for comparing id fields in tables.

{
  • "$_type": "UserIdAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

UserInfo

$_type
string
Default: "UserInfo"
Value: "UserInfo"
userId
string

The id of the user

userName
string

The username of the user

firstName
string

The first name of the user

lastName
string

The last name of the user

displayName
string

The display name of the user

{
  • "$_type": "UserInfo",
  • "userId": "string",
  • "userName": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "displayName": "string"
}

UserList

$_type
string
Default: "UserList"
Value: "UserList"
Array of objects (User) [ items ]

The list of mapped entities

{
  • "$_type": "UserList",
  • "items": [
    ]
}

UserModificationEvent

$_type
string
Default: "UserModificationEvent"
Value: "UserModificationEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

action
string (EntityModificationAction)
Enum: "CREATE" "UPDATE" "DELETE"
enum-descriptions: ["CREATE: Entity was created","UPDATE: Entity was updated","DELETE: Entity was deleted"]

Type of modification of an entity

object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

object (UserInfo)

User information which are normally used together with webhook events.

{
  • "$_type": "UserModificationEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "action": "CREATE",
  • "entity": {
    },
  • "editingUser": {
    }
}

UserOrderBy

$_type
string
Default: "UserOrderBy"
Value: "UserOrderBy"
field
string (EUserOrderByField)
Enum: "ID" "FIRST_NAME" "LAST_NAME" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","FIRST_NAME: Sort by the 'firstName' attribute","LAST_NAME: Sort by the 'lastName' attribute","AUTHORIZATION_ROLE: Sort by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "UserOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

UserPasswordContainer

$_type
string
Default: "UserPasswordContainer"
Value: "UserPasswordContainer"
object (User)

Model of a user. A user is normally an agent and/or a person who manages the system

password
string

The user's password.

NOTE: this can only be used to set a password. The server will always return null.

{
  • "$_type": "UserPasswordContainer",
  • "user": {
    },
  • "password": "string"
}

UserQuery

$_type
string
Default: "UserQuery"
Value: "UserQuery"
Array of any (UserSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (UserOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "UserQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

UserResult

$_type
string
Default: "UserResult"
Value: "UserResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (User) [ items ]

The returned list of entities

{
  • "$_type": "UserResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

UserSearchFilter

$_type
string
Default: "AuthorizationRoleUserSearchFilter"
Value: "AuthorizationRoleUserSearchFilter"
field
string (EUserSearchFilterField)
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (AuthorizationRoleOperator)
Example
{
  • "$_type": "AuthorizationRoleUserSearchFilter",
  • "field": "AUTHORIZATION_ROLE",
  • "operator": {
    }
}

UsernameAuditChangeSearchFilter

$_type
string
Default: "UsernameAuditChangeSearchFilter"
Value: "UsernameAuditChangeSearchFilter"
field
string (EAuditChangeSearchFilterField)
Enum: "CREATION_TIMESTAMP" "ENTITY_TYPE" "ENTITY_ID" "OWNER_ID" "OWNER_TYPE" "ENTITY_NAME" "INTERACTION_TYPE" "INTERACTION_NAME" "USERNAME" "USER_ID" "GLOBAL_CHANGE" "ACCOUNT_CHANGE" "CHANGE_TYPE" "AUTHORIZATION_ROLE" "IMPERSONATION_TYPE"
enum-descriptions: ["CREATION_TIMESTAMP","ENTITY_TYPE","ENTITY_ID","OWNER_ID","OWNER_TYPE","ENTITY_NAME","INTERACTION_TYPE","INTERACTION_NAME","USERNAME","USER_ID","GLOBAL_CHANGE","ACCOUNT_CHANGE","CHANGE_TYPE","AUTHORIZATION_ROLE","IMPERSONATION_TYPE"]
any (StringOperator)
{
  • "$_type": "UsernameAuditChangeSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

UsernamePersonSearchFilter

$_type
string
Default: "UsernamePersonSearchFilter"
Value: "UsernamePersonSearchFilter"
field
string (EPersonSearchFilterField)
Enum: "PERSON_SOURCE" "SOURCE_ID" "SOURCE_DATA" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "PERSON_TYPE" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["PERSON_SOURCE: Filter by the 'personSource' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","SOURCE_DATA: Filter by the 'sourceData' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","PERSON_TYPE: Filter by the 'personType' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "UsernamePersonSearchFilter",
  • "field": "PERSON_SOURCE",
  • "operator": {
    }
}

UsernamePersonTypedSearchFilter

$_type
string
Default: "UsernamePersonTypedSearchFilter"
Value: "UsernamePersonTypedSearchFilter"
field
string (EPersonTypedSearchFilterField)
Enum: "SOURCE_ID" "FIRST_NAME" "LAST_NAME" "USERNAME" "NICKNAME" "AUTHORIZATION_ROLE" "EMAIL" "PHONE" "TEAM_ID" "PERSON_LABEL_NAME" "COMPOUND"
enum-descriptions: ["SOURCE_ID: Filter by the 'sourceId' attribute","FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","NICKNAME: Filter by the 'nickname' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","EMAIL: Filter by the 'email' attribute","PHONE: Filter by the 'phone' attribute","TEAM_ID: Filter by the 'teamId' attribute","PERSON_LABEL_NAME: Filter by the 'name' attribute of assigned person labels","COMPOUND: Filter meant for linking other filters with logical AND/OR"]
any (StringOperator)
{
  • "$_type": "UsernamePersonTypedSearchFilter",
  • "field": "SOURCE_ID",
  • "operator": {
    }
}

UsernameUserSearchFilter

$_type
string
Default: "UsernameUserSearchFilter"
Value: "UsernameUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (StringOperator)
{
  • "$_type": "UsernameUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

UsersSetPasswordBody

password
string

The user's new password

{
  • "password": "string"
}

UsersTransformVirtualToPhysicalBody

username
string

The username of the User entity that should be converted to a physical user

{
  • "username": "string"
}

VirtualUserUserSearchFilter

$_type
string
Default: "VirtualUserUserSearchFilter"
Value: "VirtualUserUserSearchFilter"
field
string (EUserSearchFilterField)
Enum: "FIRST_NAME" "LAST_NAME" "USERNAME" "TEAM_ID" "EMAIL" "AUTHORIZATION_ROLE" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP" "VIRTUAL_USER" "EXTERNALLY_MANAGED"
enum-descriptions: ["FIRST_NAME: Filter by the 'firstName' attribute","LAST_NAME: Filter by the 'lastName' attribute","USERNAME: Filter by the 'username' attribute","TEAM_ID: Filter by the 'teamId' attribute","EMAIL: Filter by the 'email' attribute","AUTHORIZATION_ROLE: Filter by the 'authorizationRole' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VIRTUAL_USER: Filter by the 'virtualUser' attribute","EXTERNALLY_MANAGED: Filter by the 'externallyManaged' attribute"]
any (BooleanOperator)
{
  • "$_type": "VirtualUserUserSearchFilter",
  • "field": "FIRST_NAME",
  • "operator": {
    }
}

VisibilityConversationHistorySearchFilter

$_type
string
Default: "VisibilityConversationHistorySearchFilter"
Value: "VisibilityConversationHistorySearchFilter"
field
string (EConversationHistorySearchFilterField)
Enum: "COMPOUND" "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "LAST_MESSAGE_TIMESTAMP" "LAST_COMPLETED_RECORDING_TIMESTAMP" "VISIBILITY"
enum-descriptions: ["COMPOUND","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","LAST_MESSAGE_TIMESTAMP: Filter by the 'lastMessageTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","LAST_COMPLETED_RECORDING_TIMESTAMP: Filter by the 'lastCompletedRecordingTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","VISIBILITY"]
any (ConversationVisibilityOperator)
{
  • "$_type": "VisibilityConversationHistorySearchFilter",
  • "field": "COMPOUND",
  • "operator": {
    }
}

VisibilityConversationSearchFilter

$_type
string
Default: "VisibilityConversationSearchFilter"
Value: "VisibilityConversationSearchFilter"
field
string (EConversationSearchFilterField)
Enum: "CREATION_TIMESTAMP" "END_TIMESTAMP" "SCHEDULED_TIMESTAMP" "INITIAL_ENGAGEMENT_TYPE" "TOPIC" "CONTEXT_PERSON_ID" "AWAITED_PERSON_TYPE" "AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP" "ASSIGNEE_PERSON_ID" "PARTICIPANT_PERSON_ID" "PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID" "STATE" "END_REASON" "CONVERSATION_TEMPLATE_ID" "RECIPIENT_ID" "RECIPIENT_TYPE" "TOKBOX_SESSION_ID" "SOURCE_ID" "EXTERNAL_MESSENGER_CHANNEL_ID" "VISIBILITY" "COMPOUND"
enum-descriptions: ["CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","END_TIMESTAMP: Filter by the 'endTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","SCHEDULED_TIMESTAMP: Filter by the 'scheduledTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","INITIAL_ENGAGEMENT_TYPE: Filter by the 'initialEngagementType' attribute","TOPIC: Filter by the 'topic' attribute","CONTEXT_PERSON_ID: Filter by the 'contextPersonId' attribute","AWAITED_PERSON_TYPE: Filter by the 'awaitedPersonType' attribute","AWAITED_PERSON_TYPE_CHANGE_TIMESTAMP: Filter by the 'awaitedPersonTypeChangeTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","ASSIGNEE_PERSON_ID: Filter by the 'assigneePersonId' attribute","PARTICIPANT_PERSON_ID: Filter by the 'personId' of the participants","PARTICIPANT_EXTERNAL_MESSENGER_CONTACT_ID: Filter by the 'externalMessengerContactId' of the participants","STATE: Filter by the 'state' attribute","END_REASON: Filter by the 'endReason' attribute","CONVERSATION_TEMPLATE_ID: Filter by the 'conversationTemplateId' attribute","RECIPIENT_ID: Filter by the 'id' of the 'recipient' attribute","RECIPIENT_TYPE: Filter by the 'type' of the 'recipient' attribute","TOKBOX_SESSION_ID: Filter by the 'tokboxSessionId' attribute","SOURCE_ID: Filter by the 'sourceId' attribute","EXTERNAL_MESSENGER_CHANNEL_ID: Filter by the 'externalMessengerChannelId' attribute","VISIBILITY","COMPOUND"]
any (ConversationVisibilityOperator)
{
  • "$_type": "VisibilityConversationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

VisibilityRuleLabelSelectionOperator

$_type
string
Default: "EqualsVisibilityRuleLabelSelectionOperator"
Value: "EqualsVisibilityRuleLabelSelectionOperator"
type
string (EVisibilityRuleLabelSelectionOperatorType)
enum-descriptions: ["EQUALS: Check if the value is equal to the one provided in the operator","NOT_EQUALS: Check if the value is different from the one provided in the operator"]
value
string (EPersonVisibilityLabelSelection)
Enum: "ALL" "UNLABELED" "DEFINED_LABELS"
enum-descriptions: ["ALL: Any person matches the selection","UNLABELED: Only a person without any assigned labels matches the selection","DEFINED_LABELS: Only a person with all of the defined labels matches the selection"]
Example
{
  • "$_type": "EqualsVisibilityRuleLabelSelectionOperator",
  • "type": "EQUALS",
  • "value": "ALL"
}

VisitorInvitationCreatedEvent

$_type
string
Default: "VisitorInvitationCreatedEvent"
Value: "VisitorInvitationCreatedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "VisitorInvitationCreatedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

VisitorInvitationRedeemedEvent

$_type
string
Default: "VisitorInvitationRedeemedEvent"
Value: "VisitorInvitationRedeemedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

{
  • "$_type": "VisitorInvitationRedeemedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "redeemingPerson": {
    }
}

VisitorInvitationRenewedEvent

$_type
string
Default: "VisitorInvitationRenewedEvent"
Value: "VisitorInvitationRenewedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

Array of objects (ConversationLink) [ items ]

List of links to accept the visitor invitation event with the token.
Only one link may be used.

{
  • "$_type": "VisitorInvitationRenewedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0,
  • "links": [
    ]
}

VisitorInvitationRevokedEvent

$_type
string
Default: "VisitorInvitationRevokedEvent"
Value: "VisitorInvitationRevokedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

invitationId
string

Id of the invitation

object (ConversationData)

Metadata information about a conversation

token
string

Token (digits for pin or character sequence) requested to redeem or revoke the invitation

creationTimestamp
integer <int64>

Unix timestamp (ms) when the event was created

creatorType
string (EInvitationCreatorType)
Enum: "WEB_API" "SYSTEM" "AGENT" "VISITOR"
enum-descriptions: ["WEB_API: Invitation created with the API","SYSTEM: Invitation created by the system","AGENT: Invitation created by an agent","VISITOR: Invitation created by a visitor"]

The type of the person/system who created an invitation

object (PersonData)

Representation of a Person (Agent or Visitor).
If a message is send to unblu, only a small set of fields like the ID need to be defined.

email
string

Visitor email

nickname
string

Visitor nickname

expirationTimestamp
integer <int64>

Unix timestamp (ms) after witch the invitation is no longer valid

{
  • "$_type": "VisitorInvitationRevokedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "invitationId": "string",
  • "conversation": {
    },
  • "token": "string",
  • "creationTimestamp": 0,
  • "creatorType": "WEB_API",
  • "creatorPerson": {
    },
  • "email": "string",
  • "nickname": "string",
  • "expirationTimestamp": 0
}

VisitorLabelSelectionPersonVisibilityRuleSearchFilter

$_type
string
Default: "VisitorLabelSelectionPersonVisibilityRuleSearchFilter"
Value: "VisitorLabelSelectionPersonVisibilityRuleSearchFilter"
field
string (EPersonVisibilityRuleSearchFilterField)
Enum: "NAME" "AGENT_LABEL_SELECTION" "VISITOR_LABEL_SELECTION"
enum-descriptions: ["NAME: Filter by the 'name' attribute","AGENT_LABEL_SELECTION: Filter by the 'agentLabelSelection' attribute","VISITOR_LABEL_SELECTION: Filter by the 'visitorLabelSelection' attribute"]
any (VisibilityRuleLabelSelectionOperator)
{
  • "$_type": "VisitorLabelSelectionPersonVisibilityRuleSearchFilter",
  • "field": "NAME",
  • "operator": {
    }
}

VisitorPersonStateChangedEvent

$_type
string
Default: "VisitorPersonStateChangedEvent"
Value: "VisitorPersonStateChangedEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (VisitorPersonStateData)

State data of a visitor person

{
  • "$_type": "VisitorPersonStateChangedEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "personState": {
    }
}

VisitorPersonStateData

$_type
string
Default: "VisitorPersonStateData"
Value: "VisitorPersonStateData"
personId
string

The ID of the person this state data belongs to

onlineState
string (EOnlineState)
Enum: "ONLINE" "OFFLINE" "AWAY"
enum-descriptions: ["ONLINE","OFFLINE","AWAY"]

The state of a person/system

type
string (EPersonStateType)
Enum: "AGENT" "VISITOR"
enum-descriptions: ["AGENT","VISITOR"]
{
  • "$_type": "VisitorPersonStateData",
  • "personId": "string",
  • "onlineState": "ONLINE",
  • "type": "AGENT"
}

VisitorPersonStateResult

$_type
string
Default: "VisitorPersonStateResult"
Value: "VisitorPersonStateResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (VisitorPersonStateData) [ items ]

The returned list of entities

{
  • "$_type": "VisitorPersonStateResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

VisitorStateOrderBy

$_type
string
Default: "VisitorStateOrderBy"
Value: "VisitorStateOrderBy"
field
string (EVisitorStateOrderByField)
Value: "PERSON_ID"
enum-descriptions: ["PERSON_ID: Sort by the 'personId' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "VisitorStateOrderBy",
  • "field": "PERSON_ID",
  • "order": "ASCENDING"
}

VisitorStateQuery

$_type
string
Default: "VisitorStateQuery"
Value: "VisitorStateQuery"
Array of any (VisitorStateSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (VisitorStateOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "VisitorStateQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

VisitorStateSearchFilter

$_type
string
Default: "OnlineStateVisitorStateSearchFilter"
Value: "OnlineStateVisitorStateSearchFilter"
field
string (EVisitorStateSearchFilterField)
enum-descriptions: ["PERSON_ID: Filter by the 'personId' attribute","ONLINE_STATE: Filter by the 'onlineState' attribute"]
any (OnlineStateOperator)
Example
{
  • "$_type": "OnlineStateVisitorStateSearchFilter",
  • "field": "ONLINE_STATE",
  • "operator": {
    }
}

WebhookAuditEvent

$_type
string
Default: "WebhookAuditEvent"
Value: "WebhookAuditEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

entityType
string
entityId
string
changeType
string (AuditChangeType)
Enum: "CREATE" "UPDATE" "DELETE" "MARK_DELETED" "UNMARK_DELETED"
enum-descriptions: ["CREATE","UPDATE","DELETE","MARK_DELETED","UNMARK_DELETED"]
auditEntity
string
{
  • "$_type": "WebhookAuditEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "entityType": "string",
  • "entityId": "string",
  • "changeType": "CREATE",
  • "auditEntity": "string"
}

WebhookPingEvent

$_type
string
Default: "WebhookPingEvent"
Value: "WebhookPingEvent"
timestamp
integer <int64>

The time (Unix time in ms) when the event was generated

eventType
string

The name of the event

accountId
string

The account ID the event originated from

object (WebhookRegistration)

Model of a webhook registration. Registered webhooks for certain events are stored inside this model.

{
  • "$_type": "WebhookPingEvent",
  • "timestamp": 0,
  • "eventType": "string",
  • "accountId": "string",
  • "webhookConfiguration": {
    }
}

WebhookRegistration

$_type
string
Default: "WebhookRegistration"
Value: "WebhookRegistration"
id
string

Unique ID of the entity. When creating an entity, this property can be omitted; it's generated by the server.

creationTimestamp
integer <int64>

Creation timestamp of the entity. It is defined when the entity is first stored in Unblu. Any value sent to the Unblu server is ignored, so it can be omitted. Note: If you set this property, Unblu returns the same value, but it isn't written to storage and doesn't affect data consistency..

modificationTimestamp
integer <int64>

Timestamp of the last modification. This property is always optional and can be omitted, when sending data to the server. It is only of informational character. It is ignored, when sending it to the server and therefore can be omitted. Note: If you set this property it will return the same value but it will not be written to the storage and will not effect the data consistency.

version
integer <int64>

Version of the entity. Will be incremented on each change. New updates must always be based on the newest version, if not updates will be rejected. When creating an object, the version can be omitted.

accountId
string

ID of the account the entity belongs to. When creating an entity, the account ID can be omitted. It will be filled by the server with the account ID of the user currently logged in. When editing an entity, you must include the account ID.

name
string

Name of the webhook registration. Maximum length of 250 characters. Can not be omitted.

status
string (ERegistrationStatus)
Enum: "ACTIVE" "INACTIVE" "INACTIVE_UNAVAILABLE"
enum-descriptions: ["ACTIVE: Registration is active","INACTIVE: Registration is not active","INACTIVE_UNAVAILABLE: Registration is not active, because it is unavailable"]

Possible Webhook Registration Status

description
string

Description of the webhook registration. Maximum length of 500 characters. Can be omitted.

endpoint
string

The endpoint url of the webhook registration. To this url the requests for the webhook events are done. Maximum length of 4000 characters. Can be omitted, but should not.

apiVersion
string (EWebApiVersion)
Enum: "V1" "V2" "V3" "V4"
enum-descriptions: ["V1: Version 1 of the Web-API. Introduced with Unblu 4.x.","V2: Version 2 of the Web-API. Introduced with Unblu 5.","V3: Version 3 of the Web-API. Introduced with Unblu 6.","V4: Version 4 of the Web-API. Introduced with Unblu 8."]

Version of the Web-API. Version of API corresponds to a path element of the request URL. E.g.: /rest/v3/<service>/...

secret
string

A secret which is send with each webhook event. Maximum length of 4000 characters. Can be omitted.

events
Array of strings

Events for which the webhook endpoint is called, if they occur. Can not be omitted. Check the Webhook Events for possible values.

{
  • "$_type": "WebhookRegistration",
  • "id": "string",
  • "creationTimestamp": 0,
  • "modificationTimestamp": 0,
  • "version": 0,
  • "accountId": "string",
  • "name": "string",
  • "status": "ACTIVE",
  • "description": "string",
  • "endpoint": "string",
  • "apiVersion": "V1",
  • "secret": "string",
  • "events": [
    ]
}

WebhookRegistrationList

$_type
string
Default: "WebhookRegistrationList"
Value: "WebhookRegistrationList"
Array of objects (WebhookRegistration) [ items ]

The list of mapped entities

{
  • "$_type": "WebhookRegistrationList",
  • "items": [
    ]
}

WebhookRegistrationOrderBy

$_type
string
Default: "WebhookRegistrationOrderBy"
Value: "WebhookRegistrationOrderBy"
field
string (EWebhookRegistrationOrderByField)
Enum: "ID" "NAME" "STATUS" "DESCRIPTION" "ENDPOINT" "API_VERSION" "CREATION_TIMESTAMP" "MODIFICATION_TIMESTAMP"
enum-descriptions: ["ID: Sort by the 'id' attribute","NAME: Sort by the 'name' attribute","STATUS: Sort by the 'status' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","API_VERSION: Sort by the 'apiVersion' attribute","CREATION_TIMESTAMP: Sort by the 'creationTimestamp' attribute","MODIFICATION_TIMESTAMP: Sort by the 'modificationTimestamp' attribute"]
order
string (Order)
Enum: "ASCENDING" "DESCENDING"
enum-descriptions: ["ASCENDING: Sort in the ascending order (smallest to largest, 0 to 9, and/or A to Z)","DESCENDING: Sort in the descending order (largest to smallest, 9 to 0, and/or Z to A)"]
{
  • "$_type": "WebhookRegistrationOrderBy",
  • "field": "ID",
  • "order": "ASCENDING"
}

WebhookRegistrationQuery

$_type
string
Default: "WebhookRegistrationQuery"
Value: "WebhookRegistrationQuery"
Array of any (WebhookRegistrationSearchFilter) [ items ]

List of filters to narrow the search of entities

Array of objects (WebhookRegistrationOrderBy) [ items ]

List of criteria to order the search result list

offset
integer <int32>

Offset position in the result set to start pagination

limit
integer <int32>

Maximal amount of items returned

{
  • "$_type": "WebhookRegistrationQuery",
  • "searchFilters": [
    ],
  • "orderBy": [
    ],
  • "offset": 0,
  • "limit": 0
}

WebhookRegistrationResult

$_type
string
Default: "WebhookRegistrationResult"
Value: "WebhookRegistrationResult"
hasMoreItems
boolean

Flag to indicate if there are more items on the server

nextOffset
integer <int32>

If there are more items present on the server, this value can be used as the offset in the next query

Array of objects (WebhookRegistration) [ items ]

The returned list of entities

{
  • "$_type": "WebhookRegistrationResult",
  • "hasMoreItems": true,
  • "nextOffset": 0,
  • "items": [
    ]
}

WebhookRegistrationSearchFilter

$_type
string
Default: "CreationTimestampWebhookRegistrationSearchFilter"
Value: "CreationTimestampWebhookRegistrationSearchFilter"
field
string (EWebhookRegistrationSearchFilterField)
enum-descriptions: ["NAME: Sort by the 'name' attribute","DESCRIPTION: Sort by the 'description' attribute","ENDPOINT: Sort by the 'endpoint' attribute","CREATION_TIMESTAMP: Filter by the 'creationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds.","MODIFICATION_TIMESTAMP: Filter by the 'modificationTimestamp' attribute. Specify the timestamp in the UTC timezone with milliseconds."]
any (TimestampOperator)
Example
{
  • "$_type": "CreationTimestampWebhookRegistrationSearchFilter",
  • "field": "CREATION_TIMESTAMP",
  • "operator": {
    }
}

WriteAgentDeputyRelationshipsBody

$_type
string
Default: "WriteAgentDeputyRelationshipsBody"
Value: "WriteAgentDeputyRelationshipsBody"
agentUserId
string

The agent user ID for which the deputies should be defined

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_1 deputies

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_2 deputies

Array of objects (DeputyDefinition) [ items ]

All EDeputyDelegationEscalationLevel.LEVEL_3 deputies

{
  • "$_type": "WriteAgentDeputyRelationshipsBody",
  • "agentUserId": "string",
  • "level1": [
    ],
  • "level2": [
    ],
  • "level3": [
    ]
}