---
title: "List all available integration types"
method: GET
path: "/integration/type/"
tags: ["integration-types"]
---

# List all available integration types

`GET /integration/type/`

## Request

- Base URL: `https://api.getoneprofile.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.getoneprofile.ai/integration/type/`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

List all available integration types with their categories, display names and descriptions. Supports search, category, and kind filtering.

## Query parameters

- `filters` ListIntegrationTypesFilterParamsSchema, required: Filter parameters for listing integration types.
  - `boost_categories` string[], nullable: Category slugs to boost. Integrations in these categories appear first in results.
  - `category_slug` string, nullable: Filter integration types by category slug
  - `kind` 'source' | 'destination' | 'both': Query filter: source-only, destination-only, or both.
  - `record_type__in` string[], nullable: Filter to integration types that sync any of these record types (match ANY). Unknown slugs are ignored; wildcard integrations always match.
  - `search` string, nullable: Search integration types by name or description
- `limit` integer: The number of items to return.
- `order_by` 'id' | 'created_at' | 'updated_at' | 'name'
- `order_direction` 'asc' | 'desc'
- `cursor` string, nullable: Set the cursor to the next or previous page. You can get the cursor from the previous page's response.

## Response `200`

Successful Response

- PaginatedResponseIntegrationTypeRead
  - `data` IntegrationTypeRead[]: The list of ResponseItems.
    - `categories` string[], required: e.g. ['CRM', 'Marketing Automation']
    - `company_domain` string, required: e.g. 'google.com', 'intercom.com'
    - `config_schema` object, nullable, required: OpenAPI schema for connection settings. None if not implemented.
    - `connect_methods` IntegrationConnectMethod[]: The ways a user can connect this integration. Contains 'oauth_connect' when an app-listing OAuth manifest exists, and 'credentials_form' when the SDK exposes a non-empty (API-key) credentials form. A single-method type returns exactly one entry (the UI renders as before); a type supporting both returns both (the UI shows a chooser). Empty for unimplemented types.
    - `created_at` string, date-time, required: When added to directory
    - `credentials_schema` object, nullable, required: OpenAPI schema for auth credentials. None if not implemented.
    - `description` string, required: What the integration does, shown in detail view
    - `display_name` string, required: UI label. e.g. 'Google Sheets'
    - `icon_url` string, required: Full URL to icon. e.g. 'https://static.../intercom.svg'
    - `id` string, uuid, required: Unique ID. e.g. '123e4567-e89b-12d3-a456-426614174000'
    - `implemented` boolean, required: False = coming soon, can't connect yet
    - `integration_type` string, required: Unique ID. e.g. 'googlesheets', 'intercom'
    - `is_marketplace_listing` boolean: True when this integration has a marketplace app-listing (OAuth-connect or credentials-form). Orthogonal to connect_method: the directory renders a 'Connect <X>' button for a marketplace listing even when connect_method is 'credentials_form'. Derived from the app-listings catalog.
    - `kind` 'source' | 'destination' | 'both': Query filter: source-only, destination-only, or both.
    - `name` string, required: Sort key. e.g. 'Google Sheets', 'Intercom'
    - `overview` string, required: Brief overview of the integration's sync capabilities
    - `record_types` IntegrationRecordTypeReadSchema[]: Record types this integration syncs, as display-ready chips. Empty for 'coming soon' integrations. Wildcard integrations include a 'Custom' marker.
      - `display_name` string, required: Human-readable name (e.g. 'Person', 'Contacts', 'Custom').
      - `is_custom` boolean, required: True for the wildcard 'Custom' marker (arbitrary/dynamic record types).
      - `slug` string, required: The record-type slug (e.g. 'person', 'contacts'), or '*' for Custom.
    - `tagline` string, required: Short tagline naming key data objects synced
    - `updated_at` string, date-time, required: Last metadata update
  - `next_page_cursor` string, nullable: The cursor to the next page. If there are no more pages, this is None.
  - `previous_page_cursor` string, nullable: The cursor to the previous page. If there are no previous pages, this is None.

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `422`: Invalid request made to the API.
- `500`: Internal server error.
- `502`: Bad gateway error.
- `503`: Service unavailable.

---

[API](https://skmtc.dev/getoneprofile/apis/api-reference-oneprofile.md) · [All operations](https://skmtc.dev/getoneprofile/apis/api-reference-oneprofile/llms.txt) · [OpenAPI document](https://skmtc.dev/getoneprofile/apis/api-reference-oneprofile/revisions/4a6bd71e3f02?raw)
