List of UserChats

Retrieve all the UserChat

Parameter

Accessible via URL https://api.channel.io/open/v4/user-chats and HTTP GET

📘

Present parameters in query string

Parameter

Example

Required

Description

Parameter type

state

assigned (closed, holding, solved, trash, unassigned)

Required

User chat state filter

Query

sortOrder

DESC(or ASC)

Required

Sorting order. Default value is DESC.

Query

since

eyJjaGF0S2V5IjoiZ3Jvn0=

Optional

Encoded key of the first user chat to be retrieved

Query

limit

40

Optional

Restrict the maximum number of direct chats to be retrieved. It should be between 1 to 500. Default value is 25.

Query

Example

GET http://api.channel.io/open/v4/user-chats?state=assigned&sortOrder=desc&since=eyJjaGF0S2V5IjoiZ3Jvn0=&limit=40

Response

Return a set of UserChat objects.

{
  "prev": "string",
  "next": "string",
  "messages": [
    {
      "chatKey": "string",
      "id": "string",
      "mainKey": "string",
      "threadKey": "string",
      "root": true,
      "channelId": "string",
      "chatType": "string",
      "chatId": "string",
      "personType": "string",
      "personId": "string",
      "requestId": "string",
      "language": "string",
      "createdAt": 1624450921796,
      "version": 0,
      "blocks": [
        {
          "type": "bullets",
          "language": "string",
          "value": "string",
          "blocks": [
            null
          ]
        }
      ],
      "plainText": "string",
      "updatedAt": 1624450921798,
      "buttons": [
        {
          "title": "string",
          "colorVariant": "cobalt",
          "url": "string"
        }
      ],
      "files": [
        {
          "id": "string",
          "type": "string",
          "name": "string",
          "size": 0,
          "contentType": "string",
          "duration": 0,
          "width": 0,
          "height": 0,
          "orientation": 0,
          "animated": true,
          "bucket": "string",
          "key": "string",
          "previewKey": "string",
          "channelId": "string",
          "chatType": "string",
          "chatId": "string"
        }
      ],
      "webPage": {
        "id": "string",
        "url": "string",
        "title": "string",
        "description": "string",
        "imageUrl": "string",
        "videoUrl": "string",
        "publisher": "string",
        "author": "string",
        "width": 0,
        "height": 0,
        "bucket": "string",
        "previewKey": "string",
        "logo": "string",
        "name": "string"
      },
      "log": {
        "action": "changeName",
        "values": [
          "string"
        ],
        "triggerType": "string",
        "triggerId": "string"
      },
      "reactions": [
        {
          "emojiName": "string",
          "personKeys": [
            "string"
          ]
        }
      ],
      "profileBot": [
        {
          "id": "string",
          "key": "string",
          "type": "string",
          "name": "string",
          "value": {
            "s": "string",
            "n": "string",
            "b": {
              "short": 0,
              "char": "string",
              "int": 0,
              "long": 0,
              "float": 0,
              "double": 0,
              "direct": true,
              "readOnly": true
            },
            "m": {},
            "l": [
              null
            ],
            "ss": [
              "string"
            ],
            "ns": [
              "string"
            ],
            "bs": [
              {
                "short": 0,
                "char": "string",
                "int": 0,
                "long": 0,
                "float": 0,
                "double": 0,
                "direct": true,
                "readOnly": true
              }
            ],
            "null": true,
            "bool": true
          }
        }
      ],
      "state": "sending",
      "options": [
        "actAsManager"
      ],
      "marketing": {
        "type": "string",
        "id": "string",
        "advertising": true,
        "exposureType": "fullScreen"
      },
      "supportBot": {
        "id": "string",
        "revisionId": "string",
        "sectionId": "string",
        "stepIndex": 0,
        "buttons": [
          {
            "text": "string",
            "nextSectionId": "string"
          }
        ],
        "submitButtonIndex": 0
      },
      "threadMsg": true,
      "broadcastedMsg": true,
      "rootMessageId": "string"
    }
  ],
  "sessions": [
    {
      "key": "string",
      "chatId": "string",
      "chatKey": "string",
      "updatedKey": "string",
      "unreadKey": "string",
      "channelId": "string",
      "alert": 0,
      "unread": 0,
      "watch": "all",
      "readAt": 1624450911782,
      "receivedAt": 1624450911782,
      "postedAt": 1624450911782,
      "updatedAt": 1624450911686,
      "createdAt": 1624450911602,
      "version": 0,
      "id": "string",
      "chatType": "string",
      "personType": "string",
      "personId": "string"
    }
  ],
  "userChats": [
    {
      "id": "string",
      "channelId": "string",
      "appUserKey": "string",
      "state": "closed",
      "managed": true,
      "userId": "string",
      "name": "string",
      "description": "string",
      "handling": "waiting",
      "supportBot": {
        "id": "string",
        "revisionId": "string",
        "sectionPath": [
          "string"
        ]
      },
      "marketing": {
        "type": "string",
        "id": "string",
        "enableSupportBot": true,
        "supportBotId": "string"
      },
      "pluginId": "string",
      "sourcePage": "string",
      "messengerType": "string",
      "messengerId": "string",
      "managerIds": [
        "string"
      ],
      "assigneeId": "string",
      "tags": [
        "string"
      ],
      "firstOpenedAt": 1624450928199,
      "openedAt": 1624450928199,
      "createdAt": 1624450928200,
      "frontMessageId": "string",
      "frontUpdatedAt": 1624450928200,
      "deskMessageId": "string",
      "deskUpdatedAt": 1624450928202,
      "firstAssigneeIdAfterOpen": "string",
      "firstRepliedAtAfterOpen": 1624450928199,
      "oneStop": true,
      "waitingTime": 0,
      "avgReplyTime": 0,
      "totalReplyTime": 0,
      "replyCount": 0,
      "resolutionTime": 0,
      "operationWaitingTime": 0,
      "operationAvgReplyTime": 0,
      "operationTotalReplyTime": 0,
      "operationReplyCount": 0,
      "operationResolutionTime": 0,
      "askedAt": 1624450928199,
      "closedAt": 1624450928199,
      "snoozedAt": 1624450928275,
      "expiresAt": 1624450928276,
      "version": 0
    }
  ],
  "users": [
    {
      "id": "string",
      "channelId": "string",
      "memberId": "string",
      "veilId": "string",
      "unifiedId": "string",
      "name": "string",
      "profile": {
        "name": "string",
        "empty": true,
        "email": "string",
        "avatarUrl": "string",
        "mobileNumber": "string",
        "additionalProp1": {},
        "additionalProp2": {},
        "additionalProp3": {}
      },
      "profileOnce": {
        "name": "string",
        "empty": true,
        "email": "string",
        "avatarUrl": "string",
        "mobileNumber": "string",
        "additionalProp1": {},
        "additionalProp2": {},
        "additionalProp3": {}
      },
      "tags": [
        "string"
      ],
      "alert": 0,
      "unread": 0,
      "popUpChatId": "string",
      "blocked": true,
      "unsubscribed": true,
      "hasChat": true,
      "hasPushToken": true,
      "language": "string",
      "country": "string",
      "city": "string",
      "latitude": 0,
      "longitude": 0,
      "web": {
        "device": "string",
        "os": "string",
        "osName": "string",
        "browser": "string",
        "browserName": "string",
        "sessionsCount": 0,
        "lastSeenAt": 1624450929876
      },
      "mobile": {
        "device": "string",
        "os": "string",
        "osName": "string",
        "appName": "string",
        "appVersion": "string",
        "sessionsCount": 0,
        "lastSeenAt": 1624450929876
      },
      "sessionsCount": 0,
      "lastSeenAt": 1624450921506,
      "createdAt": 1624450921667,
      "updatedAt": 1624450921506,
      "version": 0,
      "managedKey": 0,
      "member": true,
      "email": "string",
      "avatarUrl": "string",
      "mobileNumber": "string",
      "systemLanguage": "string"
    }
  ],
  "managers": [
    {
      "id": "string",
      "channelId": "string",
      "accountId": "string",
      "username": "string",
      "name": "string",
      "description": "string",
      "email": "string",
      "mobileNumber": "string",
      "role": "owner",
      "removed": true,
      "createdAt": 1624450921873,
      "defaultGroupWatch": "all",
      "defaultDirectChatWatch": "all",
      "defaultUserChatWatch": "all",
      "operatorScore": 0,
      "touchScore": 0,
      "avatar": {
        "bucket": "string",
        "key": "string",
        "width": 0,
        "height": 0
      },
      "operatorEmailReminder": true,
      "operator": true,
      "operatorScheduling": true,
      "operatorTimeRanges": {
        "timeRanges": [
          {
            "dayOfWeeks": [
              "mon"
            ],
            "from": 0,
            "to": 0
          }
        ]
      },
      "avatarUrl": "string",
      "managerId": "string"
    }
  ],
  "chatTags": [
    {
      "id": "string",
      "channelId": "string",
      "colorVariant": "red",
      "name": "string",
      "key": "string",
      "description": "string",
      "followerIds": [
        "string"
      ],
      "createdAt": 1624450911912
    }
  ]
}

Implementation note

The number of user chats retrieved in this endpoint is restricted by the limit query parameter, and is capped to values in the closed interval [1, 500].

Retrieved user chats can be filtered by opened, snoozed, and closed through the state query parameter.

Pagination is supported through the since query parameter along with the next value contained in the root object of the JSON response. Successive queries to this endpoint using the previous next value as the since parameter will ultimately retrieve all user chats.

The since parameter can be left empty to start the list.