---
title: "List Ideal Customer Profiles"
method: GET
path: "/copilot/v1/ideal-company-profile"
tags: ["Ideal Customer Profile"]
---

# List Ideal Customer Profiles

`GET /copilot/v1/ideal-company-profile`

## Request

- Base URL: `https://api.zoominfo.com/gtm`
- URL: `https://api.zoominfo.com/gtm/copilot/v1/ideal-company-profile`
- Auth: OAuth 2
  - Authorization code: `https://login.zoominfo.com`
  - Token URL: `https://okta-login.zoominfo.com/oauth2/default/v1/token` scopes: `api:gtm-config:read`

Returns a List of Ideal Customer Profile (ICPs) configured for the authenticated customer.

An Ideal Customer Profile represents a target company profile that aligns with a company's go-to-market strategy.
Each segment defines the types of organizations most likely to benefit from the company's products or services.
Segments typically describe target companies using firmographic attributes such as industry, company size, revenue range, geography, and other qualification criteria.
These segments help sales and marketing teams focus outreach on the companies most likely to convert.

Ideal Customer Profile can be associated with products or services that are targeted toward the right types of companies.

If you do not know the ID of the record you need, call
[List Ideal Customer Profiles](ref:customeridealcompanysegmentinterface_listidealcompanysegments) to browse the full set.

Common use cases
- Retrieve all configured ICP segments
- Discover segment IDs for use in other API operations
- Sync ICP definitions with external GTM systems

## Response `200`

Success

- IdealCompanySegmentListResponse: API model for a list of Ideal Customer Profiles.
  - `data` IdealCompanySegment[], required: The primary data of the document
    - `id` string, required: The unique identifier for the resource
    - `type` string, required: The type of the resource
    - `attributes` IdealCompanySegmentAttributes, required: Attributes that define an ideal company segment/Ideal Customer Profile. Ideal company segments/Ideal Customer Profile describe the types of companies a customer wants to target. This typically contains industry, company size, revenue range, geography, etc.
      - `name` string: Name of the Ideal Customer Profile (e.g., 'Enterprise SaaS', 'Mid-Market Financial Services'). Required when creating a new record. When provided (for create or update), must be between 1 and 1024 characters.
      - `description` string: Description of the profile. Typically includes industry, company size, revenue range, geography, etc. Maximum 10,000 characters.
      - `source` 'manual' | 'import' | 'system' | 'mcp': Source type indicating how a GTM configuration record was created or last modified. Used across all customer-level entities for audit provenance tracking. When source is explicitly set in a request, the corresponding created_by/updated_by must also be provided. Defaults to 'manual' when not specified.
      - `customFields` CustomFieldItem[]: Flexible key-value store for customer-specific custom fields and extended metadata. The backend validates schema and value types. Use this to capture additional profile criteria beyond the standard fields.
        - `title` string, required: The display title of the custom field.
        - `description` string: An optional description of the field. Defaults to an empty string in the backend.
        - `value` string, required: The string value associated with this custom field.
    - `meta` GtmConfigAuditFields: Common audit fields present on all customer-level GTM configuration entities. These fields track the full lifecycle of a record including creation, modification, archival (temporary hiding), and soft deletion (permanent hiding for compliance). A record can be active, deleted only, or both.
      - `createdAt` string, date-time: ISO 8601 timestamp when the record was originally created. Auto-populated by backend.
      - `updatedAt` string, date-time: ISO 8601 timestamp of the most recent modification to the record. Auto-populated by backend.
      - `createdBy` string: User ID of the person who created the record. Extracted from the JWT token on creation.
      - `updatedBy` string: User ID of the person who last modified the record. Extracted from the JWT token on update.
      - `archivedAt` string, date-time: ISO 8601 timestamp when the record was archived. Archived records are identified by archivedAt and archivedBy
      - `archivedBy` string: User ID of the person who archived the record

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `429`: Too Many Requests

---

[API](https://skmtc.dev/zoominfo/apis/copilot-api-v1.md) - [All operations](https://skmtc.dev/zoominfo/apis/copilot-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/zoominfo/apis/copilot-api-v1/revisions/f737ab239c2a?raw)
