> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Integrations

> Learn what integrations Agent supports and how they activate automatically based on your prompts.

export const AiPrompt = ({children}) => {
  return <CodeBlock className="relative block font-sans whitespace-pre-wrap break-words">
      <div className="pr-7">
        {children}
      </div>
    </CodeBlock>;
};

<Frame>
  <img src="https://mintcdn.com/replit/AZ1L8RlIroSxuJDa/images/replitai/agent-logo.png?fit=max&auto=format&n=AZ1L8RlIroSxuJDa&q=85&s=d98e494833cceffef3c48d9abcdf047f" alt="Agent logo with integration connections illustrated around it" width="1280" height="720" data-path="images/replitai/agent-logo.png" />
</Frame>

Agent supports four types of integrations so you can go from idea to app, fast:

* **Replit managed**: Built-in integrations that work automatically. Create an app and your Agent can start using these right away.
* **Connectors**: First-party integrations Replit supports. Sign in once. Agent can read and write to these services directly from chat — pull data, create records, send messages — and build with them across your apps.
* **External integrations**: Trusted third-party services you can build with. Ask Agent to set them up; you'll provide API keys.
* **Agent services**: Paid third-party APIs that Agent uses behind the scenes — no API keys required. Usage is billed to your Replit credits.

<Note>
  **Paid plans only**: Connectors require a Core, Pro, or Enterprise subscription. Free plan builders can use Replit-managed integrations like databases, authentication, and more.
</Note>

## Getting started

To use an integration, mention the service or functionality you need. For example:

<AiPrompt>
  Create a web app that uses Stripe to accept payments and SendGrid to send confirmation emails
</AiPrompt>

Agent automatically detects these keywords and implements the necessary code and configuration.

## Replit managed integrations

These built-ins require no setup. Just ask Agent to use them.

<AccordionGroup>
  <Accordion title="Replit Database">
    Managed PostgreSQL for relational data and SQL queries, built into every Replit App.
    <AiPrompt>Add Replit Database to my app</AiPrompt>
  </Accordion>

  <Accordion title="Replit App Storage">
    Built-in storage for app files and assets.
    <AiPrompt>Use Replit App Storage to save files</AiPrompt>
  </Accordion>

  <Accordion title="App Storage">
    Cloud-based storage for images, videos, and other files.
    <AiPrompt>Add App Storage to my app to store files</AiPrompt>
  </Accordion>

  <Accordion title="Replit Auth">
    Native authentication so people can sign in with Replit.
    <AiPrompt>Add Replit Auth to my app</AiPrompt>
  </Accordion>

  <Accordion title="Replit Domains">
    Configure and manage custom domains for your app.
    <AiPrompt>Set up a custom domain for my app</AiPrompt>
  </Accordion>
</AccordionGroup>

## Connectors

Connectors let Agent read and write to your services directly. They are first-party integrations supported by Replit. Sign in once on the Connectors page in the Project Editor, then reuse those connections across apps.

<Note>
  Connections are tied to your Replit account and persist across all your apps. Connect a service once and use it in any app you create.
</Note>

### Available connectors

