Message types
Chatlayer.ai supports different types of chat messages, each with its own object structure. Chat messages can be sent:
In the response from the API plugin
From your webhook to Chatlayer.ai
Each message has two mandatory fields:
type: the messages type (carousel, buttons, list, media, text, …)
config: the message configuration
Text
A text message includes a simple bot text message.
Request format:
Property | Value | Description |
text | string | The user test message. |
Button Template
A button template includes a simple bot text message and an array of button objects.
Request format:
Message object for button template:
Property | Value | Description |
attachment | object | The attachment object. |
Attachment object:
Property | Value | Description |
type | string | The attachment type (template) |
payload | object | The attachment payload object. The object structure depends of the attachment type |
Attachment payload object:
Property | Value | Description |
template_type | string | The template type (button) |
text | string (optional) | The text above the buttons ( only for a button template type) |
buttons | array | An array of button objects |
Button object:
Property | Value | Description |
type | string | The button type (web_url - postback - phone_number - element_share) |
title | string | The button caption |
payload | string (will contain the phone number when type is phone_number) - optional | The button payload. Only for postback type buttons. This is an Opaque identifier please don't try to change or extract meaning out of it. |
url | string - optional | The button url. Only for url type buttons |
Quick replies
A quick reply message includes a simple bot text message and an array of quick reply objects.
Request format:
Message object for quick replies:
Property | Value | Description |
text | string | The text before the quick replies. |
quick_replies | array | An array of quick reply objects |
Quick reply object:
Property | Value | Description |
content_type | string | The quick reply content type (text) |
title | string | The button caption |
payload | string | The quick reply payload. This is an Opaque identifier please don't try to change or extract meaning out of it. |
Generic template
A generic template (carousel) includes a list of generic template elements. The generic template element is a simple structured message that includes a title, subtitle, image, and up to three buttons
Request format:
Message object for generic template:
Property | Value | Description |
attachment | object | The attachment object. |
Attachment object:
Property | Value | Description |
type | string | The attachment type (template) |
payload | object | The attachment payload object. The object structure depends of the attachment type |
Attachment payload object:
Property | Value | Description |
template_type | string | The template type (generic) |
elements | array | An array of generic template elements (carousel cards) |
Generic template element object:
Property | Value | Description |
title | string | The carousel card title |
subtitle | string | The carousel card subtitle |
image_url | string | The carousel card image |
item_url | string | The carousel card url. When the user clicks the image the web page opens in a new browser tab. |
buttons | array | An array of button objects |
Button object:
Property | Value | Description |
type | string | The button type (web_url - postback - phone_number - element share) |
title | string | The button caption |
payload | string (will contain the phone number when type is phone_number) - optional | The button payload. Only for postback type buttons. This is an Opaque identifier please don't try to change or extract meaning out of it. |
url | string - optional | The button url. Only for url type buttons |
List template
The list template is a list of 2-4 structured items with an optional global button rendered at the bottom. Each item may contain a thumbnail image, title, subtitle, and one button. You may also specify a default_action object that sets a URL that will be opened when the item is tapped.
Request format:
Message object for list template:
Property | Value | Description |
attachment | object | The attachment object. |
Attachment object:
Property | Value | Description |
type | string | The attachment type (template) |
payload | object | The attachment payload object. The object structure depends of the attachment type |
Attachment payload object:
Property | Value | Description |
template_type | string | The template type (list) |
elements | array | An array of list elements |
buttons | array | An array of general list button objects |
List template element object:
Property | Value | Description |
title | string | The carousel card title |
subtitle | string | The carousel card subtitle |
image_url | string | The carousel card image |
default_action | object | The default action when the user taps the list item. |
buttons | array | An array of list item button objects |
Default action object:
Property | Value | Description |
type | string | The action type (web_url) |
url | string | The action ur. When the user taps the list element this web page will open in a new browser tab. |
Button object:
Property | Value | Description |
type | string | The button type (web_url - postback - phone_numberl - element share) |
title | string | The button caption |
payload | string (type phone_number) - optional | The button payload. Only for postback type buttons. This is an Opaque identifier please don't try to change or extract meaning out of it. |
url | string - optional | The button url. Only for url type buttons |
Attachment
An attachment represents a file such as images and video.
Request format:
Message object for attachment:
Property | Value | Description |
attachment | object | The attachment object. |
Attachment object:
Property | Value | Description |
type | string | The attachment type (image-video) |
payload | object | The attachment payload object. The object structure depends of the attachment type |
Attachment payload object:
Property | Value | Description |
url | string | The attachment url |
Rich text
Rich text is text to which formatting is applied. Possible formatting is bold, italic, underlined, hyperlink to URL, hyperlink to block, heading (1-4), bulleted list and ordered list.
Request format:
Message object for attachment:
Property | Value | Description |
richText | string | The rich text message |
Last updated