Help Scout

Help Scout is a cloud-based SaaS (software as a service) HIPAA-compliant help desk solution that helps businesses and teams manage their customer relationships with flexibility and affordability.

Data integration: Skyvia supports importing data to and from Help Scout, exporting Help Scout data to CSV files, replicating Help Scout data to relational databases, and synchronizing Help Scout data with other cloud apps and relational databases.

Backup: Skyvia Backup does not support Help Scout.

Query: Skyvia Query supports Help Scout.

Establishing Connection

To create a connection to Help Scout, sign in to Help Scout via OAuth 2.0.

Creating Connection

  1. Click Sign In with Help Scout in Connection Editor.

    Connection Editor window

  2. In the opened window, enter your email and password used when signing up to Help Scout.

    Log in to HelpScout

  3. Skyvia will request permission to access your Help Scout account. Click Authorize to give permissions.

    Grant Permission

Connector Specifics

Object Peculiarities

Customers

When importing data to the Customers object, no fields are marked as required in the Import mapping settings. It is because you can specify any field describing contact details.

When inserting data to the Customers object, you must map the Emails, Phones, Chats, SocialProfiles, Websites, Addresses and Properties fields.

For example, the valid value for the Emails field looks like this:

1
2
3
4
 [ {
 "type": "work",
 "value": "[email protected]"
 } ]

You can also import data to the above fields via such child objects as CustomerPhones, CustomerEmails, CustomerWebsites, CustomerSocialProfiles and CustomerChats by mapping the required CustomerId.

CustomerAddresses

Skyvia supports UPDATE and DELETE operations for this object.

The DELETE operation does not physically delete the CustomerAddresses record. Instead, it clears the values from the city, state, postalCode, country, and lines fields.

Conversations

When importing data to the Conversations object, the Threads field is required for mapping. You must pass its value in the following format:

1
2
3
4
5
6
7
 [ {
    "type": "customer",
    "customer": {
      "email": "[email protected]"
   },
    "text": "Hello, Help Scout?"
 } ]

Besides the required Threads field, you must also map the Customer field.

You can do it in two ways by specifying the following:

  1. If the customer already exists in HelpScout, map the PrimaryCustomer_Id field value.
  2. If the customer doesn’t exist, specify the customer email as the PrimaryCustomer_Email field value. In this case, a new corresponding record will automatically appear in the Customers object, and this record Id will also appear in the PrimaryCustomer_Id field of the Conversations object.

If you don’t map the customer Id or email, you will receive an error from the Help Scout API, saying that the parameters in the request are missing.

Reports

Skyvia supports the Help Scout reports as separate objects: ReportCompanyCustomersHelped_Currents, ReportChats, ReportCompanyDrillDowns, ReportCompanyOveralls, ReportConversationBusyTimes, ReportConversationDrilldowns, ReportConversationOveralls, ReportEmails, ReportHappinessRatings, ReportHappinessOveralls, ReportProductivityOveralls, ReportPhones, and ReportUserOverall.

To successfully select data from these objects, you must use filters by Current_StartDate and Current_EndDate fields. You can optionally use filters by the Previous_StartDate and Previous_EndDate fields.

ReportCompanyCustomersHelped_Currents

You can optionally use the filter by the ViewBy field to get data from this report successfully. The valid values for filtering are Day, Week, Month.

ReportCompanyDrillDowns

You must use the filter by the Range field to get data from this report successfully. The valid values for filtering are Replies, FirstReplyResolved, Resolved, ResponseTime, FirstResponseTime, HandleTime.

ReportUserOverall

You must use a filter by the User_Id field to get data from this report successfully.

Custom Objects

The Customers object contains custom fields (Properties). Skyvia supports the INSERT operation only. The UPDATE operation support is in our roadmap.

You can use custom fields of the following types: Number(Int32), Text(String), Url(String, 4000 characters max), Date, and Dropdown (String).

DML Operations Support

Skyvia supports the following DML operations for Help Scout objects:

OPERATION OBJECT
INSERT, UPDATE, DELETE Webhooks
UPDATE, DELETE CustomerAddressess, CustomerChats, CustomerEmails, CustomerPhones, CustomerSocialProfiles, CustomerWebsites
INSERT, DELETE Conversations
INSERT, UPDATE Customers
DELETE Users

Stored Procedures

Skyvia represents part of the supported Help Scout 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.

CreateCustomerPhones

To create a phone number record for existing customers, use the command

call CreateCustomerPhones(:customerId,:type,:value)

