# Connectors

> Link your Google, Slack, Notion, GitHub, HubSpot or Linear account so your app can use it.


Connectors let your app act on **your** accounts on other services: add bookings to your Google Calendar, append orders to a Google Sheet, post to a Slack channel, create Linear issues from bug reports.

Connectors are part of Pro and Pro+.

## Available connectors

| Connector | What the app can do |
|---|---|
| Google Calendar | Read and create events |
| Gmail | Send email from your address |
| Google Sheets | Read and write spreadsheets |
| Google Drive | Create and read files the app makes |
| Slack | Post messages, list channels and users |
| Notion | Read and write pages and databases you share |
| GitHub | Work with repositories, issues and pull requests |
| HubSpot | Read and update contacts and deals |
| Linear | Create and update issues |

## Connect an account

1. Open **Dashboard → Connectors**.
2. Click **Connect** next to the service and approve access on its consent screen.
3. You're sent back to the dashboard. The card shows which account is connected.

Then ask for the feature in chat, for example: “When someone books a slot, add it to my Google Calendar.” Draftship writes a backend function that uses the connection.

## Who can use a connection

Each connection belongs to one app and to the Draftship account that linked it. Other accounts, and people who clone your app, have to link their own.

Your app's visitors don't get your account, but they can trigger functions that use it. So you choose who can, under **Who can use it**:

| Option | Who can trigger it |
|---|---|
| **Admins only** (default) | You and your app's admins |
| **Signed-in users** | Anyone with an account in your app |
| **Anyone** | Every visitor, without signing in |

Workflows and automations can always use the connection, because you set those up. Tests can't, unless you choose **Anyone**, so they don't act on your real accounts.

## Let each of your users connect their own account

So far, connections use *your* account. Your app can also let each of its users link their own, so that a scheduling app adds events to each person's own calendar. Ask for it in chat, for example: "Let each user connect their own Google Calendar."

- People connect from inside your app, and they need to be signed in to it.
- A function can only use the account of the person who made the request. It can't use anyone else's.
- People can disconnect at any time. Deleting a user also removes their connections.
- In **Dashboard → Connectors** you see how many people linked each service, but not who or which account.
- Automations and tests can't use these accounts, because no person is making the request. In [test mode](/docs/data/test-data), test accounts can link their own.
- The service's approval screen names Draftship, not your app. Until Draftship's Google access completes Google's review, Google may show a warning and limit how many people can connect.

## How it stays safe

- Tokens are encrypted and stored by Draftship. They're never sent to the browser or to visitors.
- Only your app's own backend functions can use them.
- Tokens are refreshed automatically. If a service revokes access, the dashboard log shows it and you can **Reconnect**.
- **Disconnect** removes the stored tokens immediately. You can also revoke access from the service's own security settings.

Branches use the main app's connections.

For code-level details see [Backend functions](/docs/developers/backend/functions#connectors).
