> For the complete documentation index, see [llms.txt](https://boundaryai.gitbook.io/boundaryai-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://boundaryai.gitbook.io/boundaryai-docs/bringing-in-your-feedback/connect-to-your-existing-systems.md).

# Connecting your tools

Connectors let you pull feedback into BAI Analytics directly from the tools your team already uses and analyse it alongside surveys, uploads, and scraped reviews. Once connected, a platform keeps feeding new tickets, survey responses, or rows into your Feedback Groups automatically, with no exports, no copy-pasting, and no scheduled scripts.

There are two kinds of connection, and both are managed from the same place:

* **Support and work tools** (Zendesk, Intercom, Linear, GitHub Issues, and so on). You sign in to the platform from BAI Analytics, then import tickets into a Feedback Group with filters and a time range.
* **Survey and CX platforms, data warehouses, and file storage** (Qualtrics, SurveyMonkey, Medallia, InMoment, Snowflake, BigQuery, Amazon S3, SFTP, and so on). You connect with credentials or a key, then add a **sync** that maps the platform's fields onto a Feedback Group and runs on a schedule.

This page covers how connectors work end-to-end: what platforms are supported, how the Integrations page is laid out, how to connect and configure each kind, and how the imported data behaves once it lands in BAI Analytics.

For the container that holds connector data, see [Feedback Groups](/boundaryai-docs/feedback-groups/feedback-groups.md). For other ingestion paths, see [Uploading an Existing Dataset](/boundaryai-docs/bringing-in-your-feedback/uploading-an-existing-dataset.md), [Social Listening](/boundaryai-docs/bringing-in-your-feedback/social-listening.md), and [Creating a Survey](/boundaryai-docs/bringing-in-your-feedback/surveys/editor.md).

***

### When to use a connector

Use a connector when:

* Your support team uses **Zendesk, Freshdesk, Intercom, Front, ServiceNow, Salesforce Service Cloud, Zoho Desk**, or a similar help desk and you want every customer ticket (past and ongoing) analysed for themes, sentiment, and monitored issues.
* Your product or engineering team tracks bugs and requests in **Linear, GitHub Issues, GitLab, Azure DevOps, Asana, ClickUp, Trello, Shortcut, Wrike**, or a similar tool and you want to mine those for recurring patterns.
* Your survey programme runs in **Qualtrics, SurveyMonkey, Medallia**, or **InMoment** and you want open-ended answers analysed continuously, survey by survey, without exporting.
* Your feedback already sits in a **data warehouse** (Amazon Redshift, Snowflake, Google BigQuery, Databricks) or arrives as **files** in an Amazon S3 bucket or on an SFTP server, and you want BAI Analytics to read new rows or files on a schedule.
* Your tool isn't in the catalogue but it's one of the thousands of apps on **Zapier**, and a Zap can push its feedback into BAI Analytics (see Importing through Zapier below).
* You want **always-on** ingestion: new records land in BAI Analytics on a fixed cadence without anyone exporting a CSV.

If your data is already exported as a spreadsheet, [Uploading an Existing Dataset](/boundaryai-docs/bringing-in-your-feedback/uploading-an-existing-dataset.md) is faster. If you need responses from outside any platform you control (public reviews, social posts), see [Social Listening](/boundaryai-docs/bringing-in-your-feedback/social-listening.md).

***

### Supported platforms

The **Add a connection** catalogue on the Integrations page is searchable and grouped by category. This is what it contains today:

| Category              | Platforms                                                                                                                                |
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| **Customer support**  | Dixa, Freshdesk, Freshservice, Front, Help Scout, Intercom, Kustomer, Re:amaze, Salesforce Service Cloud, ServiceNow, Zendesk, Zoho Desk |
| **Surveys & CX**      | InMoment, Medallia, Qualtrics, SurveyMonkey                                                                                              |
| **Work management**   | Asana, Basecamp, ClickUp, Hive, Teamwork, Trello, Wrike                                                                                  |
| **Development**       | Azure DevOps, Bitbucket, GitHub Issues, GitLab, Linear, Pivotal Tracker, Shortcut, Zoho BugTracker                                       |
| **Legal & contracts** | Ironclad, SpotDraft                                                                                                                      |
| **Data warehouses**   | Amazon Redshift, Databricks, Google BigQuery, Snowflake                                                                                  |
| **File storage**      | Amazon S3, SFTP                                                                                                                          |

Each support or work tool exposes a slightly different feature set on the source side: for example, *priority* and *due date* exist in Linear but not in Trello, *ticket type* in Zendesk but not in GitHub Issues. BAI Analytics knows what each platform supports and only shows import options that are actually applicable, so you never see a filter that does nothing.

{% hint style="info" %}
**Don't see your tool?** Zapier covers thousands of other apps through the API endpoint described at the end of this page. If you need a native connector that isn't listed, contact your account manager.
{% endhint %}

***

### Availability

Connectors are enabled per organisation by the BAI Analytics team. When the feature is not enabled for your organisation, the **Connectors** tile in a Feedback Group reads *Not enabled for your organization* and the Integrations page is locked in the sidebar. Contact your account manager to have it switched on. Once enabled, every platform in the catalogue is available; there are no per-platform restrictions.

***

### The Integrations page

Open **Integrations** from the main navigation. The page has three sections:

* **Connections**: the tools and platforms your organisation has linked. Everything on this page lives here.
* **AI assistants**: connect Claude or another MCP client to your data (read-only).
* **Developer tools**: **API** keys and **Webhooks**, for pushing data in and getting notified of events. See the [API documentation](/boundaryai-docs/api-and-webhooks/getting-started.md) and [webhooks](/boundaryai-docs/api-and-webhooks/webhooks.md).

#### The Connections section

The principle is simple: connect a platform once, then link it to the Feedback Groups that need its data.

* **Your connections** lists every linked account, grouped by category (Customer support, Surveys & CX, Data warehouses, File storage, and so on). Each row shows the platform logo, the connection name, a health label, how many Feedback Groups it feeds (*Used by 2 group(s)*), and when it was last active.
* **Add connection** opens the catalogue: search apps, filter by category, and pick a tile. Tiles you have already connected show a *1 connected* count.
* Expanding a row shows the Feedback Groups it feeds, one line per sync, each with a status chip (*Syncing*, *Paused*, *Failing*), the last sync time, a **Sync now** button, **Pause** / **Resume**, and a delete control. Below that are the connection-level actions: **Test connection** (survey, CX, warehouse, and storage connections), **Feed a group…** (to add a sync), **Reconnect** (support and work tools), and **Disconnect**.

Health labels on a connection row mean:

| Label                | Meaning                                                                                                 |
| -------------------- | ------------------------------------------------------------------------------------------------------- |
| **Connected**        | The platform accepts our credentials and at least one sync is healthy, or no sync is set up yet.        |
| **Sync paused**      | One or more syncs on this connection are paused.                                                        |
| **Action needed**    | The platform rejected our credentials, or a sync is failing. Expand the row for the error message.      |
| **Setup incomplete** | The connection was created but has not yet been verified (for example, an SFTP key not registered yet). |
| **Disconnected**     | The platform dropped the connection. Reconnect to resume.                                               |

When any connection needs attention, a small badge appears next to **Integrations** in the sidebar.

***

### Connecting a support or work tool

The flow takes about a minute and runs entirely inside BAI Analytics; there is nothing to install on the source platform.

{% stepper %}
{% step %}

### Pick a platform

On the Integrations page, click **Add connection** and choose a tile from the catalogue (or start from a Feedback Group, see the next section).
{% endstep %}

{% step %}

### Name the connection

Give it a name your team will recognise, such as the account or workspace name. If you already have a connection to the same platform, BAI Analytics suggests a numbered name (*Zendesk 2*). Click **Continue to Zendesk** (or whichever platform you chose).
{% endstep %}

{% step %}

### Sign in

A secure sign-in window opens. Sign in to your platform and grant read access. BAI Analytics guides you through each platform's specific steps (such as your Zendesk subdomain). If the window isn't visible, use **Open sign-in** to bring it back.
{% endstep %}

{% step %}

### Confirm

Once you're connected, the platform appears under **Your connections** with a green dot. Your credentials stay with the source platform. BAI Analytics never sees your password.
{% endstep %}
{% endstepper %}

You can connect **several accounts of the same platform** (for example, one Zendesk per region). Each connection is independent: adding one never disconnects another, and each keeps its own imports. If a connection was set up by someone who has since left the team, use **Reconnect** on its row; the connection keeps its name and its scheduled imports.

***

### Importing tickets into a Feedback Group

Connecting the account is step one. Step two is telling BAI Analytics what to bring in, and that always happens inside a Feedback Group.

#### Where to start

Inside a Feedback Group, use the **Add source** button and choose **Add connector** (it reads **Import data** once an account is linked), or open **Connect Data Source** and pick the **Connectors** tile. The import wizard walks through **Connect → Configure → Set up** (labelled **Review** in groups with ongoing collection).

#### Connect

If you already have a connected account, the wizard shows it, with a dropdown to pick between accounts when you have more than one. Click **Import Tickets** to continue. If you have no account yet, **Connect Your Platform** opens the same secure sign-in described above. Right after a platform is first connected it may show *Initial sync in progress* for a few minutes while the platform prepares its data; the wizard tells you when it's ready.

This step also offers an alternative: **API Endpoint**, for receiving data from Zapier, Make, n8n, or your own code (see Importing through Zapier below).

#### Configure

**Time range.** Choose how far back to import:

| Option                                                                | Imports tickets created in…                |
| --------------------------------------------------------------------- | ------------------------------------------ |
| Last 7 days / Last 30 days / Last 90 days / Last 6 months / Last year | …the chosen window.                        |
| All time                                                              | …the entire history of the source account. |
| Custom dates                                                          | …a specific start-and-end window.          |

Platforms that don't support date-based filtering show **Number of Tickets** instead, so you import the most recent N tickets. In a group with ongoing collection this step is labelled **Backfill** (*How far back should we sync existing tickets?*), because the connection keeps syncing forward after the initial load.

**Advanced filters.** Filters narrow what gets imported. Available filters depend on the source platform:

* **Status**: open, closed, in progress, on hold (or *all*).
* **Priority**: urgent, high, normal, low (or *all*).
* **Type**: bug, feature, question, task, incident, and so on.
* **Assignee**: assigned, unassigned, or *all*.
* **Due Date**: overdue, due today, due this week, no due date, or *all*.
* **Collections**: a multi-select picker for the platform's native containers (Trello *Boards*, Zendesk *Groups*, Freshdesk *Groups*, GitHub *Repositories*, and so on). Leave it empty to import from all.

Filters apply to both the initial import and to every continuous sync after it, so a "support tickets, closed, last 30 days" connector will keep importing freshly-closed support tickets in subsequent cycles, not random new ones.

**Fields to import.** Choose which **Standard fields** (status, priority, assignees, tags, and so on) and which **Custom fields from the platform** to bring in, up to 15 metadata fields. Standard fields become metadata you can segment by in the analysis view; custom fields are useful when your team relies on custom Zendesk tags or similar. If you don't want to think about this, leave the defaults.

**Include conversation history.** On by default: the ticket's comments are appended to the ticket body so the analysis sees the whole exchange.

**Continuous import.** A toggle controls whether the connection is one-shot or always-on:

* **One-time import**: imports the matching tickets once, then stops. New tickets created later in the source platform will not appear unless you run another import.
* **Continuous import**: imports the initial batch *and* keeps pulling new and updated tickets automatically.

Continuous import is on by default in groups with ongoing collection. The wizard also shows a **Connection Name**, generated from the platform and the time range; you can rename it.

#### Set up and start

The last step summarises your choices. Click **Start syncing** (or **Connect & start syncing** in a group with ongoing collection) for a continuous connection, or **Run import** for a one-time import. If you only need a snapshot, *Just need a one-time import?* **Import without syncing** switches modes without going back.

{% hint style="info" %}
**Monitoring is not part of import setup.** The group's monitors with **Auto-cover new sources** switched on watch a new connector source automatically. Manage them from the group's **Manage monitoring** panel; see [Custom Monitoring](/boundaryai-docs/analysing-your-feedback/custom-monitoring.md).
{% endhint %}

#### The initial import

When you start the import, BAI Analytics begins pulling your tickets in the background, working through them page by page, and shows a progress toast in the corner of the screen. You can navigate away and keep working; the toast follows you. When the job completes, the connector's data appears as a source in its Feedback Group with a *Connector* badge, and the analysis link becomes active. In a group with ongoing collection, the wizard's final screen confirms the platform is *Live, syncing continuously* and that existing tickets are importing now.

Very large historical imports are processed in batches automatically, so even a long history imports reliably.

#### Continuous import

For connections with continuous import enabled, BAI Analytics runs an incremental sync **every 30 minutes** in the background. Each sync:

1. Checks the source platform for tickets created or updated since the last successful sync, with the configured filters applied.
2. De-duplicates against tickets already imported into BAI Analytics.
3. Analyses the new tickets the same way as everything else.

Need fresher data than that? Use **Fetch new data** on the source's data-source card (see below) or **Sync now** on the Integrations page. Both ask the platform for its latest data *now* rather than waiting for the next cycle.

***

### Connecting a survey platform, data warehouse, or file storage

These connectors work the other way round: you create the connection on the Integrations page first, test it, then add one or more **syncs**, each feeding a Feedback Group.

#### What you'll need per platform

| Platform                              | What the connect form asks for                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Qualtrics**                         | Your **Datacenter ID** and an **API token**, both from Account Settings, then Qualtrics IDs. Regenerating the token in Qualtrics revokes our access.                                                                                                                                                                                                                                |
| **SurveyMonkey**                      | **Connect with SurveyMonkey** opens SurveyMonkey so you can approve read access, with nothing to copy. Where that sign-in is not available, **Use a private app token instead**: choose the **Data center** (United States, Europe, or Canada), paste the private app's **Access token**, and optionally its **Client ID** and **Client secret** to enable real-time delivery.      |
| **InMoment**                          | The **Regional API host**, your **Organization ID**, and the **Client ID** / **Client secret** provisioned by your InMoment contact.                                                                                                                                                                                                                                                |
| **Medallia**                          | First, *How does your Medallia data reach BAI?* Choose **Query API** (the **API gateway URL**, **OAuth token URL**, **Client ID** and **Client secret** from your Medallia instance; the client's role needs the Query API capability) or **File delivery (SFTP)** (Medallia exports files to an SFTP folder on a schedule and BAI Analytics picks them up; no API licence needed). |
| **Amazon Redshift** and **Amazon S3** | Deploy the BAI reader role in your AWS account with the CloudFormation template we provide (read-only, locked to your External ID, revocable by deleting the stack), then paste the **Role ARN** plus the cluster or workgroup details, or the **Bucket name** and optional prefix and KMS key for S3.                                                                              |
| **Snowflake**                         | The **Account identifier**, a **Service user**, and the **Virtual warehouse**. BAI Analytics generates a key pair; you register the public half on the service user with the statement shown, then test. No password ever leaves Snowflake.                                                                                                                                         |
| **Google BigQuery**                   | The **Project ID** and **Dataset ID**. Grant the **BigQuery Data Viewer** role to the BAI service account shown, add the ownership label with the command shown, then test. No key or secret is exchanged. Every sync query is dry-run first and stopped if it would scan more than the configured budget (1 GB by default).                                                        |
| **Databricks**                        | The **Workspace host**, **SQL warehouse ID**, **Catalog**, and an OAuth service principal's **client ID** and **secret**. A Unity Catalog enabled workspace is required. Record the secret's expiry date and we remind you before it expires.                                                                                                                                       |
| **SFTP**                              | **Host**, **Port**, **Username**, the **Folder** files are delivered into, and an optional **File name pattern** (for example `feedback_*.csv`). Authentication is by **SSH key** (recommended) or **Password**. Paste the vendor's **Server fingerprint** if you have one.                                                                                                         |

For file-based sources (S3 and SFTP), BAI Analytics reads CSV, TSV, JSON, NDJSON, or Parquet files, optionally gzipped, and detects columns from the most recent file.

#### Connecting

{% stepper %}
{% step %}

### Add the connection

Click **Add connection**, pick the tile, and fill in the form above. Most platforms use **Connect and test**: the connection is created and verified in one go.
{% endstep %}

{% step %}

### Hand over a key, if the platform needs one

Snowflake and SFTP end on a hand-off step. BAI Analytics generates its own key pair and shows the public key with a copy button and its fingerprint. Register it on the service user (Snowflake) or send it to whoever manages the SFTP account, then click **The key is registered. Test connection**. **Finish later** is always available: the connection stays as *Setup incomplete* and the public key remains on its row until the other side confirms. For SFTP, the server's identity is verified on first contact and pinned from then on.
{% endstep %}

{% step %}

### Feed a group

Expand the connection row and click **Feed a group…** to add a sync (see below). You can add several syncs to one connection, each feeding a different Feedback Group.
{% endstep %}
{% endstepper %}

#### Adding a sync

A sync maps the platform's data onto one Feedback Group. The form asks for:

* **Feedback group**: where the records land.
* **What to read**: the **Survey** (Qualtrics, SurveyMonkey, InMoment), the **Schema** and **Table** (warehouses), or the **Files location** (S3 and SFTP).
* **Feedback text field** (or **Feedback text column**): the open-ended answer the AI analyses. SurveyMonkey and Medallia let you pick several **Feedback text questions**; each answered question then becomes its own piece of feedback, with a *Question* column saying which one.
* **Timestamp field** (or column): when each record was created. Warehouses and files also need a **Unique ID column** so re-reads never duplicate.
* **Metadata fields (optional)**: other fields to bring in for segmentation.
* **Sync frequency**: **Every hour**, **Every 4 hours**, or **Daily**.

Click **Start syncing**. The first import starts within a few minutes, and the sync then runs on the frequency you chose. Each run reads only what is new since the last run, de-duplicates against records already imported, and analyses the new records like any other source.

**SurveyMonkey real-time delivery.** When the connection has a Client ID and secret (or was made with **Connect with SurveyMonkey**), BAI Analytics registers a webhook on each synced survey, so a completed response triggers a pull within minutes instead of waiting for the next scheduled run. The sync's line on the Integrations page shows a **Real-time** chip; *Real-time unavailable* means the webhook could not be registered and the sync polls on its schedule instead.

#### Medallia: rehearse before you switch on

Medallia is the one platform where an empty result and a missing permission look identical from the outside, so its syncs get extra safeguards:

* The sync form is organised in steps: where the feedback comes from (the **Experience Program**, and optional **Limit this source to** rules), what counts as feedback (the **Feedback text fields**), the **Date field this sync follows** (pick a field that records when feedback became available in Medallia, not when the customer answered; BAI Analytics marks the recommended one), and where it lands (the **Feedback group** and a **Source name**).
* **One connection can feed several sources.** Add a **Limit this source to** rule (for example, feedback type *is one of* survey) to route survey responses into one Feedback Group and Google reviews into another, from the same Medallia connection.
* **New Medallia syncs are saved paused.** Use **Check setup** on the connection to run readiness checks (credentials, Query API capability, Experience Programs, field discovery, and so on), then **Preview** on the sync to run it for real against Medallia and see what it *would* bring in: records read, excluded by your rules, already imported, would be imported, with sample records. Nothing is imported by a preview. When you're satisfied, click **Switch on this sync**. You can skip the preview, but only deliberately (**Switch on without a preview**).
* **Edit** on the connection lets you rotate a secret or rename without recreating the syncs.

***

### What connector data looks like in a Feedback Group

Once imported, the records appear as a single source inside the destination Feedback Group, with a *Connector* badge so you can tell at a glance which sources are live. Each sync on a survey, warehouse, or storage connection creates its own source.

Per-record mapping for support and work tools:

* The ticket **subject and body** become a Long Answer response, the field the AI analyses for themes and sentiment.
* **Comments** on the ticket are appended as additional context (where you kept *Include conversation history* on).
* **Status, priority, assignees, ticket type, tags, due date** become metadata fields, available for segmentation in the analysis view.
* Any **custom fields** you selected come through as additional metadata.

For survey, warehouse, and storage syncs, the **Feedback text field** becomes the Long Answer response, the **Timestamp field** dates it, and the **Metadata fields** you selected come through for segmentation.

This means a connector source participates fully in cross-source analytics inside its Feedback Group: Grouped Themes will cluster connector records together with relevant survey responses or scraped reviews, and group-scoped reports include them automatically.

#### The data-source card

On the qualitative overview of a connector source, a **Connector Import** card surfaces:

* The connected platform (logo, name, status: *Connected*, *Syncing*, *Failed*, or *Disconnected*) and how many items have been imported.
* **Last import** with full date and time-of-day precision.
* **Next auto-import**, with a relative countdown, or *Auto-import paused*.
* The **Active import filters** as read-only chips (Status, Priority, Type, Collections, Assignees, Due date) so you can see exactly why some tickets may be excluded.
* A **Fetch new data** button to trigger a sync now. The result shows inline, and the **Last sync error** appears here if the latest run failed.
* A **Manage connector** link to the Integrations page for pausing, editing, or disconnecting.

For a Medallia sync that is still paused and has never run, **Fetch new data** points you back to **Preview** rather than starting a sync silently.

***

### Pausing, editing, and disconnecting

From the Integrations page (or via **Manage connector** on the data-source card), you can:

* **Pause** a sync: it stops running but keeps its filters and field mapping, so **Resume** is one click.
* **Sync now**: run the sync immediately rather than waiting for the next cycle.
* **Test connection**: check that the platform still accepts our credentials (survey, CX, warehouse, and storage connections).
* **Delete a sync**: the Feedback Group stops receiving updates from this connection. Imported data stays in the group.
* **Disconnect** the account: stops every sync on it and removes the link to the source platform. Already-imported records stay in your Feedback Groups; only the live link is cut.

#### Failure handling

If a sync fails (for example, your platform credentials expired), the sync's line shows *Failing* with the platform's error message, and the connection reads *Action needed*. After five consecutive failures BAI Analytics stops retrying automatically, and the sync keeps showing *Failing* until you act. Once you have fixed the issue (**Reconnect** for support and work tools, or **Edit** / **Test connection** for the others), click **Resume** on the sync, or **Sync now** if it is not shown as paused.

***

### Importing through Zapier

If a tool isn't in the catalogue, **Zapier** can bridge it: a Zap watches your source app and pushes each new piece of feedback into BAI Analytics through the API.

{% stepper %}
{% step %}

### Create an API endpoint source

In a Feedback Group, open the connector wizard (**Add source**, then **Add connector**) and choose **API Endpoint** (*Receive data from Zapier, Make, n8n, or custom code*). Name the endpoint and define the fields that will receive data. BAI Analytics shows the endpoint's Group ID, Source ID, and Field IDs, and an example request.
{% endstep %}

{% step %}

### Create an API key

Under **Integrations**, **Developer tools**, **API**, create an API key. Copy it straight away; it is shown only once.
{% endstep %}

{% step %}

### Build the Zap

The endpoint's detail panel shows a **Connect with Zapier** walkthrough with an **Add BAI Analytics to Zapier** button. In Zapier, create a Zap, choose the app your data comes from as the trigger, add **BAI Analytics → Send Feedback** as the action, and connect it with your API key. Pick this group and this source from the dropdowns, then map your fields onto the questions.
{% endstep %}

{% step %}

### Test and switch on

Put a unique record ID in **External ID** so retries never duplicate, then turn your Zap on. Each item lands in the endpoint's source like any other feedback and is analysed automatically.
{% endstep %}
{% endstepper %}

Data imported through Zapier behaves exactly like native connector data: it participates in Grouped Themes, is covered by auto-covering monitors, and rolls into reports.

Building something more custom than a Zap? The same endpoint speaks a full [API](/boundaryai-docs/api-and-webhooks/getting-started.md) with bulk pushes, analysis read-back, and [webhooks](/boundaryai-docs/api-and-webhooks/webhooks.md).

***

### Best practices

* **One Feedback Group per source per audience.** A single mixed group is fine for small operations; for larger ones, splitting *"Support: EU"*, *"Support: US"*, and *"Engineering bugs"* keeps Grouped Themes meaningful. With several accounts of the same platform, name each connection after the account so the right one is obvious in the importer.
* **Be specific with filters.** *"All tickets, all time"* is rarely what you want. Filter to closed support tickets if you care about resolved issues; filter to a single board or repository if you only analyse one team.
* **Pick the custom fields you actually use.** The standard fields cover most analyses; only add custom fields if your team uses them for routing, tagging, or escalation.
* **Test the connection right after setup.** **Test connection** (or **Fetch new data** on the source) surfaces credential issues immediately rather than at the next scheduled run.
* **Preview Medallia syncs before switching them on.** A mapping that runs fine and imports the wrong records is the failure nothing else catches; the preview shows exactly what would land.
* **Mind the schedule on metered warehouses.** Snowflake bills a minimum per warehouse resume and BigQuery scans are budgeted per query, so **Sync frequency** is your main cost lever.
* **Re-authenticate proactively when seats change.** If the team member who originally connected a support or work tool leaves, use **Reconnect** so the long-lived token doesn't unexpectedly expire.
* **Disconnect, don't delete.** Disconnecting a connection or deleting a sync keeps imported records and analyses available; deleting the source loses them.
