> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getinteract.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How Interact works

> A plain-language explanation of how Interact processes your questions and returns data-driven answers.

## The big picture

When you ask Interact a question like *"Which campaigns had the highest ROAS last month?"*, a lot happens behind the scenes in a matter of seconds. Here's the journey from your question to the answer.

```mermaid theme={null}
flowchart LR
    Q([Your question]) --> O1[Orchestrator]
    O1 --> DQA[Database Query Agent]
    O1 --> DAA[Data Analysis Agent]
    DQA --> O2[Orchestrator]
    DAA --> O2
    O2 --> A([Your answer])
```

## The components

### Your data (Connector)

Before anything can happen, Interact needs access to your data. You connect your **Google BigQuery** project via a **connector** — this gives Interact permission to query your tables on your behalf. Your credentials are encrypted and stored securely; they are never exposed to the AI models.

[Learn more about connectors →](/org-settings/connectors/overview)

### The Orchestrator Agent

Every agent you build has an **orchestrator** at the top. Think of it as the agent's brain — it reads your question, decides which tasks are needed to answer it, and coordinates the work.

The orchestrator doesn't query your database directly. Instead, it delegates to specialised subagents.

### Subagents

Subagents are specialists. Each one has a specific job:

<CardGroup cols={2}>
  <Card title="Database Query Agent" icon="database">
    **What it does:** Generates and runs SQL queries against your BigQuery connector.

    **When to use it:** Any time your agent needs to retrieve data from your warehouse.
  </Card>

  <Card title="Data Analysis Agent" icon="magnifying-glass-chart">
    **What it does:** Interprets query results — computing summaries, identifying trends, formatting charts.

    **When to use it:** When you want the agent to reason about the data, not just return raw rows.
  </Card>
</CardGroup>

The orchestrator sends work to subagents and assembles their outputs into a coherent answer. This division of labour keeps each agent focused and accurate.

[Learn more about agents →](/concepts/agents)

### Jobs & scheduling

A single chat exchange is one turn. A **job** is a named, repeatable run — you define the question (or series of questions), and Interact can run it automatically on a schedule (for example, every Monday at 9:00 AM).

Jobs can also be triggered manually or via the API.

[Learn more about jobs →](/concepts/jobs)

### Notifications

When a job completes — or fails — Interact can send you an alert via email, Slack, or Microsoft Teams.

[Learn more about notifications →](/org-settings/notifications/overview)

## Key principles

<AccordionGroup>
  <Accordion title="Your data never trains the AI" icon="shield">
    The data returned by your BigQuery queries is used only to answer your specific question in that session. It is not stored permanently or used to train any AI models.
  </Accordion>

  <Accordion title="Credentials are always encrypted" icon="lock">
    Service account credentials for your BigQuery connector are encrypted using Google Cloud KMS before storage. They are decrypted only at query time and are never visible to the AI models.
  </Accordion>

  <Accordion title="Costs are capped" icon="gauge">
    You can set a maximum query cost per connector, preventing runaway BigQuery bills. Interact estimates query costs before execution and blocks queries that would exceed your limit.
  </Accordion>

  <Accordion title="Queries are scoped to whitelisted datasets" icon="table">
    When you create a connector, you choose which datasets (and optionally which tables) agents are allowed to access. Agents cannot query data outside of this scope.
  </Accordion>
</AccordionGroup>