<AccordionGroup>
  <Accordion title="Google Workspace" icon="google">
    * **Google Drive**: Access and manage files and folders
    * **Google Docs**: Create, read, and edit documents
    * **Google Sheets**: Read and write spreadsheet data
    * **Google Calendar**: Read and write events and settings
    * **Gmail**: Send, receive, and manage emails
  </Accordion>

  <Accordion title="Microsoft 365" icon="microsoft">
    * **OneDrive**: Access and manage files and folders
    * **Outlook**: Send, receive emails and manage calendar events
    * **SharePoint**: Read, write, and manage sites and documents
  </Accordion>

  <Accordion title="Developer tools" icon="code">
    * **GitHub**: Access repositories, users, and organizations
    * **Linear**: Create and manage issues, comments, and schedules
    * **Jira**: Read users and manage work items and issues
    * **Asana**: Read tasks and project data
    * **Confluence**: Read users and groups, write content to spaces
  </Accordion>

  <Accordion title="Cloud storage" icon="cloud">
    * **Dropbox**: Read files, content, and metadata
    * **Box**: Read and access files and folders
  </Accordion>

  <Accordion title="Communication" icon="comments">
    * **AgentMail**: Send and receive emails programmatically
    * **Discord**: Access guild information and user profiles
    * **Resend**: Send transactional emails
    * **SendGrid**: Send transactional emails
    * **Slack**: Send messages and interact with channels and workflows
    * **Twilio**: Send SMS messages and make voice calls
  </Accordion>

  <Accordion title="CRM and sales" icon="building">
    * **Salesforce**: Access CRM data and perform operations via REST API
    * **HubSpot**: Read CRM objects, contacts, and deals
    * **Zendesk**: Read and write access to Ticket API for support workflows
  </Accordion>

  <Accordion title="Payments and monetization" icon="credit-card">
    * **RevenueCat**: Manage in-app purchases and subscriptions
    * **Stripe**: Process payments and manage subscriptions. See the [Stripe payments guide](/core-concepts/monetization/stripe-payments).
  </Accordion>

  <Accordion icon="building-columns">
    * **Plaid**: Access financial account balances, transactions, and investment data where supported. See the [Plaid connector guide](/replitai/plaid-connector).
  </Accordion>

  <Accordion title="AI and media" icon="wand-magic-sparkles">
    * **ElevenLabs**: Generate AI voice and audio content
  </Accordion>

  <Accordion title="Productivity" icon="list-check">
    * **Notion**: Read and write to workspaces and pages
    * **Spotify**: Access and manage playlists and library
    * **Todoist**: Create and manage tasks and projects
  </Accordion>
</AccordionGroup>

### Accessing Connectors

You can access Connectors from the sidebar in the Project Editor:

<Steps>
  <Step title="Open the Project Editor">
    Open your app in the Project Editor.
  </Step>

  <Step title="Select Connectors">
    Select **Connectors** from the sidebar.
  </Step>

  <Step title="Add new integration">
    Choose **Add new integration** to browse available connectors.
  </Step>

  <Step title="Connect">
    Select **Connect** next to the service you want to integrate.
  </Step>
</Steps>

<Tip>
  To disconnect a service, return to the Connectors panel and select **Manage** next to the connected service.
</Tip>

<Frame>
  <img src="https://mintcdn.com/replit/azgaw651Z-a6J23V/images/replitai/connectors-overview.png?fit=max&auto=format&n=azgaw651Z-a6J23V&q=85&s=44fc5899e21e5b11318ab41887ff86b5" alt="App connectors interface showing available integrations including GitHub, OneDrive, Outlook, Spotify, Linear, Dropbox, Monday.com, Google Docs, and YouTube with their connection status and manage options" width="3456" height="1688" data-path="images/replitai/connectors-overview.png" />
</Frame>

When you select Connect for a service, Replit redirects you to authenticate with that service and grant permissions for Replit to access your data:

<Frame>
  <img src="https://mintcdn.com/replit/azgaw651Z-a6J23V/images/replitai/connectors-oauth-flow.png?fit=max&auto=format&n=azgaw651Z-a6J23V&q=85&s=16716e418094fdc09882d1e6e2d0103f" alt="OAuth authentication flow showing the Linear connection dialog with privacy and security information, explaining data usage and user control" width="1345" height="1213" data-path="images/replitai/connectors-oauth-flow.png" />
</Frame>

### Configuring OAuth App with Replit

<Note>
  **Enterprise only**: Configuring a custom OAuth app requires an Enterprise subscription.
</Note>

On the Enterprise plan, you can bring your own OAuth app for a connector instead of using Replit's default. This lets your organization own the OAuth client, display your own branding on the consent screen, and control the exact scopes your builders can request.

To configure a connector with your own OAuth app, you need three things from the provider: a **Client ID**, a **Client Secret**, and the **scopes** you want to authorize. You also need to register Replit's callback URL with the provider so authentication can complete.

