Release Status Released Supported By Stitch
Availability Premium Status Page Desk Status Page
Default Historical Sync 1 year Default Replication Frequency 30 minutes
Whitelisting Unsupported Destination Incompatibilities None

Connecting Desk

Connecting your Desk data to Stitch is a six-step process:

  1. Add Stitch as an app in your Desk account
  2. Retrieve your Desk Key and Secret
  3. Retrieve your Desk Token and Token Secret
  4. Add Desk as a Stitch data source
  5. Define the Historical Sync
  6. Define the Replication Frequency

Adding Stitch as an App in Your Desk Account

  1. Sign into your Desk account.
  2. Navigate to the Admin panel by clicking the link in the upper left section of the Agent interface.
  3. In the Admin panel, click the Settings option in the menu at the top of the window.
  4. When the Settings page displays, click the API option in the menu that appears on the left side of the window.
  5. Click the +Add API Application button.
  6. After clicking the button, a window will display. This is where the initial parameters for the API application are set. Complete the fields as follows:
    • Name: Stitch
    • Website URL: http://www.stitchdata.com
    • Callback URL: http://www.stitchdata.com
    • Support URL: http://docs.stitchdata.com
  7. When finished, click the Add button.

Retrieving Your Desk Key & Secret

  1. After the URL parameters have been successfully submitted, a screen detailing the parameters, Key, and Secret will display.
  2. Copy the Key and Secret into a text file - you’ll need easy access to them to complete the setup.

Retrieving Your Desk Token & Token Secret

  1. Click the Your Access Token link on the right side of the API Application page. A window containing your Token and Token Secret will display.
  2. Copy the Token and Token Secret into the text file that contains your Key and Secret. Be careful not to mix up the Secret and Token Secret or you’ll encounter errors when saving the integration in Stitch.

Add Desk as a Stitch Data Source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Desk icon.

  4. Enter a name for the integration. This is the name that will display on the for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Desk” would create a schema called stitch_desk in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Site URL field, enter your Desk.com website address. For example: https://stitch.desk.com
  6. Enter your Key, Secret, Token, and Token Secret into their respective fields.

Define the Historical Sync

The Sync Historical Data setting will define the starting date for your Desk integration. This means that:

  • For tables using Incremental Replication, data equal to or newer than this date will be replicated to your data warehouse.
  • For tables using Full Table Replication, all data - including records that are older, equal to, or newer than this date - will be replicated to your data warehouse.

Change this setting if you want to sync data beyond Desk’s default setting of 1 year. For a detailed look at historical syncs, check out the Syncing Historical SaaS Data guide.

Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Stitch offers two methods of creating a replication schedule:

  • Replication Frequency: This method requires selecting the interval you want replication to run for the integration. Start times of replication jobs are based on the start time and duration of the previous job. Refer to the Replication Frequency documentation for more information and examples.
  • Anchor scheduling: Based on the Replication Frequency, or interval, you select, this method “anchors” the start times of this integration’s replication jobs to a time you select to create a predictable schedule. Anchor scheduling is a combination of the Anchor Time and Replication Frequency settings, which must both be defined to use this method. Additionally, note that:

    • A Replication Frequency of at least one hour is required to use anchor scheduling.
    • An initial replication job may not begin immediately after saving the integration, depending on the selected Replication Frequency and Anchor Time. Refer to the Anchor Scheduling documentation for more information.

To help prevent overages, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Initial and historical replication jobs

After you finish setting up Desk, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Desk Schema

Stitch's Desk integration includes these tables:


cases

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: Yes

The cases table contains about the support cases in your Desk account.

Table Info & Attributes

cases & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

In addition to the fields listed below, our Desk integration will also include any custom fields.

cases Attributes

While we try to include everything Desk has here, this may not be a full list of attributes. Refer to Desk's documentation for a full list and description of each attribute.

  • Case ID (id)

  • external_id

  • blurb

  • subject

  • priority

  • description

  • status

  • type

  • labels*

  • locked_until

  • changed_at

  • active_at

  • language

  • suppress_rules

  • received_at

  • first_opened_at

  • last_opened_at

  • first_resolved_at

  • resolved_at

  • created_at

  • updated_at

customers

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: Yes

The customers table contains about the end-users in your Desk account.

Table Info & Attributes

customers & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

In addition to the fields listed below, our Desk integration will also include any custom fields.

customers Attributes

While we try to include everything Desk has here, this may not be a full list of attributes. Refer to Desk's documentation for a full list and description of each attribute.

  • Customer ID (id)

  • first_name

  • last_name

  • company

  • title

  • avatar

  • uid

  • background

  • language

  • locked_until

  • created_at

  • updated_at

  • emails*

  • phone numbers*

  • addresses*

  • access_private_portal

  • access_company_cases

replies

Replication Method: Key-based Incremental
Primary Key: case_id:reply_id
Contains Nested Structures?: No

The replies table contains the individual replies in cases.

Table Info & Attributes

Depending on the configuration of your Desk account, you may see more fields in this table than what’s listed here. For example: Tweet fields.

replies Attributes

While we try to include everything Desk has here, this may not be a full list of attributes. Refer to Desk's documentation for a full list and description of each attribute.

  • Case ID

  • Reply ID

  • subject

  • body

  • direction (in vs. out)

  • status

  • to

  • from

  • cc

  • bcc

  • client_type

  • suppress_rules

  • sent_by

  • sent_at

  • created_at

  • updated_at

users

Replication Method: Full Table
Primary Key: id
Contains Nested Structures?: No

The users table contains about the internal users of your Desk account.

Table Info & Attributes

users Attributes

While we try to include everything Desk has here, this may not be a full list of attributes. Refer to Desk's documentation for a full list and description of each attribute.

  • User ID (id)

  • name

  • public_name

  • email

  • email_verified

  • avatar

  • level

  • current_login_at

  • last_login_at

  • created_at

  • updated_at

user_groups

Replication Method: Full Table
Primary Key: user_id:id
Contains Nested Structures?: No

The user_groups table contains the groups your internal users belong to.

Table Info & Attributes

user_groups Attributes

While we try to include everything Desk has here, this may not be a full list of attributes. Refer to Desk's documentation for a full list and description of each attribute.

  • Group ID (id)

  • User ID (user_id)

  • Group Name



Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.