Skip to main content
Digisac is a Brazilian multichannel customer-service platform that centralizes WhatsApp, Telegram, Instagram, Facebook, e-mail and other channels into a single service desk, with departments, chatbots, campaigns, satisfaction surveys and a sales funnel. The connector extracts the service history — tickets, messages and contacts — along with the account configuration and the sales funnel, so you can analyse your customer service in your Lakehouse. Every Digisac account runs on its own address, so the connector asks for the URL of your platform in addition to the access token.

Configuring Digisac as a Source

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

1. Add account access

Digisac authenticates with a personal access token, sent as a Bearer token. To generate one, open the user menu in Digisac, go to Conta > API > Tokens de acesso pessoal and click Gerar token. Give the token a name, choose an expiration period and click Gerar token again.
Digisac only shows the token once, in the window that opens right after it is generated. Copy it before closing that window — it cannot be retrieved afterwards, and a new token has to be generated instead.
The expiration period is your choice: 30, 90 or 180 days, 1 year, or Não expirar. Pick Não expirar — with any other option the source stops extracting on the expiry date and the token has to be replaced by hand.
The token inherits the permissions of the user who created it. Generate it from a user with administrator permissions so the sync can reach every module — an operator token is denied access to part of the platform.
The following configurations are available:
  • Digisac URL: the address of your Digisac platform, the same one you use to log in — for example https://mycompany.digisac.chat. Required.
  • Access token: the personal access token copied from Conta > API > Tokens de acesso pessoal. Required.
  • Initial sync date: the earliest date from which records will be synced. It applies only to the streams replicated incrementally — Contacts, Messages, Tickets, Campaigns and Sales Opportunities. Leave it empty to extract the full history.
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.
Messages is by far the largest stream on a Digisac account — it holds every message exchanged on every channel. The first extraction reads the whole history, so it takes considerably longer than the others; the runs after it only read what changed.
Some streams depend on modules that may not be enabled on your plan — WhatsApp Templates requires an official WhatsApp Business API connection, and Sales Funnels, Sales Opportunities and the satisfaction surveys require those modules to be active. When a module is unavailable the stream is skipped with a warning in the run log instead of failing the extraction.
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: Contacts, Messages, Tickets, Campaigns and Sales Opportunities support INCREMENTAL; the remaining 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 Digisac and their corresponding fields. API reference: Digisac API documentation.
Answers contacts gave to the satisfaction surveys (GET /api/v1/answers) — one row per answered survey, carrying the NPS or CSAT score itself.Primary key: id
Chatbots configured on the account (GET /api/v1/bots). Only the bot’s identification is extracted; the conversation flow itself stays in the platform.Primary key: id
Mass-message campaigns sent from the account (GET /api/v1/campaigns).Primary key: idReplication key: createdAt (incremental sync).
Opportunities on the sales funnels (GET /api/v1/cards). Read one funnel at a time, as a child of Sales Funnels.Primary key: idReplication key: updatedAt (incremental sync).
People and groups the account exchanges messages with (GET /api/v1/contacts). A contact is a number, e-mail address or Telegram user on one specific connection, so the same person reached through two connections is two contacts — personId is what ties them together.Primary key: idReplication key: updatedAt (incremental sync).
Definitions of the extra fields the account added to contact records (GET /api/v1/custom-fields). This stream carries the field definitions, not their values.Primary key: id
Departments that tickets are routed to, such as Support or Sales (GET /api/v1/departments).Primary key: id
Rules that spread incoming tickets across the agents of a department (GET /api/v1/distribution).Primary key: id
Dates the chatbot treats as non-working days (GET /api/v1/holiday).Primary key: id
Reusable interactive messages — button and list menus sent to contacts (GET /api/v1/interactive-messages).Primary key: id
Every message exchanged on the account, in both directions (GET /api/v1/messages). Not every record is a chat message: Digisac writes system entries onto the same timeline (type = ticket when a ticket opens or closes, for example), which is why text is frequently null.Primary key: idReplication key: updatedAt (incremental sync).
Organizations — groupings of people used to scope third-party access (GET /api/v1/organizations).Primary key: id
People — the grouping that ties a contact’s several channels together (GET /api/v1/people).Primary key: id
Sales funnels configured on the account (GET /api/v1/pipelines).Primary key: id
Satisfaction surveys (NPS/CSAT) configured to run at the end of a service (GET /api/v1/questions). This stream carries the survey definitions; the scores are in Survey Answers.Primary key: id
Canned replies agents can insert into a conversation (GET /api/v1/quick-replies).Primary key: id
Access profiles that define what a user may do on the platform (GET /api/v1/roles).Primary key: id
Scheduled actions — future ticket openings and agent notifications (GET /api/v1/schedule).Primary key: id
Connections — the messaging channels plugged into the account (GET /api/v1/services). One record per WhatsApp number, Telegram bot, e-mail box or other channel; every contact and message points at one of these through serviceId.Primary key: id
Labels used to classify contacts (GET /api/v1/tags).Primary key: id
Closing subjects agents pick when they end a ticket (GET /api/v1/ticket-topics).Primary key: id
Service tickets (GET /api/v1/tickets) — one per conversation an agent handled with a contact. A ticket opens when a conversation starts and closes when an agent ends the service, so this is the stream that carries handling time, routing and closing subject.Primary key: idReplication key: updatedAt (incremental sync).
Agents and administrators who log in to the platform (GET /api/v1/users).Primary key: id
WhatsApp message templates (HSM) approved for the official connection (GET /api/v1/whatsapp-business-templates). Only accounts with a WhatsApp Business API connection have templates.Primary key: id