---
title: "List Rows"
method: POST
path: "/studio/v1/audiences/{audienceId}/rows/actions/search"
tags: ["Audiences"]
---

# List Rows

`POST /studio/v1/audiences/{audienceId}/rows/actions/search`

## Request

- Base URL: `https://api.zoominfo.com/gtm`
- URL: `https://api.zoominfo.com/gtm/studio/v1/audiences/{audienceId}/rows/actions/search`
- Auth: OAuth 2
  - Authorization code: `https://login.zoominfo.com`
  - Token URL: `https://okta-login.zoominfo.com/oauth2/default/v1/token` scopes: `api:audience:read`

Retrieves rows from an audience with support for filtering, sorting, and pagination.
Rows are individual contact or company records; each row contains cells keyed by `columnId`, where each cell reports its `value` and a `CellState` — `RESULT` (value present), `BLANK` (no value set), `LOADING` (enrichment in progress), `ERROR` (enrichment failed for this cell), or `NO_RESULT` (enrichment returned no match).
Provide a flat `filters` array in the request body to narrow results by column values and conditions.
Use `page[number]` and `page[size]` (default `25`, max `100`) to paginate through results.
Use the `sort` query parameter with a `columnId` value and a `-` prefix for descending order.
Use the `columns` query parameter to limit which columns are returned per row.
Returns `200` with a paginated array of rows and navigation links.
Returns `400` if filter criteria are malformed or column references are invalid.

## Path parameters

- `audienceId` string, uuid, required

## Query parameters

- `page[number]` integer
- `page[size]` integer
- `sort` string
- `columns` string[]

## Request body

- RowSearchJsonApiModel: JSON API model for get Rows request.
  - `data` RowSearch, required: Row Get request resource.
    - `type` string, required: The type of the resource
    - `attributes` GetRowsAttributes, required: Attributes defining the request parameters for retrieving Rows
      - `filter` GenericFilterGroupForAudience: Represents a group of filters combined with a logical operator (AND/OR)
        - `operator` 'AND' | 'OR', required
        - `filters` GenericFilters[]: The list of filter items in this group
          - `type` string, required: Discriminator value to identify this as a filter
          - `columnId` string, required: The column id to filter on
          - `values` union, required: The values to filter against, should match the column data type
            - string[]: Represents a list of string values for a field
            - number[]: Represents a list of numeric values for a field
          - `filterOperator` 'EQUALS' | 'NOT_EQUALS' | 'CONTAINS' | 'DOES_NOT_CONTAINS' | 'CONTAINS_WORD' | 'DOES_NOT_CONTAIN_WORD' | 'EMPTY' | 'NOT_EMPTY' | 'STARTS_WITH' | 'DOES_NOT_START_WITH' | 'GREATER_THAN' | 'LESS_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN_OR_EQUAL' | 'IN_RANGE' | 'IS_TRUE' | 'IS_FALSE' | 'HAS_ONE_OF' | 'HAS_NONE_OF' | 'HAS_ALL_OF' | 'IS_EXACT_DATE' | 'BEFORE' | 'AFTER' | 'WITHIN' | 'ROLLING_RANGE', required
      - `ids` string[]: List of specific Row IDs to retrieve.

## Response `200`

Success

- GetRowsJsonApiModel: JSON API model for get Rows.
  - `data` Row[], 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` RowAttributes, required: Contains all cell data for a row, organized as an array of `CellDetails` objects — one per column.
      - `values` CellDetails[], required: Array of cell details for this row. Each entry corresponds to one column identified by `columnId`.
        - `columnId` string, required: The `columnId` identifying which column this cell belongs to.
        - `value` union, required: The cell's current value. Type must match the column's `dataType`. Provide on create/update; returned on read. This could be of datatypes `string`, `number`, `boolean`, `string array`, `numeric array`, `JsonString(JsonObject, JsonArrayOfObjects)` depending on the column definition
          - string
          - number
          - boolean
          - string[]: Represents a list of string values for a field
          - number[]: Represents a list of numeric values for a field
        - `state` 'RESULT' | 'BLANK' | 'LOADING' | 'ERROR' | 'NO_RESULT', required: Processing state of a cell value within a row. Indicates whether enrichment has run and what the outcome was.
        - `errorDetails` CellErrorDetails: Describes an error that occurred during enrichment for a specific cell.
          - `summary` string, required: Short human-readable label for the error.
          - `description` string, required: Full explanation of the error — what went wrong and why.
          - `retryable` boolean, required: Whether re-running enrichment for this cell is expected to succeed. If `false`, the error is permanent until the underlying data issue is resolved.
  - `meta` Pagination: Pagination details for paginated responses.
    - `page` Page, required: Page details for paginated responses.
      - `size` integer, required: Number of items per page
      - `number` integer, required: Current page number
    - `total` integer, required: Total number of items available
  - `links` RowSearchPagingLinks: Paging links for get Rows.
    - `first` string, uri: A link to the first page of data
    - `last` string, uri: A link to the last page of data
    - `prev` string, uri: A link to the previous page of data
    - `next` string, uri: A link to the next page of data

## Other responses

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

---

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