# List authentication configurations with optional filters

**Documentation:** /reference/api-reference/auth-configs/getAuthConfigs

Retrieves all auth configs for your project. Auth configs define how users authenticate with external services (OAuth, API keys, etc.). Use filters to find configs for specific toolkits or to distinguish between Composio-managed and custom configurations.

---

## GET `/api/v3/auth_configs`

**Endpoint:** `https://backend.composio.dev/api/v3/auth_configs`

**Summary:** List authentication configurations with optional filters

Retrieves all auth configs for your project. Auth configs define how users authenticate with external services (OAuth, API keys, etc.). Use filters to find configs for specific toolkits or to distinguish between Composio-managed and custom configurations.

### Authentication

**ApiKeyAuth** - API Key in `header` header `x-api-key` OR **UserApiKeyAuth** - API Key in `header` header `x-user-api-key`

### Query Parameters

- `is_composio_managed` (any): Whether to filter by composio managed auth configs
- `toolkit_slug` (string): Comma-separated list of toolkit slugs to filter auth configs by
- `deprecated_app_id` (string): The app id to filter by
- `deprecated_status` (string): 
- `show_disabled` (boolean,null): Show disabled auth configs
- `search` (string): Search auth configs by name or id
- `limit` (number,null): Number of items per page, max allowed is 1000
- `cursor` (string): Cursor for pagination. The cursor is a base64 encoded string of the page and limit. The page is the page number and the limit is the number of items per page. The cursor is used to paginate through the items. The cursor is not required for the first page.

### Responses

#### 200 - Successfully fetched auth configs

**Response Schema:**

- `items` (array<object>) *(required)*
  - Array items:
    - `id` (string (authConfigId)) *(required)*: The unique ID of the authentication configuration
    - `uuid` (string) *(required)*: The UUID of the authentication configuration (for backward compatibility)
    - `type` (enum: "default" | "custom") *(required)*: The type of the authentication configuration (custom or default)
    - `toolkit` (object) *(required)*: Information about the associated integration
      - `slug` (string) *(required)*: The unique identifier of the integration app
      - `logo` (string) *(required)*: The URL to the integration app's logo image
      - `auth_guide_url` (string,null): URL to a guide page with authentication setup instructions
      - `auth_hint_url` (string,null): URL to a page where users can obtain or configure credentials
    - `name` (string) *(required)*: The display name of the authentication configuration
    - `auth_scheme` (enum: "OAUTH2" | "OAUTH1" | "API_KEY" | ...): The authentication scheme used (e.g., OAuth2, API Key, etc.)
    - `is_composio_managed` (boolean): Whether this authentication configuration is managed by Composio or the user
    - `credentials` (object): The authentication credentials (tokens, keys, etc.) - may be partially hidden for security
      - `[key: string]` (any)
    - `proxy_config` (object,null)
    - `status` (enum: "ENABLED" | "DISABLED") *(required)*: Current status of the authentication configuration
    - `created_by` (string): The identifier of the user who created the auth config
    - `created_at` (string): ISO 8601 date-time when the auth config was created
    - `last_updated_at` (string): ISO 8601 date-time when the auth config was last updated
    - `no_of_connections` (number) *(required)*: The number of active connections using this auth config
    - `expected_input_fields` (array<object,null>): Fields expected during connection initialization
    - `restrict_to_following_tools` (array<string>): Use tool_access_config instead. This field will be deprecated in the future.
    - `tool_access_config` (object) *(required)*
      - `tools_for_connected_account_creation` (array<string>): Tools used to generate the minimum required scopes for the auth config (only valid for OAuth). If passed, this will update the scopes.
      - `tools_available_for_execution` (array<string>): The actions that the user can perform on the auth config. If passed, this will update the actions that the user can perform on the auth config.
    - `shared_credentials` (object): [EXPERIMENTAL] Shared credentials that will be inherited by all connected accounts using this auth config
      - `[key: string]` (any)
    - `is_enabled_for_tool_router` (boolean): Whether this auth config is enabled for tool router
    - `deprecated_params` (object): DEPRECATED: This parameter will be removed in a future version.
      - `default_connector_id` (string,null) *(required)*: Deprecated: Default connector ID
      - `member_uuid` (string): Deprecated: Member UUID
      - `toolkit_id` (string): Deprecated: Toolkit ID
      - `expected_input_fields` (array<object>): Deprecated: Fields expected during connection initialization
        - Array items:
          - ...
- `next_cursor` (string,null)
- `total_pages` (number) *(required)*
- `current_page` (number) *(required)*
- `total_items` (number) *(required)*

**Example Response:**

```json
{
  "items": [
    {
      "id": "string",
      "uuid": "string",
      "type": "default",
      "toolkit": {
        "slug": "...",
        "logo": "...",
        "auth_guide_url": "...",
        "auth_hint_url": "..."
      },
      "name": "string",
      "auth_scheme": "OAUTH2",
      "is_composio_managed": true,
      "credentials": {
        "key": "..."
      },
      "proxy_config": null,
      "status": "ENABLED",
      "created_by": "string",
      "created_at": "string",
      "last_updated_at": "string",
      "no_of_connections": 1,
      "expected_input_fields": [
        "..."
      ],
      "restrict_to_following_tools": [
        "..."
      ],
      "tool_access_config": {
        "tools_for_connected_account_creation": "...",
        "tools_available_for_execution": "..."
      },
      "shared_credentials": {
        "key": "..."
      },
      "is_enabled_for_tool_router": true,
      "deprecated_params": {
        "default_connector_id": "...",
        "member_uuid": "...",
        "toolkit_id": "...",
        "expected_input_fields": "..."
      }
    }
  ],
  "next_cursor": null,
  "total_pages": 1,
  "current_page": 1,
  "total_items": 1
}
```

#### 400 - Bad request

**Response Schema:**

- `error` (object) *(required)*
  - `message` (string) *(required)*
  - `code` (number) *(required)*
  - `slug` (string) *(required)*
  - `status` (number) *(required)*
  - `request_id` (string)
  - `suggested_fix` (string)
  - `errors` (array<string>)

#### 401 - Unauthorized

**Response Schema:**

- `error` (object) *(required)*
  - `message` (string) *(required)*
  - `code` (number) *(required)*
  - `slug` (string) *(required)*
  - `status` (number) *(required)*
  - `request_id` (string)
  - `suggested_fix` (string)
  - `errors` (array<string>)

#### 404 - Not found

**Response Schema:**

- `error` (object) *(required)*
  - `message` (string) *(required)*
  - `code` (number) *(required)*
  - `slug` (string) *(required)*
  - `status` (number) *(required)*
  - `request_id` (string)
  - `suggested_fix` (string)
  - `errors` (array<string>)

#### 500 - Internal server error

**Response Schema:**

- `error` (object) *(required)*
  - `message` (string) *(required)*
  - `code` (number) *(required)*
  - `slug` (string) *(required)*
  - `status` (number) *(required)*
  - `request_id` (string)
  - `suggested_fix` (string)
  - `errors` (array<string>)

### Example cURL Request

```bash
curl -X GET "https://backend.composio.dev/api/v3/auth_configs" \
  -H "x-api-key: YOUR_API_KEY"
```