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

# Connect apps

> Connect the apps your agents work in, choose how much they can do in each app, and limit single agents.

Connect an app, such as Gmail, Notion, or GitHub, and your agents can read it and act in it for you. You connect each app once. Then you decide how much the agents can do in it.

The **Integrations** screen has three tabs:

| Tab                     | What it holds                                                                                                               |
| ----------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| **Connected apps**      | The app catalog and the app accounts you connected. This page covers this tab.                                              |
| **Channels**            | Telegram, Discord, and Slack bots that you chat with. See [Talk to your squad from Telegram, Discord, or Slack](/docs/channels). |
| **Custom integrations** | MCP servers and services that connect with an API key. See [Add an MCP server or an API key](/docs/custom-integrations).         |

<Note>Connected apps, custom integrations, and MCP servers do not use credits. Credits pay only for the built-in research tools. See [What Squad costs and what uses credits](/docs/costs).</Note>

## Before you start

* Your subscription must be active. If it is not, Squad refuses the connection with the message "Your subscription isn't active. Resubscribe to manage integrations."
* Have the sign-in details for the app account that you want your agents to use.

## Open the Integrations screen

Use one of these paths:

* Click the grid icon (tooltip **Integrations**) in the strip at the bottom of the sidebar.
* Open **Settings** from the user menu in the top bar, then click **Integrations** under **CONNECTIONS**.

## Connect an app

<Steps>
  <Step title="Add an integration">
    On the **Connected apps** tab, click **+ Add integration**.
  </Step>

  <Step title="Find the app">
    Scroll the categories, or type in **Search the catalog…**.
  </Step>

  <Step title="Open the Connect window">
    Click the app. The **Connect** window for the app opens.
  </Step>

  <Step title="Choose the access level">
    Under **Default scope**, select the access level for your agents. The recommended level is already selected.
  </Step>

  <Step title="Start the sign-in">
    Click **Connect** followed by the app name, for example **Connect Gmail**.
  </Step>

  <Step title="Approve access">
    In the new browser tab, sign in to the app and approve access.
  </Step>

  <Step title="Return to Squad">
    Go back to the Squad tab.
  </Step>
</Steps>

The catalog shows the apps in these categories, in this order: **Recommended**, **Productivity**, **Communication**, **Developer tools**, **CRM**, **Marketing**, **Storage**, **Analytics**, **Scheduling**, **E-commerce**, and **Other**.

<Tip>An agent can also ask you to connect an app in chat. The chat card shows a **Connect** button for the app and a **Not now** button. The button starts the same sign-in.</Tip>

### Check that it works

* The app shows under **YOUR CONNECTIONS**, with the account name and a scope chip that shows the access level.
* In the catalog, the app card shows **Connected**.
* After an agent uses the account, the row shows when it was last used.

## Choose an access level

The app's own sign-in page asks you to give full access. Squad does not narrow that access at the app. Instead, Squad checks every call that an agent makes and refuses any action that is outside the level you chose.

* Most apps offer **Read-only**, **Read + write**, and **Full access**. Some apps use their own labels, for example **Read + send** for Gmail and **Read + post** for LinkedIn.
* Some apps have only one level, **Default** ("Standard access.").
* The recommended level is not always the highest. For example, Gmail recommends **Full access**, and Google Analytics recommends **Read-only**.

Each app has a manual that lists what agents can do at each level, for example the [Gmail manual](/docs/apps/gmail). The **Connect** window links to it with **See everything agents can do in** followed by the app name.

To change the level of a connected account:

1. On **YOUR CONNECTIONS**, click the scope chip on the account row. You can also click the **⋯** menu on the row and click **Manage scope**.
2. Under **Default scope**, select a different level.
3. Click **Save access**.

You do not sign in again. The change applies from each agent's next call.

## Limit a single agent

By default, every agent uses the level of the account. You can narrow the level for one agent, or block one agent from the account.

