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

# Connect Organization Credential Plugin

> Connects a non-OAuth plugin for the whole organization. Requires an organization admin. Supported for PostHog, ClickHouse, Cloudflare, and Vercel.



## OpenAPI

````yaml /openapi.json post /v1/plugins/{pluginId}/connect
openapi: 3.1.0
info:
  title: Replica API
  version: 2.0.0
  description: >-
    The Replica API allows you to programmatically manage cloud workspaces for
    AI agents. Use this API to manage environments (the org-scoped primitive
    workspaces are created from — including variables, files, skills, MCPs, warm
    hooks, start hooks, and warm pools), create and manage replicas, send
    messages, manage chats, stream events, read connected repositories and
    repository sets, and configure automations.
servers:
  - url: https://api.tryreplicas.com
    description: Production API
security:
  - apiKey: []
tags:
  - name: Environments
    description: >-
      Manage environments — the primitive that workspaces are created from.
      Variables, files, skills, MCPs, warm-hooks, and warm-pools are all scoped
      to an environment. Every organization has a singleton Global environment
      whose values apply to every workspace. Personal environments are scoped to
      the authenticated user and can be standalone or source-backed by a team
      environment.
  - name: Repository
    description: >-
      Read repositories and repository sets connected to your organization.
      Repositories are the underlying GitHub-connection layer; bind them to an
      environment to use them in workspaces.
  - name: Replica
    description: >-
      Manage replicas (workspaces) for AI agents. `/v1/replica` endpoints accept
      API keys and workspace engine-secret authentication; user-session JWTs are
      not accepted.
  - name: Terminal
    description: Manage interactive terminal sessions in active workspaces
  - name: Preview
    description: Manage public preview URLs for workspace ports
  - name: Profile
    description: Read and update the authenticated user's profile
  - name: Credentials
    description: >-
      Manage coding-agent credentials for an organization or the authenticated
      user
  - name: Slack
    description: Connect Slack identities and route threads to Replicas workspaces
  - name: Linear
    description: Connect Linear identities to Replicas accounts
  - name: Automation
    description: >-
      Create and manage automations that trigger replicas on a schedule or in
      response to events
  - name: Downloads
    description: Download Replicas applications
  - name: Media
    description: >-
      Read workspace media and obtain short-lived download or inline preview
      URLs
  - name: Analytics
    description: >-
      Read aggregated activity and usage metrics for your organization: compute
      minutes, workspaces created by source, and pull request throughput over a
      time range.
  - name: Presence
    description: >-
      Read and report ephemeral member presence: who is online, where they are
      (environment or workspace), and whether they are typing. Presence is
      backed by short-lived keys rather than the database and broadcast to other
      members over the events stream.
  - name: Plugins
    description: >-
      Install and manage Composio-backed workspace plugins. An organization
      admin installs a plugin for the whole organization, or a member installs
      it personally; inside a workspace a personal connection takes precedence
      over the organization one.
paths:
  /v1/plugins/{pluginId}/connect:
    post:
      tags:
        - Plugins
      summary: Connect Organization Credential Plugin
      description: >-
        Connects a non-OAuth plugin for the whole organization. Requires an
        organization admin. Supported for PostHog, ClickHouse, Cloudflare, and
        Vercel.
      operationId: connectPluginOrganizationApiKey
      parameters:
        - name: pluginId
          in: path
          required: true
          schema:
            $ref: '#/components/schemas/PluginId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PluginConnectRequest'
      responses:
        '200':
          description: Plugin connected
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PluginConnectResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '502':
          $ref: '#/components/responses/BadGateway'
components:
  schemas:
    PluginId:
      type: string
      enum:
        - attio
        - calendly
        - clickhouse
        - cloudflare
        - gmail
        - googleads
        - googledocs
        - googledrive
        - googlesearch
        - googlesheets
        - linkedin
        - posthog
        - stripe
        - vercel
    PluginConnectRequest:
      oneOf:
        - $ref: '#/components/schemas/PluginConnectPostHogRequest'
        - $ref: '#/components/schemas/PluginConnectClickHouseRequest'
        - $ref: '#/components/schemas/PluginConnectApiKeyRequest'
    PluginConnectResponse:
      type: object
      properties:
        success:
          type: boolean
      required:
        - success
    PluginConnectPostHogRequest:
      type: object
      properties:
        apiKey:
          type: string
          description: PostHog personal API key beginning with phx_.
        region:
          type: string
          enum:
            - us
            - eu
      required:
        - apiKey
        - region
    PluginConnectClickHouseRequest:
      type: object
      properties:
        url:
          type: string
          format: uri
        username:
          type: string
        password:
          type: string
        database:
          type: string
      required:
        - url
        - username
        - password
    PluginConnectApiKeyRequest:
      type: object
      properties:
        apiKey:
          type: string
          description: Provider API key or access token.
      required:
        - apiKey
    Error:
      type: object
      properties:
        error:
          type: string
          description: Error message
        details:
          type:
            - string
            - 'null'
          description: Additional error details
      required:
        - error
  responses:
    BadRequest:
      description: Bad request - Missing or invalid parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Unauthorized - Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Forbidden:
      description: Forbidden - The authenticated account cannot access this resource
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadGateway:
      description: >-
        Bad gateway - The workspace is unreachable or returned an invalid
        response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: >-
        API key authentication. Obtain your API key from the Replicas dashboard
        under Organization → Settings → API Keys. User-session JWTs are not
        accepted by `/v1/replica` endpoints.

````