Third Party API Guide
Purpose
The purpose of this guide is to provide information on how third party applications can connect with Expertflow CX to push activities through the Expertflow CX interface.
Intended Audience
The guide is intended for developers with knowledge of REST APIs.
Technical Overview
Before the addition of third-party activities, clients such as channel connector, bot connector, and agent desk could only send pre-defined types of CIM Message into system. Now, the clients can send any type of CIM Message. The system will continue to handle the recognized types in the same way as before.
The Expertflow CX 3rd-party activitites API a communication interface for handling generic activities pushed by 3rd-party apps. The communication flow is given as follows:
3rd-party applications can push activities in the form of CIM Messages.
The
Sender, Body
and any attribute fromCustomer
,Channel Session ID
orConversation ID
is mandatory for pushing third-party activities.Upon receiving the request, the API:
Validates the request i.e. if user has passed the val
id
CIM Messages.
Transform the the activity into THIRD_PARTY_ACTIVITY event. See CIM Events document for events detail.
If the conversation is active, publish the activity on the conversation topic. Otherwise, it pushes the activity to Conversations store.
The activities that can be pushed by 3rd-party applications can be categorized into following types:
Stand-alone activities: These are activities independent of a customer conversation. For example, a 3rd party scheduler pushes a scheduled activity for preserving history of actions against a customer in CX Activities.
Conversation-based activities: These are activities associated with a Conversation. For example, an agent's outbound activity, a survey activity, etc.
Channel-specific activities: These activities are related to a customer's ChannelSession. For example, an activity to push a call recording link in form of CIM URL Message for a call.
Conversations API
The structure and properties of API is documented here in Conversation API (3rd-party apps) page.