Skip to main content

What are connected accounts?

Connected accounts are the result of a user (or your app) authorizing Flowra to use a third-party service on their behalf. For example: “John connected his Slack workspace” or “Sarah connected her Google account.” Each connection is stored as a connected account — it holds the OAuth tokens and metadata (which toolkit, which auth config, optional label). When a workflow runs a tool that needs that service (e.g. “send a Slack message”), Flowra uses the right connected account so the action runs in John’s or Sarah’s context. So: auth config = your app’s credentials (client ID/secret); connected account = one user’s (or one context’s) linked account after they’ve clicked “Connect” and completed OAuth.

Example use cases

  • “Connect Slack” in your app — Call POST /connected_accounts/link with the toolkit and auth config; you get a URL. Send the user to that URL; they sign in with Slack and approve. Flowra creates a connected account. You can then list accounts or pass that account ID when running workflows so the bot acts in that workspace.
  • Multi-user support bot — Each customer connects their own Slack/Gmail. You store which connected account belongs to which customer. When that customer chats, you run the workflow with their connected account so messages go from their account.
  • List or revoke — List connected accounts (filter by toolkit, status, user). Let users “disconnect” by calling delete on the connected account.

How it works

  1. You have an auth config for the provider (e.g. Slack).
  2. You call Create link with that config (and optional metadata like label, external user id). The API returns a URL.
  3. The user opens the URL, completes OAuth (login, consent). Flowra creates the connected account and redirects back to your app.
  4. Use the connected account ID when running workflows or tools that need that connection. You can list and get accounts, and delete to revoke.

API endpoints

List connected accounts

GET /api/v1/connected_accounts returns paginated connected accounts with filters.
Query parameterDescription
toolkitSlugsFilter by toolkit slugs
statusesFilter by status (e.g. ACTIVE, FAILED)
authConfigIdsFilter by auth config IDs
connectedAccountIdsFilter by connected account IDs
eUIDsFilter by external user IDs
labelsFilter by labels
orderBycreatedAt or updatedAt
orderDirectionasc or desc
cursor, limitPagination (default limit 10)
POST /api/v1/connected_accounts/link creates a new auth link session. Users open the returned URL to complete OAuth and connect their account. Request body: CreateConnectedAccountLinkDto (see API reference).

Get and delete

  • GET /api/v1/connected_accounts/{id} — Get one connected account by ID.
  • DELETE /api/v1/connected_accounts/{id} — Remove the connected account.