Skip to main content
Octadesk is a Brazilian customer service platform. The connector extracts your help desk tickets and every interaction on them (comments, replies, status changes, and automations), along with the people and structure around them: requesters (customers), agents, organizations, groups and their members, products, subjects, tags, custom fields, and forms. With it you can analyze your support volume, response and resolution times, and your team’s workload in your Lakehouse.
The connector reads the Octadesk API documented at api-docs.octadesk.services, which covers the ticket help desk. WhatsApp and chat conversations are not included.

Configuring Octadesk as a Source

In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Octadesk option from the list of connectors. Click Next and you’ll be prompted to add your access.

1. Add account access

Octadesk authenticates with an API token, the e-mail of the user who uses it, and your account’s subdomain. To create the token, in Octadesk go to Tickets > Geral > Código de integração, create a token, and copy it (it starts with octa.).
Use the e-mail and token of an administrator. Agents, groups, custom fields, and other settings are only visible to users whose profile can see them; streams the user cannot see are skipped with a warning.
The following configurations are available:
  • Subdomain: the first part of your Octadesk address. For https://mycompany.octadesk.com, enter mycompany. Required.
  • User E-mail: the e-mail of an active Octadesk user. Required.
  • API Token: the token created in Código de integração. Required.
  • Start Date: on the first sync, tickets last updated from this date on are extracted, with their interactions. Later syncs only read tickets updated since the previous one. Required.
  • Requests Per Minute: how fast the connector may call Octadesk. The default is 120.
Once you’re done, click Next.

2. Select streams

Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis. You can select entire groups of streams or pick specific ones.
Tip: The stream can be found more easily by typing its name.
Select the streams and click Next.

3. Configure data streams

Customize how you want your data to appear in your catalog. Select the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table (which will effectively contain the fetched data) and the type of sync.
  • Layer: choose between the existing layers on your catalog. This is where you will find your new extracted tables as the extraction runs successfully.
  • Folder: a folder can be created inside the selected layer to group all tables being created from this new data source.
  • Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix to all tables at once and make this process faster!
  • Sync Type: Tickets and Ticket Interactions support INCREMENTAL. The other streams are FULL_TABLE. Read more about Sync Types here.
Once you are done configuring, click Next.

4. Configure data source

Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can define some additional settings:
  • Configure Delta Log Retention and determine for how long we should store old states of this table as it gets updated. Read more about this resource here.
  • Determine when to execute an Additional Full Sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while.
Once you are ready, click Next to finalize the setup.

5. Check your new source

You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.
For you to be able to see it on your Catalog, you need at least one successful source run.

Streams and Fields

Below you’ll find all available data streams from Octadesk and their corresponding fields. API reference: Octadesk API.
Timestamps are stored in UTC. Objects and lists (custom fields, interactions, comments, attachments, phone numbers) are stored as JSON text, and the most used values inside them also get their own columns (for example product_id, organization_name, person_email). Every table also has a raw_payload column with the whole record as Octadesk returned it.
Ticket Interactions are read one ticket at a time, for the tickets updated since the previous sync. The first sync of an account with many tickets can take a while; the following ones only read what changed.
Tickets of the account (GET /tickets/search), with requester, assignee, group, status, subject, product, and the first, last, and last human interaction. Read incrementally by the day of the last update: each sync reads the tickets updated since the previous one (the day before the last sync point is re-read).Primary key: id · Incremental key: last_date_update
Every interaction of the tickets read in the sync (GET /tickets/{number}/interactions, one call per ticket): public and internal comments, e-mail replies, status and property changes, and automation actions.Primary key: id · Incremental key: date_creation
Customers (requesters) registered in the account (GET /persons/requesters), with their organization, phone numbers, custom fields, and responsible agent.Primary key: id
Agents (employees) of the account (GET /persons/agents), with their role, permissions, and groups.Primary key: id
Organizations (companies) your customers belong to, disabled ones included (GET /organizations).Primary key: id
Agent groups (teams) of the account (GET /groups).Primary key: id
Agents that belong to each group, one row per group and agent (GET /groups/{id}/persons).Primary key: group_id, id
Statuses customers can be tagged with (GET /persons/contact-status).Primary key: id
Products registered in the account, disabled ones included (GET /products/search).Primary key: id
Product groups (catalogs) and the fields their products are described with (GET /products/groups).Primary key: id
Ticket subjects (assuntos), with their topic and topic group (GET /subjects).Primary key: id
Tags available to label tickets (GET /tags).Primary key: id
Custom fields configured for tickets, people, and organizations (GET /custom-fields). The field_id is the key each field appears under in the custom_field columns of the other streams.Primary key: id
Forms used to open tickets and register people (GET /forms).Primary key: id