Connectors let your agents (and workflows) act inside the third-party tools your users already live in. Each connector registers a third-party OAuth app once; each end user then connects their own account, and every action runs against that user’s authorization — your agent never sees a long-lived token.Documentation Index
Fetch the complete documentation index at: https://hastekit.ai/docs/llms.txt
Use this file to discover all available pages before exploring further.
Supported connectors
| Connector | Type | Typical actions |
|---|---|---|
| Gmail | OAuth | Send, list, reply, draft messages |
| Google Calendar | OAuth | List events, create, invite attendees |
| Slack | OAuth | Post to channel, react, DM |
| Jira | OAuth | JQL search, create issue, comment, transition |
| GitHub | OAuth | List PRs, review, merge |
Two-layer model
Connectors have two layers:- Connector — the registered third-party OAuth app. Holds the app’s
client_id/client_secret(referenced via a stored credential) and a redirect/callback URL. One per third-party service per project. - Connection — a single user’s authorization of that connector. Each connection stores that user’s OAuth tokens (access + refresh). One connector typically has many connections — one per end user.
Slack: Post Message runs against a specific connection, not the connector. The agent picks the right connection based on who’s chatting.
Registering a connector
- Open Agent Framework → Connectors.
- Click Add Connector.
- Pick the Connector Type (Gmail, Slack, Jira, etc.).
- Copy the Redirect / Callback URL shown in the dialog (e.g.
https://app.hastekit.ai/api/agent-server/connections/oauth/callback). You will need this in the next step. - In the third-party app (e.g. the Slack app dashboard or a GitHub OAuth app), create an OAuth app and add the redirect URL as an authorized redirect URI. Copy the resulting client_id and client_secret.
- Back in HasteKit, open Agent Framework → Credentials and store the
client_idandclient_secretas a credential (or use an existing one with those keys). - Return to the Add Connector dialog. Give the connector a Name (e.g.
Production Slack App) and pick the Credential you just created. - Click Create.
0 connections).
Connecting an account
Once the connector is registered, end users (or you, as a developer for testing) can authorize their own account:- On the Connectors list, click Connect Account next to the connector.
- The standard OAuth consent screen for the third-party service opens.
- Sign in and approve the requested scopes.
- You’re redirected back; a new connection appears under the connector marked Active with a creation timestamp.
- Refresh — manually refresh OAuth tokens that are about to expire (the server also refreshes automatically when an action returns an expiration error).
- Disable — temporarily prevent the connection from being used without deleting its tokens.
- Delete — revoke and forget the connection. Tokens are removed; the user must re-connect to use the connector again.
Using connectors in workflows
In the Canvas tab of a workflow, the node palette groups actions by connector. Each connector contributes a set of typed nodes (e.g. Gmail → List Messages, Send Message, Reply, Draft). When you drop one onto the canvas and double-click to configure, you’ll see:- Connection — pick which user account to act on. This can be hard-coded for system actions, or templated like
{{trigger.user_connection}}so each invocation runs against the calling user’s connection. - Inputs — action-specific parameters (e.g.
qfor Gmail search syntax,label_idsto filter,max_resultsto cap). - Outputs — typed return values you can reference downstream as
{{node_id.field}}(e.g.{{node_4.messages}},{{node_4.next_page_token}}).
Using connectors directly from an agent
Connectors are also surfaced as tools to an agent without a workflow. In the Agent Builder → Tools tab, enable the connector and pick which actions are exposed. The agent receives those actions as ordinary tools and calls them through the configured connection. For sensitive actions (e.g.send, delete, transition), mark them as requires-approval to gate them behind a human-in-the-loop step.
Security model
- Your agent never sees a user’s OAuth tokens; HasteKit performs the request on the agent’s behalf and returns only the response data.
client_id/client_secretare stored as encrypted credentials and never returned in API responses.- Disabling a connection blocks all future actions through it; deleting it revokes locally and forces a re-auth.
- Every connector call appears as a span in the trace with the connector, action, arguments, status, and latency.
Relation to other features
- MCP Servers — MCP brings tools from any MCP-speaking server (often a power-user’s local MCP). Connectors are HasteKit-managed first-class integrations with curated actions and per-user OAuth.
- Channels — Channels deliver messages to the user (Slack, Telegram). Connectors let agents act on behalf of the user.