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

# Tool Permissions

> Learn how to give your workers access to tools like Gmail, Google Calendar, Slack, and more

## Overview

Giving your workers access to tools like Gmail, Slack, or Google Calendar works differently than traditional software. Think of it like onboarding a new employee: they need both **the right equipment** and **login credentials** to do their job.

Spinnable uses a **two-level system**:

1. **Add the tool to your worker** — Like giving them access to the company's software suite
2. **Connect the tool** — Like providing them with login credentials so they can actually use it

<Warning>
  **A tool won't work unless both steps are complete.** Adding a tool without connecting it is like handing someone a laptop without the password — they can't actually use it.
</Warning>

***

## Understanding Tool States

Here's what each state means for your worker:

| State                               | What it means                          | Does it work? |
| ----------------------------------- | -------------------------------------- | ------------- |
| ❌ **Tool not added**                | Worker doesn't have access to the tool | No            |
| ⚠️ **Tool added but not connected** | Worker has the tool but can't log in   | No            |
| ✅ **Tool added + connected**        | Worker can use the tool                | Yes           |

***

## Step 1: Add a Tool to Your Worker

You can add tools to a worker in two ways:

### Option A: Through the Worker Settings

1. Go to your worker's page
2. Click **Tools**
3. Click **Add tool**
4. Select the tool(s) you need from the list
5. Click **Add**

### Option B: Ask Conversationally

Just tell your worker what you need:

> "Hey, I need you to manage my Gmail inbox. Can you add the Gmail tool?"

Your worker will guide you through adding the necessary tools.

<Tip>
  **Quick tip:** If you're not sure which tools your worker needs, just describe what you want them to do. They'll suggest the right tools.
</Tip>

***

## Step 2: Connect the Tool

After adding a tool, you'll need to **connect it** before your worker can use it. There are two ways to do this:

### Method 1: User-Level Connection (Recommended for Most Users)

**How it works:** Connect a tool once in your personal User Tools, then any worker can use your account when needed.

**When to use this:**

* You want simple, one-time setup
* You're comfortable with workers using your personal accounts
* You don't need separate accounts for different workers

**Steps:**

1. Click your **email address**
2. Click **Tools** (you'll see tools connected at user level, and each worker and their tools)
3. Click **Add tools**, select the tool(s) you want, then click **Connect** to authenticate with your account
4. Go back to your worker's page → **Tools**
5. Click **Connect** on the tool
6. Select **"Use user account"** from the dropdown

<Info>
  **Important:** Even though you connected the tool in User Tools, you still need to explicitly select "user account" when connecting it to your worker. It doesn't happen automatically.
</Info>

**Pros:**

* ✅ Set it up once, use it for all workers
* ✅ Quick and easy
* ✅ No need to manage multiple accounts

**Cons:**

* ⚠️ Workers have all the permissions your personal account has
* ⚠️ Actions appear as you (emails sent, calendar events created, etc.)
* ⚠️ Less secure if you need strict access control

***

### Method 2: Worker-Specific Connection (Recommended for Teams & Sensitive Data)

**How it works:** Connect each tool with a separate account specifically for that worker.

**When to use this:**

* You need different workers to use different accounts (e.g., Worker A uses GitHub account 1, Worker B uses GitHub account 2)
* You want better security and access control
* You want actions to appear under a specific account (not your personal account)
* You're managing tools with sensitive data

**Steps:**

1. Go to your worker's page → **Tools**
2. Click **Connect** on the tool you want to connect
3. Authenticate with a **separate account** (you'll typically be redirected to the tool's login page or asked for an API key depending on the tool)
4. The tool is now connected specifically to this worker

**Pros:**

* ✅ More secure — control permissions at the tool level
* ✅ Different workers can use different accounts for the same tool
* ✅ Actions appear under the worker's account, not yours
* ✅ Better audit trail and accountability

**Cons:**

* ⚠️ Requires setting up separate accounts for each worker that needs the tool
* ⚠️ More setup time

***

## Tools with Granular Access Controls

Some tools are split into **multiple versions** to give you precise control over what your workers can do. These are clearly labeled in the tool title.

### Examples:

* **Gmail (read)** — Worker can read emails but not send them
* **Gmail (send)** — Worker can send emails on your behalf
* **Outlook (read)** — Worker can read emails but not send them
* **Outlook (send)** — Worker can send emails on your behalf

<Tip>
  **Why this matters:** If you only want your worker to monitor your inbox and flag important emails, add **Gmail (read)** only. If you want them to draft and send responses, add both **Gmail (read)** and **Gmail (send)**.
</Tip>

You can add one or both depending on your needs. Just remember: **each tool needs to be connected separately**, even if they're for the same service.

***

## Common Scenarios & Mistakes

### ❌ "I connected Gmail but my worker can't send emails"

**What happened:** You likely added and connected **Gmail (read)** but not **Gmail (send)**.

**Solution:** Go to your worker's Tools page, add **Gmail (send)**, and connect it.

***

### ❌ "I connected Gmail in User Tools, but my worker says they still can't access it"

**What happened:** You connected it at the user level, but you didn't select "user account" when connecting the tool to your worker.

**Solution:**

1. Go to your worker → **Tools**
2. Click **Connect** next to Gmail
3. Select **"Use user account"** from the dropdown

***

### ❌ "My worker did something with my Gmail, but I wanted them to use a different account"

**What happened:** You used the user-level connection method, which gives workers access to your personal account.

**Solution:**

1. Go to your worker → **Tools**
2. Click **Disconnect** on the tool
3. Click **Connect** again
4. This time, authenticate with a separate account instead of selecting "user account"

***

### ❌ "I added a tool but it's not showing up"

**What happened:** Adding a tool can take a moment to process.

**Solution:** Refresh the page. If it still doesn't appear, try adding the tool again or reach out to support.

***

## Available Tools

Spinnable supports 35+ integrations across communication, productivity, development, and specialized tools.

<Card title="Browse All Tools" icon="plug" href="/tools/overview">
  See the complete list of available tools and integrations →
</Card>

<Info>
  The full list of available tools is always growing. You can also see all current integrations by going to any worker's page → **Tools** → **Add tool**.
</Info>

***

## Important Security Notes

<Warning>
  **Workers have whatever permissions the connected account has.** If you connect your personal Gmail account, your worker can do anything you can do with Gmail (within the scope of the specific tool — read vs. send).
</Warning>

### Best Practices:

1. **Use worker-specific accounts for sensitive tools** — Consider creating dedicated accounts for workers that handle financial data, customer information, or other sensitive materials.

2. **Use granular tools when available** — If you only need a worker to read emails, don't give them send permissions.

3. **Review connected tools regularly** — Go to your worker's Tools page periodically to make sure they only have access to what they need.

4. **Disconnect tools when no longer needed** — If a worker's role changes, remove tools they no longer use.

***

## Quick Reference: Which Connection Method Should I Use?

| Scenario                                                    | Recommended Method         |
| ----------------------------------------------------------- | -------------------------- |
| Single worker, personal use                                 | User-level connection      |
| Multiple workers, same account for all                      | User-level connection      |
| Different workers need different accounts for the same tool | Worker-specific connection |
| Handling sensitive data or customer information             | Worker-specific connection |
| Need actions to appear under a specific account (not yours) | Worker-specific connection |
| Want maximum security and control                           | Worker-specific connection |

***

## Need Help?

If you're stuck or unsure which approach to use, just ask your worker conversationally:

> "I want you to access my Gmail, but I'm not sure how to set that up. Can you walk me through it?"

Your worker can guide you through the process step-by-step.
