Front
Front is a cloud-based customer operations platform that enables support, sales, and account management teams to streamline communication and deliver service at scale.
Data integration: Skyvia supports importing data to and from Front, exporting Front data to CSV files, replicating Front data to relational databases, and synchronizing Front data with other cloud apps and relational databases.
Backup: Skyvia Backup does not support Front.
Query: Skyvia Query supports Front.
Establishing Connection
To create a connection to Front, sign in with Front using your credentials.
Creating Connection
To connect to Front, perform the following steps:
-
click Sign In with Front in the Connection Editor and enter your Front credentials.
-
Click Authorize to give Skyvia your permission to access your Front data.
Additional Connection Parameters
Suppress Extended Requests
For the Teams object, Front API returns only part of the fields when querying multiple records. To query values of the Members field, Skyvia performs additional extended requests. Such API requests can be performed for each record of such an object. However, this can decrease performance and significantly increase the number of API calls used.
You can select the Suppress Extended Requests checkbox to reduce the number of API calls.
Use Custom Fields
Select this checkbox to make Front custom fields available in Skyvia.
Connector Specifics
Object Peculiarities
Conversations
When inserting or updating data in this object, map either the TeammateIds or InboxId field in addition to the required fields.
Front API supports importing conversations with the Type = discussion only.
The Status field valid values for the UPDATE operation are Archived, Open, Deleted, or Spam.
Drafts
This object requires mapping the ChannelId field for the UPDATE operation.
MessageTemplates
When you query this object, the values in the Links_Related_ParentFolder fields are returned as URLs in the results. For example, https://entecheco.api.frontapp.com/message_template_folders/rsf_fqfq. When you insert data or update this field, you must specify only the message folder ID part, for instance, rsf_fqfq.
Channels
The Type field valid values for the INSERT operation are custom, smtp, and twilio.
Filtering Specifics
Skyvia supports the following native filters for Front objects.
Object | Field | Operator |
---|---|---|
Contacts | < , <= , > , >= |
UpdatedDate |
Conversations | = |
Status |
Events | = |
Type |
Events | < , <= , > , >= |
EmittedAt |
Use only these filters to improve performance and save API calls. You can use filters with other fields or operators, but it may increase API call usage.
Sorting Specifics
Front API supports sorting for the following objects and fields:
Object | FieldS |
---|---|
Contacts | UpdatedDate |
Tags | Id |
Events | EmittedAt |
MessageTemplateFolders | CreatedDate or UpdatedDate (only one field at a time) |
MessageTemplates | CreatedDate or UpdatedDate (only one field at a time) |
Custom Fields
The following objects support custom fields: Contacts, Teammates, Inboxes, Conversations, ConversationFollowers, ConversationInboxes, InboxTeammates. Custom fields support INSERT and UPDATE operations.
Front supports custom fields of the following types.
Front Data Type | DbType |
---|---|
String | String |
Inbox | String |
Teammate | String |
Enum | String |
DateTime | DateTime |
Number | Double |
Boolean | Boolean |
Incremental Replication and Synchronization
Skyvia supports Replication with Incremental Updates for the Tags, ChildrenTags, MessageTemplateFolders, MessageTemplates, and Contacts objects. Skyvia tracks only new records for the ContactNotes, Conversations, ConversationMessages, and Drafts.
Skyvia supports Synchronization for the Tags, MessageTemplateFolders and MessageTemplates objects.
DML Operations Support
Operation | Object |
---|---|
INSERT, UPDATE, DELETE | Contacts, Drafts, MessageTemplateFolders, MessageTemplates, Tags |
INSERT | ChildrenTags, ContactNotes, ConversationComments, ConversationMessages, Inboxes |
INSERT, UPDATE | Channels, Conversations |
INSERT, DELETE | ContactGroups |
UPDATE | Teammates |
Stored Procedures
Skyvia represents part of the supported Front features as stored procedures. You can call a stored procedure, for example, as a text of the command in the ExecuteCommand action in a Target component of a Data Flow or in Query.
ValidateChannel
To validate the specific channel, use the command.
call ValidateChannel(:channelId)
AddConversationFollowers and DeleteConversationFollowers
The following command adds teammates to the list of followers of a conversation.
call AddConversationFollowers(:conversation_id,:teammate_ids)
This command removes teammates from the list of followers of a conversation.
Parameter | Description |
---|---|
Conversation_id | The identifier of a conversation. |
Teammate_ids | IDs of the teammate to add to the followers list. You can supply the teammates’ emails alternatively. For example, the email skyvia@example.com, must be provided in the format [“alt:email:skyvia@example.com”]. |
AddTeammatesInbox
To give access to one or more teammates to an inbox, use the following command.
call AddTeammatesInbox(:inbox_id,:teammate_ids)
Parameter | Description |
---|---|
Inbox_id | The identifier of the inbox. |
Teammate_ids | IDs of the teammate to add to the followers list. You can supply the teammates’ emails alternatively. For example, the email skyvia@example.com, must be provided in the format [“alt:email:skyvia@example.com”] |
AddTeammatesToTeam and RemoveTeammatesFromTeam
To add teammates to a team or to remove teammates from a team, use the corresponding command.
call AddTeammatesToTeam(:team_id,:teammate_ids)
or
call RemoveTeammatesFromTeam(:team_id,:teammate_ids)
Parameter | Description |
---|---|
Team_id | The identifier of the team. |
Teammate_ids | IDs of the teammate to add to the followers list. You can supply the teammates’ emails alternatively. For example, the email skyvia@example.com, must be provided in the format [“alt:email:skyvia@example.com”] |
UpdateConversationAssignee
The following command assigns or unassigns a conversation. To unassign a conversation, set Assignee_id to null.
call UpdateConversationAssignee(:conversation_id,:assignee_id)
CreateConversation
The following command sends a new message from a channel.
call CreateConversation(:channel_id,:to,:body,:cc,:bcc,:sender_name,:subject,:author_id,:text,:options_archive,:options_tagids,:signature_id,:should_add_default_signature)
You can omit the unnecessary parameters if needed.
Parameter | Description |
---|---|
Channel_id | Required. The sending channel ID. Alternatively, you can supply the sending channel address. |
To | Required. The list of the message recipients. |
Body | Required. The message text. |
Cc | The list of the recipients who get a message copy. |
Bcc | The list of the recipients who get a blind copy of this message. |
Sender_name | Name used for the sender info of the message. |
Subject | Subject of the message for an email message. |
Author_id | ID of the teammate on whose behalf the answer is sent. |
Text | Text version of the body for email messages. |
Options_archive | Boolean. Archive the conversation right when sending the message. |
Options_tagids | Boolean. List of tag IDs to add to the conversation. |
Signature_id | ID of the signature to attach to this draft. If null, no signature is attached. |
should_add_default_signature | Whether or not Front should try to resolve a signature for the message. It is ignored if Signature_id is specified. The default value is false. |
ReceiveCustomMessages
Use this command to receive a custom message in Front.
This command works for custom channels ONLY.
You can omit the unnecessary parameters if needed.
call ReceiveCustomMessages(:channel_id, :sender_handle, :body, :sender_contactid, :sender_name, :subject, :body_format, :attachments, :metadata_headers, :metadata_threadref)
Parameter | Description |
---|---|
Channel_id | Required. The sending channel ID. Alternatively, you can supply the sending channel address. |
Sender_handle | Required. Handle of the sender. It can be any string used to identify the sender uniquely. |
Body | Required. The message text. |
Sender_contactid | ID of the contact in Front corresponding to the sender. |
Sender_name | Name of the sender. |
Subject | Subject of the message. |
Body_format | Format of the message body. It can be markdown (default) or html. |
Attachments | Binary data of attached files. Must use Content-Type: multipart/form-data if specified. |
Metadata_headers | Custom object where any internal information can be stored |
Metadata_threadref | Reference, which will be used to thread messages. If omitted, Front threads by sender instead. |
ImportMessage
The following command imports a new message in an inbox.
You can omit the unnecessary parameters if needed.
call ImportMessage(:inbox_id, :sender_handle, :sender_authorid, :sender_name, :to, :cc, :bcc, :subject, :body, :body_format, :external_id, :created_at, :type, :assignee_id, :tags, :conversation_id, :attachments, :metadata_isinbound, :metadata_isarchived, :metadata_shouldskiprules, :metadata_threadref)
Parameter | Description |
---|---|
Inbox_id | Required. The identifier of the inbox. |
Sender_handle | Required. Handle of the sender. It can be any string used to identify the sender uniquely. |
To | Required. The list of the message recipients. |
Body | Required. The message text. |
External_id | Required. External identifier of the message. Front won’t import two messages with the same external ID. |
Created_at | Required. Date at which the message has been sent or received. |
Sender_authorid | ID of the teammate who is the author of the message. Ignored if the message is inbound. |
Sender_name | Name of the sender. |
Cc | The list of the recipients who get a message copy. |
Bcc | The list of the recipients who get a blind copy of this message. |
Subject | Subject of the message. |
Body_format | Format of the message body. It can be markdown (default) or html. Works for the email message type. |
Type | Type of the message to import. |
Assignee_id | ID of the teammate who will be assigned to the conversation. |
Tags | List of tag names to add to the conversation. |
Conversation_id | If supplied, Front will thread this message into conversation with the given ID. Note that including this parameter nullifies the Metadata_threadref parameter completely. |
Attachments | Binary data of attached files. Must use Content-Type: multipart/form-data if specified. |
Metadata_isinbound | Required. Boolean. Determines if a message is received (inbound) or sent (outbound) by you. |
Metadata_isarchived | Boolean. Determines if a message is archived after import. |
Metadata_shouldskiprules | Determines if rules should be skipped. True by default. |
Metadata_threadref | Reference, which will be used to thread messages. If omitted, Front threads by sender instead |
Supported Actions
Skyvia supports all the common actions for Front.