<Steps>
  <Step title="Open the account scope">
    On **YOUR CONNECTIONS**, click the scope chip on the account row.
  </Step>

  <Step title="Find the agent">
    Under **Per-agent access**, find the agent.
  </Step>

  <Step title="Choose the agent's level">
    In the agent's list, select one option:

    * **Default** (the account's level, shown in parentheses)
    * a lower level
    * **No access**
  </Step>

  <Step title="Save">
    Click **Save access**.
  </Step>
</Steps>

The change applies from the agent's next call. Squad checks the account level first, so an agent setting cannot give an agent more than the account level. An agent with **No access** does not see the account in its list of connections.

## Connect more than one account

You can connect several accounts of the same app, for example two Gmail inboxes.

1. On **YOUR CONNECTIONS**, click **+ Account** on the app row.
2. Choose the access level for the new account.
3. Click **Connect** followed by the app name, and sign in with the other account.

Each account row has a **⋯** menu with these actions:

| Action           | What it does                                                                                                                                                                                                                     |
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Make primary** | Agents use the primary account unless they choose another account for a task. The primary account shows **★ PRIMARY**.                                                                                                           |
| **Rename**       | Changes the account name that you and your agents see.                                                                                                                                                                           |
| **Manage scope** | Changes the access level and the per-agent access.                                                                                                                                                                               |
| **Reconnect**    | Runs the app sign-in again for the same account. It does not make a second connection. Use it when the connection expired, or to change what the account can reach on the app side, for example more pages in the Notion picker. |
| **Disconnect**   | Removes the account. If it was the primary, the next active account becomes the primary.                                                                                                                                         |

<Warning>**Disconnect** acts at once. There is no confirmation step. To use the account again, you connect it again.</Warning>

## Recommended apps

The **Recommended** category is first in the catalog. These apps connect in a different way from the other apps. They do not use access levels.

| App        | What it does                                                     | How it connects                                                                                                                                                           | Manual                         |
| ---------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| SiteGPT    | "AI support chatbot trained on your website content."            | Click **Sign in with SiteGPT** and approve on the SiteGPT page. If the page asks for a code, enter the code that Squad shows. You can click **Paste an API key instead**. | [SiteGPT](/docs/apps/sitegpt)       |
| Revid      | "AI short-form video creation and publishing."                   | Paste your **API key** from the API key section of your Revid account page.                                                                                               | [Revid](/docs/apps/revid)           |
| PostSyncer | "Schedule and publish social posts across every platform."       | In PostSyncer, open Settings, then API Integrations, click Create, and paste the **API token**.                                                                           | [PostSyncer](/docs/apps/postsyncer) |
| Bazzly     | "Reddit marketing: find high-intent threads and reply on-brand." | In Bazzly, open Account Settings, then API keys. Create a key with the read and write scopes only, with top-ups off, and paste the **API key**.                           | [Bazzly](/docs/apps/bazzly)         |

What protects your money in these apps:

* Revid: agents never get the tool that buys credit packs. Squad removes it.
* PostSyncer: agents never get the tool that deletes a connected social account. Squad removes it.
* Bazzly: Squad removes no tools. The protection is the key. A key that you create without the top-ups scope cannot spend money. If the key has top-ups on, Squad has no other control that stops spending.
* SiteGPT: Squad removes no tools.

<Warning>For Bazzly, create the API key with the read and write scopes only and leave top-ups off. The key is the only spending control.</Warning>

After you connect a Recommended app, its tools reach your agents within a couple of minutes. The app shows **Connected** in the catalog and appears in the list on the **Custom integrations** tab, not under **YOUR CONNECTIONS**. To replace the key or disconnect, click the app in the catalog. For SiteGPT, **Sign in again to replace the credential** replaces the sign-in. For the other apps, click **Replace the stored key**. To disconnect, click **Disconnect**, then **Really disconnect?** to confirm.

Revid and PostSyncer show in the catalog only when your workspace computer runs a recent enough version of the Squad software. If they are not in the catalog, your workspace is still updating.

## Troubleshooting

**Nothing happens when you click Connect.**
Cause: the browser blocked the new tab. Fix: allow pop-ups for the Squad dashboard, then click **Connect** again.

**The message "Your subscription isn't active. Resubscribe to manage integrations." shows.**
Cause: the subscription is canceled, paused, or past due. Fix: renew the subscription in **Settings** > **Billing**. See [Manage your subscription, credits, and workspace data](/docs/billing).

**An agent says an action is not allowed on the account.**
Cause: the action is outside the account level or the agent's level. Fix: raise the level with **Manage scope**, or change the agent's line under **Per-agent access**.

**An agent says the connection expired.**
Cause: the app ended the sign-in. Fix: click **⋯** on the account row, click **Reconnect**, and sign in again.

**Two accounts show the same name.**
Cause: the app did not send an account name, so both rows get the same name with a number after it. Fix: click **⋯** and **Rename** on each row.

**YOUR CONNECTIONS shows "No connections yet".**
Cause: no app is connected. Recommended apps do not show here. They show on the **Custom integrations** tab. Fix: click **+ Add integration** and connect an app.

### Other messages

| Message                                                                                         | Cause                                                                | Fix                                                                                          |
| ----------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| "This connection was removed — add the account again from the catalog to reconnect."            | The account was disconnected, so **Reconnect** has nothing to renew. | Click **+ Add integration**, or **+ Account** on the app row, and connect the account again. |
| "Connection failed:" or "Reconnect failed:" followed by a reason                                | The app refused the sign-in.                                         | Read the reason, then try again.                                                             |
| "Failed to initiate connection." or "Failed to reconnect."                                      | The sign-in did not start.                                           | Try again in a minute.                                                                       |
| "Couldn't save the scope change. Please try again."                                             | The new access level did not save.                                   | Try again. The old level stays until the save works.                                         |
| "Couldn't load per-agent access. Close and reopen to retry."                                    | The list under **Per-agent access** did not load.                    | Close the window and open it again.                                                          |
| "Couldn't save access for \[agent]. Earlier rows saved; this one and later didn't - try again." | The per-agent change stopped at that agent.                          | Click **Save access** again.                                                                 |
| "Couldn't identify this connection. Reload and try again."                                      | The page is out of date.                                             | Reload the page.                                                                             |
| "Couldn’t disconnect. Please try again."                                                        | The disconnect did not go through.                                   | Try again.                                                                                   |

For Recommended apps, the app's window can show:

| Message                                                                                                         | Cause                                                                                    | Fix                                                         |
| --------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------- |
| "Your workspace is still updating — this integration unlocks shortly."                                          | Your workspace computer does not have the Squad software version that the app needs yet. | Try again later.                                            |
| "The sign-in request expired. Start it again."                                                                  | The SiteGPT approval took too long.                                                      | Click **Sign in with SiteGPT** again.                       |
| "You approved the sign-in, but the credential couldn't be saved to your workspace (…). Sign in again to retry." | Squad could not store the credential on your workspace computer.                         | Sign in again.                                              |
| "Couldn’t save the key. Please try again."                                                                      | The key did not save.                                                                    | Check the key and paste it again.                           |
| "Couldn’t start the sign-in. Please try again." or "Sign-in failed. Please try again."                          | The sign-in did not start or did not finish.                                             | Try again. You can also click **Paste an API key instead**. |

When an agent is refused an action, it gets one of these messages and tells you:

* "This action is not allowed on this account. The connection is set to "\[level]" which does not include \[action]." Raise the account level with **Manage scope**.
* "Your agent policy restricts you to "\[level]" access on this account, which does not include \[action]." Change that agent's line under **Per-agent access**.
