You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(integrations): rewrite the Integrations guide for the sidebar flow
Integrations moved out of Settings to a top-level sidebar page. Rewrote the
guide to the current journey: the Integrations page (Connected/Featured/search),
service pages with one-click skills and templates, + Add to Sim -> connect
dialog (display name + permissions) -> provider OAuth. Replaced the four
Settings-era screenshots with current captures (connect dialog illustrated via
HubSpot); block-side screenshots (account selector, manual credential ID) kept;
one VISUAL marker for the connection detail view pending a fresh capture.
Members/roles, credential-ID, reconnect/disconnect, email polling, and FAQ
substance unchanged apart from navigation.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: apps/docs/content/docs/en/integrations/index.mdx
+44-67Lines changed: 44 additions & 67 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,79 +8,74 @@ import { Callout } from 'fumadocs-ui/components/callout'
8
8
import { Image } from'@/components/ui/image'
9
9
import { FAQ } from'@/components/ui/faq'
10
10
11
-
Integrations are authenticated connections to third-party services like Gmail, Slack, GitHub, Dropbox, and more. Sim handles the OAuth flow, token storage, and automatic token refresh — you connect once and select the account in any block that needs it.
11
+
Integrations are authenticated connections to third-party services like Gmail, Slack, GitHub, and HubSpot. Sim handles the OAuth flow, token storage, and automatic token refresh — you connect once and select the account in any block that needs it.
12
12
13
13
You can connect **multiple accounts per service** — for example, two separate Gmail accounts for different workflows.
14
14
15
-
## Managing Integrations
15
+
## The Integrations page
16
16
17
-
To manage integrations, open your workspace **Settings**and navigate to the **Integrations**tab.
17
+
Click **Integrations** in the workspace sidebar. The page shows your **Connected**accounts, a **Featured**list, and a search box covering every available service.
18
18
19
19
<Image
20
-
src="/static/integrations/integrations-list.png"
21
-
alt="Integrations tab showing connected accounts with service icons, names, and Details/Disconnect buttons"
alt="The Integrations page showing the sidebar entry, search, connected accounts, and featured integrations"
22
+
width={800}
23
+
height={664}
24
24
/>
25
25
26
-
The list shows all your connected accounts with the service icon, display name, and provider. Each entry has a **Details** button and a **Disconnect** button.
27
-
28
-
## Connecting an Account
26
+
Open a service to see what it offers:
29
27
30
-
Click **+ Connect** in the top right to open the connection modal.
28
+
-**Skills** — ready-made capabilities you add with one click, like *upsert-contact* for HubSpot.
29
+
-**Templates** — starter workflows built around the service.
alt="The connect dialog (HubSpot shown) with display name, description, and the permissions requested"
49
+
width={700}
50
+
height={708}
46
51
/>
47
52
48
-
1. Review the **Permissions requested** — these are the scopes Sim will request from the provider
49
-
2. Enter a **Display name** to identify this connection (e.g. "Work Gmail" or "Marketing Slack")
50
-
3. Optionally add a **Description**
51
-
4. Click **Connect** and complete the authorization flow
53
+
When the provider redirects you back, the connection appears under **Connected**.
52
54
53
-
## Using Integrations in Workflows
55
+
## Using integrations in workflows
54
56
55
-
Blocks that require authentication (e.g. Gmail, Slack, Google Sheets) display a credential selector. Select the connected account you want that block to use.
57
+
Blocks that require authentication (e.g. Gmail, Slack, HubSpot) display an account selector. Select the connected account you want that block to use.
56
58
57
59
<Image
58
60
src="/static/credentials/oauth-selector.png"
59
-
alt="Gmail block showing the account selector dropdown with connected accounts"
61
+
alt="A block showing the account selector dropdown with connected accounts"
60
62
width={500}
61
63
height={350}
62
64
/>
63
65
64
-
You can also connect additional accounts directly from the block by selecting **Connect another [service] account** at the bottom of the dropdown.
66
+
You can also connect another account directly from the block by selecting **Connect another [service] account** at the bottom of the dropdown.
65
67
66
68
<Callouttype="info">
67
69
If a block requires an integration and none is selected, the workflow will fail at that step.
68
70
</Callout>
69
71
70
-
## Using a Credential ID
71
-
72
-
Each integration has a unique credential ID you can use to reference it dynamically. This is useful when you have multiple accounts for the same service and want to switch between them programmatically — for example, routing different workflow runs to different Gmail accounts based on a variable.
72
+
## Using a credential ID
73
73
74
-
To copy a credential ID, open **Details** on any integration and click the clipboard icon next to the Display Name.
74
+
Each connection has a unique credential ID you can use to reference it dynamically. This is useful when you have multiple accounts for the same service and want to switch between them programmatically — for example, routing different workflow runs to different Gmail accounts based on a variable.
75
75
76
-
<Image
77
-
src="/static/integrations/copy-credential-id.png"
78
-
alt="Integration details showing the Copy credential ID tooltip on the clipboard icon next to the Display Name"
79
-
width={700}
80
-
height={150}
81
-
/>
76
+
To copy a credential ID, open the connection from the **Connected** list and use the copy control next to its name.
82
77
83
-
In any block that requires an integration, click **Switch to manual ID** next to the credential selector to switch from the dropdown to a text field.
78
+
In any block that requires an integration, click **Switch to manual ID** next to the account selector to switch from the dropdown to a text field.
- Manage **Members** — invite teammates by email and assign them an **Admin** or **Member** role
116
-
-**Reconnect** — re-authorize the connection if it has expired or if you need to update permissions
117
-
-**Disconnect** — remove the integration entirely
100
+
{/* VISUAL: the connection detail view in the new Integrations page — display name, members, reconnect, disconnect. */}
118
101
119
-
Click **Save** to apply changes, or **Back** to return to the list.
102
+
- Edit the **Display name** and **Description**.
103
+
- Manage **Members** — invite teammates and assign them an **Admin** or **Member** role. Admins can edit, reconnect, disconnect, and manage access; Members can use the connection in workflows. When you connect an account, you are its Admin.
104
+
-**Reconnect** — re-authorize if the connection expired or you need updated permissions.
105
+
-**Disconnect** — remove the connection entirely.
120
106
121
107
<Callouttype="warn">
122
108
If you disconnect an integration that is used in a workflow, that workflow will fail at any block referencing it. Update blocks before disconnecting.
123
109
</Callout>
124
110
125
-
## Access Control
126
-
127
-
Each integration has role-based access:
128
-
129
-
-**Admin** — can view, edit, disconnect, reconnect, and manage member access
130
-
-**Member** — can use the integration in workflows (read-only)
131
-
132
-
When you connect an integration, you are automatically set as its Admin. You can share it with teammates from the Details view.
133
-
134
111
## Email polling groups
135
112
136
113
The Gmail and Outlook email triggers can watch several team members' inboxes through a single trigger, called an **email polling group** (Team and Enterprise plans). An admin creates a group under **Settings → Email Polling**, picks Gmail or Outlook, and invites members by email; each invitee connects their own inbox through a link. On an email trigger, select the group from the credentials dropdown instead of a single account, and the trigger routes everyone's mail through the workflow.
@@ -139,9 +116,9 @@ Inviting someone to a group grants inbox access for that trigger only, which is
139
116
140
117
<FAQitems={[
141
118
{ question: "Does Sim handle OAuth token refresh automatically?", answer: "Yes. When an integration is used during execution, Sim checks whether the access token has expired and automatically refreshes it using the stored refresh token before making the API call. You do not need to handle token refresh manually." },
142
-
{ question: "Can I connect multiple accounts for the same service?", answer: "Yes. You can connect multiple accounts per service (for example, two separate Gmail accounts). Each block lets you select which account to use from the credential dropdown. This is useful when different workflows need different identities or permissions." },
143
-
{ question: "What is a credential ID and when should I use it?", answer: "Each integration has a unique credential ID that you can use instead of the dropdown selector. This lets you pass the credential dynamically — for example, from a variable or a previous block's output — so the same workflow can use different accounts depending on the context. Copy the ID from the Details view and use Switch to manual ID in any block to paste or reference it." },
144
-
{ question: "What happens if an OAuth token can no longer be refreshed?", answer: "If a refresh fails (e.g. the user revoked access or the refresh token expired), the workflow will fail at the block using that integration. Open Settings → Integrations, find the connection, and use the Reconnect button to re-authorize it." },
119
+
{ question: "Can I connect multiple accounts for the same service?", answer: "Yes. You can connect multiple accounts per service (for example, two separate Gmail accounts). Each block lets you select which account to use from the account dropdown. This is useful when different workflows need different identities or permissions." },
120
+
{ question: "What is a credential ID and when should I use it?", answer: "Each connection has a unique credential ID that you can use instead of the dropdown selector. This lets you pass the credential dynamically — for example, from a variable or a previous block's output — so the same workflow can use different accounts depending on the context. Copy the ID from the connection's detail view and use Switch to manual ID in any block to paste or reference it." },
121
+
{ question: "What happens if an OAuth token can no longer be refreshed?", answer: "If a refresh fails (e.g. the user revoked access or the refresh token expired), the workflow will fail at the block using that integration. Open Integrations in the sidebar, find the connection, and reconnect it to re-authorize." },
145
122
{ question: "Are OAuth tokens encrypted at rest?", answer: "Yes. OAuth tokens are encrypted before being stored in the database and are never exposed in the workflow editor, logs, or API responses." },
146
123
{ question: "What happens if I disconnect an integration that is used in a workflow?", answer: "Any block referencing the disconnected integration will fail at runtime. Make sure to update those blocks before disconnecting, or reconnect the integration to restore access." },
0 commit comments