Use this API to register client callback Authentication methods using oAuth or Basic Authentication.
Conversation Manager APIs
This section provides the requisite APIs needed to create Conversation Manager accounts and to configure conversation workflows. To create the Conversation Manager acccount, use the Conversation APIs in this order when setting up a complete eGain application:
- Authentication
- Client Application
- Participant
- Channel
- Orchestration
- Account
After the account is created you can use the following APIs to send / receive messages.
- Conversation
- Asset
Note: You can configure your system to use third party Bots and third party Channels. The API instructions provided here assume you are using eGain's application setup.
Request
Use this API to register and define custom channel parameters in the Conversation Manager which is used for chat messages. New Account API process flow: Authenticiation > Client Application > Participant > Channel > Orchestration > Account
Note: You can configure your system to use third party Channels. The API instructions provided here assume you are using eGain's application setup.
Client application must have 'app.conversation.conversationmgr.manage' scope assigned.
Register new custom channel
Unique channel type. Do not prefix with 'custom.' for channels supported by eGain.
base64 encoded image. This icon is used in eGain Chat Advisor desktop for activities of this channel. If eGain Chat is used for live agents then use icon file in ‘png’ format with pixel dimensions 32 X 32.
Channel restriction on inbound(from customer) and outbound( to customer) messages.
- Production Serverhttps://api.egain.cloud/conversation/conversationmgr/v3/channels
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
- Create BYOC channel
- Create Google Business Messaging Channel
- Create Twilio SMS channel
- Create Whatsapp channel
curl -i -X POST \
https://api.egain.cloud/conversation/conversationmgr/v3/channels \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"type": "custom_channel",
"icon": "<base64>",
"displayName": "Custom Channel",
"description": "Custom Channel",
"active": true,
"restrictions": {
"inbound": {
"maxTextLength": 140,
"features": [
"typing_events",
"attachments",
"richText"
],
"attachmentPolicy": {
"enabled": true,
"maxSize": 12345,
"type": "block",
"extensions": [
"bat",
"exe"
]
}
},
"outbound": {
"maxTextLength": 140,
"systemMessages": true,
"midChatAuth": true,
"features": [
"typing_events",
"attachments",
"richText"
],
"richMessageTypes": [
"listpicker",
"quickreply",
"timepicker",
"richlink"
],
"attachmentPolicy": {
"enabled": true,
"maxSize": 12345,
"type": "allow",
"extensions": [
"jpeg",
"txt"
]
}
}
},
"l10nProperties": [
{
"language": "en-US",
"properties": [
{
"name": "msg_hub_retain_and_retry",
"value": "Thank you for reaching out. We will respond to you at the earliest."
},
{
"name": "msg_hub_off_hours",
"value": "Thank you for your inquiry. Our service hours are 9am-5pm PST, Monday-Friday. If you are trying within the service hours and still getting this message, please try again after some time."
},
{
"name": "msg_hub_invalid_content_type_to_customer",
"value": "This content type is not currently supported."
},
{
"name": "msg_hub_invalid_content_type_to_agent",
"value": "This content type is not currently supported."
},
{
"name": "msg_hub_channel_msg_failed",
"value": "Message could not be delivered. Please try again after some time."
},
{
"name": "msg_hub_blocked_file_extension",
"value": "Attachment file type '\''{0}'\'' is not allowed."
},
{
"name": "msg_hub_attachment_size_exceeds_limit",
"value": "File could not be sent. It exceeded the maximum limit of {0}"
}
]
}
]
}'{ "id": "45a095f4-d0ee-4220-a689-22b541c58f67" }
- Production Serverhttps://api.egain.cloud/conversation/conversationmgr/v3/channels
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://api.egain.cloud/conversation/conversationmgr/v3/channels \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'OK
{ "channel": [ { … } ] }
- Production Serverhttps://api.egain.cloud/conversation/conversationmgr/v3/channels/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://api.egain.cloud/conversation/conversationmgr/v3/channels/7b6c5fff-036e-4a40-b68a-a67c592fc079 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'OK
Unique channel type. Do not prefix with 'custom.' for channels supported by eGain.
base64 encoded image. This icon is used in eGain Chat Advisor desktop for activities of this channel. If eGain Chat is used for live agents then use icon file in ‘png’ format with pixel dimensions 32 X 32.
Channel restriction on inbound(from customer) and outbound( to customer) messages.
{ "id": "6121306b-59c2-4a2c-afee-1e025a84b0d9", "type": "custom_channel", "icon": "<base64>", "displayName": "Custom Channel", "description": "Custom Channel", "active": true, "created": "2021-06-11T21:14:41.836Z", "modified": "2021-06-11T23:14:41.836Z", "restrictions": { "inbound": { … }, "outbound": { … } }, "l10nProperties": [ { … } ] }
Update channel
Unique channel type. Do not prefix with 'custom.' for channels supported by eGain.
base64 encoded image. This icon is used in eGain Chat Advisor desktop for activities of this channel. If eGain Chat is used for live agents then use icon file in ‘png’ format with pixel dimensions 32 X 32.
Channel restriction on inbound(from customer) and outbound( to customer) messages.
- Production Serverhttps://api.egain.cloud/conversation/conversationmgr/v3/channels/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
https://api.egain.cloud/conversation/conversationmgr/v3/channels/7b6c5fff-036e-4a40-b68a-a67c592fc079 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"type": "custom_channel",
"icon": "<base64>",
"displayName": "Custom Channel",
"description": "Custom Channel",
"active": true,
"modified": "2021-06-11T23:14:41.836Z",
"restrictions": {
"inbound": {
"maxTextLength": 140,
"features": [
"typing_events",
"attachments",
"richText"
],
"attachmentPolicy": {
"enabled": true,
"maxSize": 12345,
"type": "block",
"extensions": [
"bat",
"exe"
]
}
},
"outbound": {
"maxTextLength": 140,
"systemMessages": true,
"midChatAuth": true,
"features": [
"typing_events",
"attachments",
"richText"
],
"richMessageTypes": [
"listpicker",
"quickreply",
"timepicker",
"richlink"
],
"attachmentPolicy": {
"enabled": true,
"maxSize": 12345,
"type": "block",
"extensions": [
"bat",
"exe"
]
}
}
},
"l10nProperties": [
{
"language": "en-US",
"properties": [
{
"name": "msg_hub_retain_and_retry",
"value": "Thank you for reaching out. We will respond to you at the earliest."
},
{
"name": "msg_hub_off_hours",
"value": "Thank you for your inquiry. Our service hours are 9am-5pm PST, Monday-Friday. If you are trying within the service hours and still getting this message, please try again after some time."
},
{
"name": "msg_hub_invalid_content_type_to_customer",
"value": "This content type is not currently supported."
},
{
"name": "msg_hub_invalid_content_type_to_agent",
"value": "This content type is not currently supported."
},
{
"name": "msg_hub_channel_msg_failed",
"value": "Message could not be delivered. Please try again after some time."
},
{
"name": "msg_hub_blocked_file_extension",
"value": "Attachment file type '\''{0}'\'' is not allowed."
},
{
"name": "msg_hub_attachment_size_exceeds_limit",
"value": "File could not be sent. It exceeded the maximum limit of {0}"
}
]
}
]
}'- Production Serverhttps://api.egain.cloud/conversation/conversationmgr/v3/channels/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X DELETE \
https://api.egain.cloud/conversation/conversationmgr/v3/channels/7b6c5fff-036e-4a40-b68a-a67c592fc079 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'