# AI Integrations

The **AI Integrations** page connects AI providers' compliance and admin APIs and controls the event and metric streams they import. Open it from **Organization settings > AI Integrations** in the dashboard.

<Callout title="Optional" type="info">
  These integrations are optional. The platform works with the basic instrumentation from the observability plugin and the [device agent](/docs/ai-control-plane/org-admin/device-agent) alone; provider APIs add richer usage, spend, and review data on top.
</Callout>

## Access requirements

<Callout type="info">
  Viewing this page requires the `org:read` scope, so both default Admin and Member roles can see connection status. Connecting, configuring, pausing, or deleting providers requires the `org:admin` scope, held only by the [Admin role](/docs/ai-control-plane/org-admin/roles-and-permissions) by default.
</Callout>

## Providers

- **Cursor** — connects the Cursor Admin API to track Cursor usage and spend across the organization
- **Anthropic Compliance** — imports Claude chats from claude.ai web and desktop for security review
- **OpenAI Compliance Logs** — imports Codex usage and spend from OpenAI Compliance Logs

Each provider card shows its connection status, how many of its streams are active, and a **Configure** action. Providers can also be connected during the setup wizard's [Additional agent configuration step](/docs/ai-control-plane/getting-started#additional-agent-configuration).

![The AI Integrations page with connected Cursor, Anthropic Compliance, and OpenAI Compliance Logs providers and their stream tables](/assets/docs/ai-control-plane/org-admin/ai-integrations.webp)

## Streams

Expanding a connection lists its streams, each with a type (event or metric), sync cadence, last-synced time, and health status. For example, the Anthropic Compliance connection imports a chat message event stream every ten minutes alongside hourly token-usage and cost metrics.

Streams pause and resume individually, independent of the connection, so one stream can be turned off without disconnecting the provider. **Delete Connection** removes the provider entirely.
