---
title: "Connectors"
description: "Connect Google Analytics, PostHog, Stripe, Vercel, Supabase, Better Stack or Slack once, so your agents read live production data without pasting keys."
url: "https://www.fredrin.com/docs/connectors"
updated: "2026-08-13"
---

# Connectors

Connect a service once, at the project, and your agents can read live production data from it. No pasting API keys into a prompt, and no agent minting credentials of its own.

## The idea

You ask "how much traffic did we get this week" and the agent answers, because the connection already exists and the agent is allowed to use it.

The alternative, which is what most people do today, is pasting an API key into a chat window. That key is now in a transcript, it is scoped to everything you can do, and nobody can revoke it without noticing it leaked.

## Supported services

| Service | Capability |
|---|---|
| **Google Analytics** | Analytics |
| **PostHog** | Analytics |
| **Google Search Console** | Search metrics |
| **Stripe** | Revenue |
| **Vercel** | Deployments |
| **Supabase** | Database |
| **Better Stack** | Uptime and monitoring |
| **Slack** | Messaging |

## Normalized shapes

Every connector of the same kind returns the same shape. Two analytics providers fill the same normalized metrics object, so a query written against one works against the other.

Where a provider genuinely does not measure something, the field comes back null rather than zero. That distinction matters: a substituted zero is a wrong number that looks like a real one.

## Reading a connector

From an agent session, or your own terminal:

```bash
fredrin connectors list
fredrin connectors metrics --provider posthog --days 7
```

The same surface is on the [REST API](https://www.fredrin.com/docs/api) under the project's connectors routes.

The important rule: **read them through Fredrin, not around it.** Do not have an agent mint its own provider key or query the service directly. The connection exists, it is scoped, and it is revocable in one place.

## Credentials

Stored encrypted, scoped to the project or workspace that owns them, and never returned to the client. An agent gets query results, never the key.

Revoking a connector revokes it everywhere at once.

## Next steps

- [Automations](https://www.fredrin.com/docs/workers/automations) - scheduled tasks and webhook runs.
- [The CLI](https://www.fredrin.com/docs/cli) - reading connectors from a terminal.
- [Privacy](https://www.fredrin.com/docs/memory/privacy) - what is stored and where.
