A channel is a communication stream that can be connected to Front. The most common channel type is email, but Twitter DMs, Facebook Messenger, and SMS are other great examples of communication channels that teams can use to send and receive messages in Front.
With the Channels API, a new channel type will display in the “Add a Channel” menu for your team, or for all Front teams if you apply to publish your app, along with the other channels that come out of the box with Front. Teams can then send and receive messages over that channel with all the collaboration, automation, and integration Front offers.
The user experience in Front is all about team collaboration, automation, and streamlining workflows through context. Creating a channel in Front means this new communication stream will be empowered by Front with comments, assignments, rules, synchronized contacts, and plugins. Take this example below, a user connected their Drift account and is immediately able to send and receive Drift messages without leaving Front as well as assign that conversation to a teammate or look up this contact in Salesforce.
There are two main functions your channel integration needs to be able to handle:
- Creating a new channel of your channel type. This is where our server tells your server that someone just added another channel of your channel type to their inbox. That is, they've create a new instance of your channel type. We send you this notification including the channel id we've assigned it. You respond to tell us what webhook url we should use to send messages over for this channel.
- Sending and receiving messages. This is the communication that happens with each inbound and outbound message between the two systems. See our API Reference for Front's endpoint definitions.
What does this mean for you? As the diagrams above illustrate, Front will send your system 2 types of payload (with an optional 3rd). You will need to build an endpoint for Front to hit which will handle these requests.
When Front sends a payload to your system, we expect a respond within 7 seconds. After 7 seconds, Front will timeout and return an error to the user, regardless of any response received after the 7 second timeout.
This endpoint will be hit when a user creates a new channel of your channel type.
This endpoint will be hit when a message is sent on your channel from Front.
[Optional to implement]
This endpoint will be hit when a user deletes a channel of your channel type. All functionality is complete in Front without you implementing this, but it is optional in case you want to keep your channel's data in sync.
|None. Just a delete request.|
Updated about a month ago