---
title: "List workspace connectors"
method: GET
path: "/api/workspace/{workspace_id}/connectors"
---

# List workspace connectors

`GET /api/workspace/{workspace_id}/connectors`

## Request

- Base URL: `https://app.base44.com`
- URL: `https://app.base44.com/api/workspace/{workspace_id}/connectors`
- Auth: HTTP bearer

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns every connector set up in a workspace, with its OAuth client ID and scopes. The client secret is never returned.

A workspace connector holds the workspace's own OAuth app for a connector, so the workspace's apps connect through it instead of through Base44's OAuth app. A connector can also run on Base44's OAuth app for the apps' users, when `credential_source` is `base44`.

The list isn't paginated.

This is limited to 120 requests per minute. A signed-in session has its own limit, and every personal access token for the workspace shares one. Some workspaces have a different limit.

<Note>Call this as any member of the workspace, with a personal access token for that workspace sent as a Bearer token, or from a signed-in session. A read-only token works. Workspace API keys aren't accepted.</Note>

## Path parameters

- `workspace_id` string, required: ID of the workspace. With a personal access token, use the token's workspace. Get it from `organization_id` in [Get app](/api-reference/get-app).

## Response `200`

The workspace's connectors.

- OrganizationConnectorListResponse: The workspace's connectors.
  - `items` OrganizationConnectorResponse[], required: Every connector in the workspace.
    - `id` string, required: ID of the workspace connector. Pass it as `connector_id` to [Start connector connection](/api-reference/start-connector-connection).
    - `organization_id` string, required: ID of the workspace.
    - `integration_type` string, required: Connector it's for.
    - `name` string, required: Name of the workspace connector.
    - `credential_source` 'byo' | 'base44': Whose OAuth app it runs on: `byo` for the workspace's own, or `base44` for Base44's.
    - `client_id` string, required: Client ID of the workspace's OAuth app. Empty for a connector on Base44's OAuth app.
    - `scopes` string[], required: OAuth scopes connections through it ask for.
    - `connection_config` object: Connection values saved on it, keyed by field name. Empty when the connector needs none.
    - `uses_oauth_gateway` boolean: Whether new connections return to the single gateway redirect URI (`true`) or to the per-app ones (`false`). [Get OAuth redirect URIs](/api-reference/get-oauth-redirect-uris) says which to register.
  - `total` integer, required: Number of connectors in `items`.
  - `gateway_redirect_uri` string, nullable: Single redirect URI to register for connectors with `uses_oauth_gateway` set to `true`. Left out when the gateway callback isn't available to you.

## Other responses

- `401`: Missing or invalid credentials.
- `403`: You aren't a member of the workspace, your token is for a different workspace, or your credential can't be used on this endpoint.
- `409`: The workspace requires an unlocked SSO session.
- `429`: Rate limit exceeded.

## Changes

> 58 revisions in range; 1 not diffed.

- **2026-10-12** `5e139db2e643`: 1 info
  - the endpoint scheme security `PersonalAccessTokenAuth` was added to the API
- **2026-10-09** `fc604cdcc3a2`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/adexad/apis/base44-app-management-api/changes/api/workspace/:workspace_id/connectors/get.md)

---

[API](https://skmtc.dev/adexad/apis/base44-app-management-api.md) · [All operations](https://skmtc.dev/adexad/apis/base44-app-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/adexad/apis/base44-app-management-api/revisions/fa29e915c226?raw)