<Frame>
  <img src="https://mintcdn.com/replit/4yzFNPCD7dvZeV3f/images/replitai/connector-oauth-configuration.png?fit=max&auto=format&n=4yzFNPCD7dvZeV3f&q=85&s=2bb8931dcd58c4fbad66b2de235bf0a1" alt="Connector OAuth configuration dialog with fields for Client ID, Client Secret, and Connector Scopes, and a Redirect URL set to https://replit.com/connectors/oauth/callback" width="1112" height="1218" data-path="images/replitai/connector-oauth-configuration.png" />
</Frame>

<Steps>
  <Step title="Create an OAuth app with your provider">
    Sign in to the provider's developer console or admin settings and create a new OAuth 2.0 application. Providers name this step differently — look for options like **Create OAuth app**, **Register application**, or **Create client credentials**.
  </Step>

  <Step title="Set the redirect URL">
    When the provider asks for an **Authorized redirect URI** (sometimes called **Callback URL** or **Redirect URL**), enter:

    ```
    https://replit.com/connectors/oauth/callback
    ```

    This URL is where the provider sends builders back to Replit after they authorize the app. It must match exactly — trailing slashes, protocol, and subdomain all matter. If you add more than one redirect URI, this one must be included.
  </Step>

  <Step title="Copy the Client ID and Client Secret">
    After you create the app, the provider shows a **Client ID** and a **Client Secret**.

    * **Client ID**: A public identifier for your OAuth app. It's safe to expose in URLs and client-side code.
    * **Client Secret**: A confidential value that proves the request is coming from your app. Treat it like a password — never commit it to a repository or share it publicly. Replit stores it securely on your behalf.

    Some providers only display the client secret once at creation time. Copy it immediately and store it somewhere safe until you paste it into Replit.
  </Step>

  <Step title="Choose your scopes">
    **Scopes** are permissions that define what your OAuth app is allowed to read or write on the builder's behalf. Each provider publishes its own list of scopes in its API documentation.

    When you configure the connector in Replit, the scopes you enter must **match exactly** (character-for-character, including any URL prefixes) the scopes you registered with the provider. Common causes of mismatch errors:

    * Missing the full URL prefix (for example, `https://www.googleapis.com/auth/drive.file` vs. `drive.file`).
    * Extra whitespace or trailing commas.
    * Requesting a scope in Replit that isn't enabled on the provider's app.

    Start with the minimum scopes your builders need, and add more later if required — most providers let you update scopes without recreating the app.
  </Step>

  <Step title="Configure the connector in Replit">
    From your organization's **Connectors** page, select **Add new integration**, choose the service, and paste the **Client ID**, **Client Secret**, and **Scopes** from the provider. Select **Configure** to save.
  </Step>
</Steps>

<Note>
  If authentication fails after configuration, double-check that the redirect URL in the provider matches `https://replit.com/connectors/oauth/callback` exactly and that every scope you entered in Replit is also authorized on the provider's app.
</Note>

### Example prompts

* "Integrate with Outlook to create an email dashboard"
* "Build a GitHub repository manager using my connected GitHub account"
* "Create a Linear task tracker for my team"
* "Build a Notion-powered website using my connected Notion workspace"
* "Create a Monday.com project dashboard"

<Note>
  Connectors provide authenticated access to your external services, eliminating the need to manage API keys or authentication tokens manually.
</Note>

<Tip>
  Looking for Workspace or organization connector management? See [Managing your connectors](/replitai/managing-connectors).
</Tip>

## External integrations

Trusted third-party services. Ask Agent to set them up; you'll provide API keys.

<Note>
  API keys are stored securely in your app's [Secrets](/core-concepts/project-editor/app-setup/secrets). Agent will prompt you to add the key when needed.
</Note>

### AI providers