PARAMETER NAME DESCRIPTION
Type Phone number type. Valid values: Fax, Home, Mobile, Other, Pager, Work
Value Phone number itself (String)

CreateCustomerEmails

To create an email record for an existing customer, use the command

call CreateCustomerEmails(:customerId,:type,:value)

PARAMETER NAME DESCRIPTION
Type Email type. Valid values: Home, Other, Work
Value Email itself (String)

CreateCustomerWebsites

To create a website for existing customer, use the command

call CreateCustomerWebsites(:customerId,:value)

PARAMETER NAME DESCRIPTION
Value Website URL

CreateCustomerSocialProfiles

To create a customer’s profile on social media, use the command

call CreateCustomerSocialProfiles(:customerId,:type,:value)

PARAMETER NAME DESCRIPTION
Type Social profile type. Valid values: aboutme, facebook, flickr, forsquare, google, googleplus, linkedin, other, quora, tungleme, twitter, youtube
Value Social Profile handle (URL, for example)

CreateCustomerChats

To create a customer chat, use the command

call CreateCustomerChats(:customerId,:type,:value)

PARAMETER NAME DESCRIPTION
Type Chat type. Valid values: aim, gtalk, icq, msn, other, qq, skype, xmpp, yahoo.
Value Chat handle

CreateThreadChat

To add a conversation thread, use the command

call CreateThreadChat(:conversationId,:customerId,:text,:imported,:attachments)

PARAMETER NAME DESCRIPTION
Text The chat text
Imported Boolean. Valid values: true, false
Attachments Optional. The list of attachments in the array format

CreateThreadCustomer

To add a customer thread to a conversation or reopen the updated conversation (if Imported = true), use the command

call CreateThreadCustomer (:conversationId, :customerId, :text, :imported, :cc, :bcc, :attachments)

PARAMETER NAME DESCRIPTION
Text The chat text
Imported Boolean. Valid values: true, false
Cc List of emails in carbon copy in array format
Bcc List of emails in blind carbon copy in the array format
Attachments Optional. The list of attachments in the array format

CreateThreadNote

To add a note to a thread, use the command

call CreateThreadNote(:conversationId,:text,:status,:imported,:attachments)

PARAMETER NAME DESCRIPTION
Text The note text
Status Valid values: active, all, closed, open, pending, spam
Imported Boolean. Valid values: true, false
Attachments Optional. The list of attachments in the array format

CreateThreadPhone

To add a phone thread, use the command

call CreateThreadPhone(:conversationId,:customerId,:text,:imported,:attachments)

PARAMETER NAME DESCRIPTION
Text The phone conversation text
Imported Boolean. Valid values: true, false
Attachments Optional. The list of attachments in the array format

CreateThreadReply

To create a reply thread, use the command

call CreateThreadReply (:conversationId, :customerId, :text, :draft, :imported, :cc, :bcc, :attachments)

PARAMETER NAME DESCRIPTION
Text The chat text
Draft Boolean. Valid values: true, false. Defines if the reply is draft or not
Imported Boolean. Valid values: true, false
Cc List of emails in carbon copy in array format
Bcc List of emails in blind carbon copy in the array format
Attachments Optional. The list of attachments in the array format

UpdateConversationTag

To update tags in conversation, use command

call UpdateConversationTag(:conversationId,:tags)

PARAMETER NAME DESCRIPTION
Tags The list of tags to modify in array format, for example [ "tag1", "tag2" ]

To add a new tag to the list, you must specify the existing values and a new value together. For example, the current Tags value is [ "tag1", "tag2" ]. To add “tag3” to the list, you must specify [ "tag1", "tag2", "tag3" ] in the command.

To delete all the tags, specify only [].

To delete the tag from the list, you must specify the list excluding the tags you want to delete. For example, the current Tags value is [ "tag1", "tag2", "tag3" ]. To delete "Tag3", exclude it from the list and specify [ "tag1", "tag2" ].

UpdateConversationField

To update custom fields in the Conversations object, use the command

call UpdateConversationField(:conversationId,:fields)

PARAMETER NAME DESCRIPTION
Fields List of fields for an update in the following format [{"id":"44977","value":"Custom field 108.88"},{"id":"44978","value":"88.88"}]

Incremental Replication and Synchronization

Skyvia supports Replication with Incremental Updates for the Users, Teams, TeamMembers, Tags, Workflows, MailBoxes, Conversations, Customers objects.

The Conversations object contains only CreatedDate field, thus Skyvia detects only new records.

Skyvia supports Synchronization only for the Customers object.

Supported Actions

Skyvia supports all the common actions for Help Scout.