Overview
Currently, installation of Conversational Cloud Applications is performed by LivePerson's internal resources (account team, DevSupport, Tier 1, etc). In order to request this installation, you must first fill out the following schema according to your application needs. Once that is done, please contact the relevant LivePerson resource for your account and they will perform the installation.
Once the application has been installed, the LivePerson resource will send you your client_id and client_secret which are required for OAuth 2.0 authentication. In the future, installing an application will be possible on your own through Conversational Cloud, but currently the installation process must be followed.
Conversational Cloud Application Manifest Schema — Parameters
Property | Description | Type | Required | Notes |
---|---|---|---|---|
client_name | Choose the unique name (e.g. com.liveperson.applicationName) for your application | string | Yes | Can be internationalized by adding 5646 language tag after hash chararcter. Max length: 128 |
display_name | This will be the presentation name for this app all over our system. | string | No | Max length: 128 |
description | Application short description | string | No | max length: 256 |
grant_types | Authorization grant according to OAuth 2.0 | array | No | supported values: "client_credentials" "authorization_code" "refresh_token" |
redirect_uris | The URIs to which the authorization code or access token will be sent after redirect | array of strings | No | max length: 128 |
response_types | OAuth 2.0 response type strings that the client can use at the authorization endpoint | array | No | supported values: "code" "token" "id_token" "id_token token" |
scope | Space-separated list of scope values that the client can use when requesting access tokens | string | No | supported values: "msg.consumer" max length: 128 |
logo_uri | URL string that references a logo for the client | string | No | logo size is must be exactly 70x70 pixels max length: 1024 |
capabilities | Conversational Cloud capabilities utilized by this app. This array defines the various Conversational Cloud services or applications that can interface with this application | object (See supported values structure in the tables below) | No | supported values: "webhooks", "engagement". webhooks: Contains the endpoints where UMS (Messaging Service) will send notifications engagement: This determines how the application interfaces with Conversational Cloud engagements and their creation |
quick_launch_enabled | Whether the application should be displayed in the quicklaunch menu | boolean | No | default value: false |
entry_uri | The application launch URI (Start the SSO flow) | string | No | max length: 1024 |
webhooks (optional object within capabilities object)
Property | Description | Type | Required | Notes |
---|---|---|---|---|
ms.MessagingEventNotification .ContentEvent | Indicates the HTTPS configuration endpoint of your server to receive notifications of type ContentEvent. | webhook | No | |
ms.MessagingEventNotification .RichContentEvent | Indicates the HTTPS configuration endpoint of your server to receive notifications of type RichContentEvent. | webhook | No | |
ms.MessagingEventNotification .AcceptStatusEvent | Indicates the HTTPS configuration endpoint of your server to receive notifications of type AcceptStatusEvent. | webhook | No | |
ms.MessagingEventNotification .ChatStateEvent | Indicates the HTTPS configuration endpoint of your server to receive notifications of type ChatStateEvent. | webhook | No | |
ms.MessagingEventNotification .ExConversationChangeNotification | Indicates the HTTPS configuration endpoint of your server to receive notifications of type ExConversationChangeNotification. | webhook | No |
webhook (optional object within webhooks object)
Property | Description | Type | Required | Notes |
---|---|---|---|---|
endpoint | The url to send the notification to, including query parameters | string | Yes | Starts by "https://" |
max_retries | The max number of retry attempts to send the notification if it fails | integer | No | minimum value: 0, maximum value: 5 |
headers | List of http headers to add to the notification request | array of headers | No | Example value: [{"header_name": "NAME1", "header_value": "VALUE1"},{"header_name": "NAME2", "header_value": "VALUE2"}] |
engagements
Property | Description | Type | Required | Notes |
---|---|---|---|---|
design_engagement | Toggles the ability to design the engagement button and apparence | boolean | Yes | |
design_window | Toggles the ability to add an engagement window | boolean | Yes | |
entry_point | Indicates where to display the engagement which invites consumers to engage with you | array | Yes | supported values: section, url |
visitor_behavior | The browsing behavior of visitors which is of interest to you. | array | Yes | supported values: visited_location, time_on_location, flow, engaged_in_session, about_to_abandon, cart_value, visitor_error, viewed_products, service_activity |
target_audience | The visitors you specifically want to target | string | Yes | supported values: external_referral, search_keywords, ip, platform, geo_location, returning_visitors, marketing_source, customer_type, age, balance, customer_id, gender, store_zip_code, store_number, company_size, registration_date |
goal | Indicates what you want to achieve with the engagement | string | Yes | supported values: url, purchase_total, num_of_pages, lead, service_activity |
consumer_identity | If the consumer does or doesn't have to be an authenticated user | array | Yes | The value has to be set to auth. supported values: auth, unauth |
language_selection | Indicates the possibility of language selection | boolean | Yes |
Custom connector example
{
"client_name": "com.liveperson.MyConnectorApp",
"display_name": "Custom connector example",
"description": "This is my first LE-App description",
"grant_types": [
"client_credentials"
],
"response_types": ["code"],
"redirect_uris": [
"http://{YOUR_APPLICATION_DOMAIN}/{CALLBACK_PATH}"
],
"scope": "msg.consumer",
"logo_uri": "https://img.icons8.com/cotton/64/000000/domain.png",
"quick_launch_enabled": true,
"entry_uri": "https://{YOUR_APPLICATION_DOMAIN}/appentry",
"capabilities": {
"webhooks": {
"ms.MessagingEventNotification.ContentEvent": {
"endpoint": "https://your/webhooks/endpoint",
"max_retries": 3,
"headers": [{"header_name": "NAME", "header_value": "VALUE"}]
},
"ms.MessagingEventNotification.RichContentEvent": {
"endpoint": "https://your/webhooks/endpoint",
"max_retries": 5,
"headers": [{"header_name": "NAME", "header_value": "VALUE"}]
},
"ms.MessagingEventNotification.AcceptStatusEvent": {
"endpoint": "https://your/webhooks/endpoint",
"max_retries": 1
},
"ms.MessagingEventNotification.ChatStateEvent": {
"endpoint": "https://your/webhooks/endpoint"
},
"cqm.ExConversationChangeNotification": {
"endpoint": "https://your/webhooks/endpoint"
}
},
"engagement": {
"design_engagement": false,
"design_window": false,
"entry_point": [
"section"
],
"visitor_behavior": [
"visited_location",
"time_on_location",
"flow",
"engaged_in_session",
"about_to_abandon",
"cart_value",
"cart_items",
"visitor_error",
"viewed_products",
"service_activity"
],
"target_audience": [
"external_referral",
"search_keywords",
"ip",
"platform",
"geo_location",
"returning_visitors",
"marketing_source",
"customer_type",
"age",
"balance",
"customer_id",
"gender",
"store_zip_code",
"store_number",
"company_size",
"registration_date"
],
"goal": [
"url",
"purchase_total",
"num_of_pages",
"lead",
"service_activity"
],
"consumer_identity": [
"auth"
],
"language_selection": false
}
}
}
Web application example
{
"client_name": "com.liveperson.MyWebApp",
"display_name": "Web application example",
"response_types": ["code"],
"scope": "msg.consumer",
"entry_uri": "https://{YOUR_APPLICATION_DOMAIN}/appentry",
"grant_types": [
"authorization_code",
"refresh_token"
],
"redirect_uris": [
"http://{YOUR_APPLICATION_DOMAIN}/{CALLBACK_PATH}"
]
}