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

# Attio Connector

> Query your Attio CRM records, lists, and workspace data directly in Ana.

### **1. Overview**

The Ana x Attio integration connects your Attio workspace to Ana, giving you natural language access to your CRM data — companies, people, deals, lists, and the relationships between them. Once configured, Ana can surface pipeline status, analyze record activity, and answer questions about your go-to-market data without leaving your workflow.

<Note>
  Connect Attio to Ana to query and analyze your CRM records and lists using natural language.
</Note>

### **2. Prerequisites**

You'll need:

* An Attio workspace you want Ana to query
* Workspace admin access if you are setting up an org-level integration
* A TextQL account with permission to add API connectors

### Which type of connection should I use?

|                     | **API Key**                                                                         | **OAuth (Org-level)**                          | OAuth (Per-member)                                    |
| ------------------- | ----------------------------------------------------------------------------------- | ---------------------------------------------- | ----------------------------------------------------- |
| **Best For**        | Individual users, service accounts, or shared team access tied to one set of scopes | Shared team access to a single Attio workspace | Individual user access with personal permissions      |
| **Scope**           | Access limited to the scopes granted to the key                                     | Full workspace access under one shared auth    | Each user queries Attio as themselves                 |
| **Authentication**  | API key from Attio workspace settings                                               | One-time OAuth flow by an admin                | Each member completes their own OAuth flow            |
| **Data Visibility** | Limited to the key's configured scopes                                              | Consistent view across all Ana users           | Each user sees only what they have access to in Attio |
| **Limitations**     | Key must be rotated manually if compromised                                         | Requires admin to re-auth if access is revoked | Higher setup overhead; each member must connect       |

### **3. Capabilities**

Once configured, Ana can:

* Query companies, people, and other records across any object in plain language.
* Analyze deal pipeline — stage distribution, deal value, and movement over time.
* Surface records on any list and break them down by attribute.
* Report on record activity, ownership, and recently updated entries across your workspace.

### **4. Setup Instructions**

***

### Step 1: Generate your Attio credentials

**Before you begin, choose your connection type:**

* **API Key:** best for individuals or shared team access tied to one set of scopes.
* **OAuth (Org-level):** an admin authorizes once; all Ana users share that workspace-level access.
* **OAuth (Per-member):** each user authorizes individually and sees only what they have access to in Attio.

If you're unsure, refer to *Which type of connection should I use?* Then follow the instructions below for your chosen type.

<Tabs>
  <Tab title="API Key">
    1. Go to [attio.com](https://attio.com) and sign in.
    2. Open **Workspace settings**.
    3. In the left sidebar, navigate to **Developers**.
    4. Click **Create an integration** (or open an existing one), then go to its **API key** / **Access token** section.
    5. Configure the integration's **scopes**. Grant the minimum read access required for the data you want Ana to query — at a minimum, object configuration and record read access (e.g. `object_configuration:read` and `record_permission:read`).
    6. Copy the access token immediately and store it securely.

    For the latest steps, see Attio's [Generate an API key](https://attio.com/help/apps/other-apps/generating-an-api-key) help article.
  </Tab>

  <Tab title="OAuth (Org-level or Per-member)">
    1. Go to [attio.com](https://attio.com) and sign in.
    2. Open **Workspace settings**.
    3. In the left sidebar, navigate to **Developers**.
    4. Click **Create an integration** and choose to enable **OAuth**.
    5. Fill in the application details:
       * **Application name**: `textql` or `ana-integration`
       * **Redirect URL**: `https://app.textql.com/auth/api-oauth/callback`
    6. Configure the **scopes** your integration needs. For querying, grant read access to object configuration, records, lists, list entries, and user management.
    7. Save the integration, then locate your **Client ID** and **Client Secret**.
    8. Copy and store both securely (the secret will not be fully shown again).

    <Tip>
      The difference between org-level and per-member connections is determined by how TextQL manages authentication:

      * **Org-level connection**: one workspace member authorizes Attio once, and TextQL stores a shared workspace-level token for that organization.
      * **Per-member connection**: each user in TextQL completes OAuth individually, and TextQL stores separate tokens per user, preserving identity and permissions.

      Both use the same Attio OAuth application — only the authorization behavior and token storage differ.
    </Tip>
  </Tab>
</Tabs>

### **Step 2: Add Attio as an API connector in TextQL**

1. Go to app.textql.com and sign in.
2. In the bottom left sidebar, click **Connectors > APIs** and select Attio.
3. In the configuration panel, fill in the fields depending on your connection type:
   * **API Key**
     * Name (e.g. Attio `API Key`)
     * Authentication type: select **API Key**
     * Token: paste the access token copied from Step 1
   * **OAuth (Org-level or Per-member)**
     * Name (e.g. Attio `OAuth`)
     * Authentication type: select **OAuth (org-level)** or **OAuth (per-member)**
     * Client ID and Client Secret: paste the values copied from Step 1
     * OAuth Authentication: click **Authenticate** — a popup will appear asking for permission to access your Attio workspace. Click **Allow**.
4. Click **Save**.

### **Step 3: Verify the connection**

Once saved, confirm the connector is active:

1. Click on the Attio connector and select Test Connection at the bottom of the panel.

* A successful setup will return Connection successful (200).
* If the test fails, refer to the [Troubleshooting](#6-troubleshooting) section for next steps.

***

### **5. Usage Examples**

Once configured, you can ask Ana:

* "How many open deals do we have, and what's the total pipeline value by stage?"
* "Which companies were added to our workspace in the last 30 days?"
* "Show me all people associated with our top 10 accounts by deal value."
* "What records on the 'Strategic Accounts' list haven't been updated in more than 60 days?"
* "Break down our deals by owner and stage."

### **6. Troubleshooting**

| **Symptom**                                | **Likely Cause**                                     | **Fix**                                                                                                                                                   |
| ------------------------------------------ | ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Authentication failed (API Key)            | Invalid, revoked, or incorrectly copied access token | Generate a new key in Attio (Workspace settings → Developers) and update the connector in TextQL.                                                         |
| Authentication failed (OAuth)              | Incorrect redirect URL                               | In your Attio integration settings, make sure `https://app.textql.com/auth/api-oauth/callback` is listed exactly as a redirect URL.                       |
| Ana returns no results / permission errors | Integration is missing required scopes               | In Attio, confirm the integration grants read access to object configuration and records (and lists, if querying lists), then re-save or re-authenticate. |

### **7. Security Notes**

* Follow the principle of least privilege when configuring scopes. Grant only the read access Ana needs to query the data you want.
* API keys remain valid until they are revoked. Store them securely and rotate them if you suspect they have been exposed.
* OAuth access may require re-authentication if authorization is revoked, credentials are changed, or access expires.
* Do not share API keys, client secrets, or OAuth credentials in email, chat, tickets, or other unsecured locations.
* If you no longer need the integration, revoke it in Attio and remove the connector from TextQL.
* For more details on how Attio handles API authentication and permissions, refer to [Attio's official API documentation](https://docs.attio.com/rest-api/how-to/get-started).

***

### **Need Help?**

For further assistance, please contact [support@textql.com](mailto:support@textql.com).

### **Privacy Policy**

For information about how we handle your data and protect your privacy, please review our [Privacy Policy](https://textql.com/privacy).