<AccordionGroup>
  <Accordion title="OpenAI">
    Access GPT models for text generation, analysis, and assistants.
    <AiPrompt>Create a web app that uses OpenAI to summarize text</AiPrompt>
  </Accordion>

  <Accordion title="Google AI (Gemini)">
    Use Gemini models for multimodal understanding and generation.
    <AiPrompt>Use Google Gemini to analyze and summarize documents</AiPrompt>
  </Accordion>

  <Accordion title="Anthropic (Claude)">
    Access Claude models for reasoning, writing, and coding.
    <AiPrompt>Create a web app that uses Anthropic to generate content</AiPrompt>
  </Accordion>

  <Accordion title="Perplexity">
    AI-powered search and answer generation with citations.
    <AiPrompt>Create a web app that uses Perplexity to answer questions</AiPrompt>
  </Accordion>

  <Accordion title="Mistral AI">
    Fast, efficient language models for NLP tasks.
    <AiPrompt>Use Mistral to extract key facts from text</AiPrompt>
  </Accordion>

  <Accordion title="OpenRouter">
    Access hundreds of AI models from multiple providers through a single API.
    <AiPrompt>Use OpenRouter to access Llama models for my chatbot</AiPrompt>
  </Accordion>
</AccordionGroup>

### Business and automation

<AccordionGroup>
  <Accordion title="Workato">
    Trigger automation recipes and call APIs from your apps.
    <AiPrompt>Connect my app to a Workato recipe that syncs leads</AiPrompt>
  </Accordion>

  <Accordion title="HubSpot">
    Access CRM data and manage contacts.
    <AiPrompt>Connect my app to HubSpot to manage contacts</AiPrompt>
  </Accordion>
</AccordionGroup>

### Communication and community

<AccordionGroup>
  <Accordion title="Discord">
    Send messages and manage servers from your apps.
    <AiPrompt>Send a message to my Discord channel when a new signup happens</AiPrompt>
  </Accordion>
</AccordionGroup>

## Agent services

Some capabilities use paid third-party APIs behind the scenes. Agent handles the integration automatically — no API keys or setup required. You're billed at the provider's rate, deducted from your Replit credits.

<AccordionGroup>
  <Accordion title="Brave Image Search">
    Search for images across the web using Brave's image search API.
    <AiPrompt>Find product images for my e-commerce store</AiPrompt>
  </Accordion>

  <Accordion title="ElevenLabs">
    Generate realistic text-to-speech audio and voice content.
    <AiPrompt>Add voice narration to my app's onboarding flow</AiPrompt>
  </Accordion>

  <Accordion title="NanoBanana">
    Generate images and video using AI models.
    <AiPrompt>Generate a hero image for my landing page</AiPrompt>
  </Accordion>
</AccordionGroup>

<Note>
  Agent services are billed at the provider's public API rate. Costs are deducted from your Replit credits and appear on your [usage page](/billing/managing-spend).
</Note>

## Reconnecting integrations

If a connected service stops working — for example, if your login session expires or permissions change — Replit surfaces a reconnection alert in the Project Editor. Select the alert to reconnect the integration directly, without leaving the editor.

## Debugging connectors

Running into issues connecting a service? These guides walk you through common errors and how to fix them.

<AccordionGroup>
  <Accordion title="Google Workspace: &#x22;This app is blocked&#x22;">
    If you see **"This app is blocked"** when connecting Google Drive, Docs, Sheets, Calendar, or Gmail, your organization's Google Workspace likely restricts third-party OAuth apps. See the full troubleshooting guide to resolve it.

    [Resolve "This app is blocked" for Google connectors](/replitai/debugging-google-connectors)
  </Accordion>

  <Accordion title="Salesforce: &#x22;Connection Expired&#x22;">
    If your Salesforce connector stops working with a **"Connection Expired"** error, your Salesforce organization's refresh token policy is likely configured to expire tokens after a set period. See the full troubleshooting guide to update your Connected App settings.

    [Fix Salesforce connection expired errors](/replitai/debugging-salesforce-connectors)
  </Accordion>
</AccordionGroup>
