> ## Documentation Index
> Fetch the complete documentation index at: https://ago.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Search Rows

> Search rows with semantic query + filters + pagination.



## OpenAPI

````yaml /openapi-v1.json post /api/v1/custom-data-sources/{id_or_slug}/rows/search
openapi: 3.1.0
info:
  title: AGO Public API
  version: 1.0.0
  description: Programmatic access to your AGO workspace.
servers:
  - url: https://{tenant_id}.api.useago.com
    description: AGO Public API v1
    variables:
      tenant_id:
        default: your-tenant-id
        description: Your AGO tenant identifier
security: []
paths:
  /api/v1/custom-data-sources/{id_or_slug}/rows/search:
    post:
      tags:
        - Custom Data Sources
      summary: Search Rows
      description: Search rows with semantic query + filters + pagination.
      operationId: core_api_v1_controllers_custom_data_sources_search_rows
      parameters:
        - in: path
          name: id_or_slug
          schema:
            title: Id Or Slug
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchQuery'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RowSearchResponseSchema'
      security:
        - ScopedAPIKeyAuth: []
components:
  schemas:
    SearchQuery:
      properties:
        semantic:
          anyOf:
            - type: string
            - type: 'null'
          description: Free-text query embedded and used for cosine similarity ranking.
          title: Semantic
        filters:
          items:
            $ref: '#/components/schemas/Filter'
          title: Filters
          type: array
        tags_any:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Tags Any
        tags_all:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Tags All
        order_by:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Column to sort by (custom column or filterable system column).
            Ignored when semantic is set.
          title: Order By
        order_dir:
          allOf:
            - $ref: '#/components/schemas/OrderDir'
          default: desc
        limit:
          default: 10
          maximum: 200
          minimum: 1
          title: Limit
          type: integer
        offset:
          default: 0
          minimum: 0
          title: Offset
          type: integer
      title: SearchQuery
      type: object
    RowSearchResponseSchema:
      properties:
        rows:
          items:
            $ref: '#/components/schemas/SearchResultRow'
          title: Rows
          type: array
        total:
          title: Total
          type: integer
      required:
        - rows
        - total
      title: RowSearchResponseSchema
      type: object
    Filter:
      properties:
        column:
          title: Column
          type: string
        op:
          $ref: '#/components/schemas/FilterOp'
        value:
          title: Value
      required:
        - column
        - op
      title: Filter
      type: object
    OrderDir:
      enum:
        - asc
        - desc
      title: OrderDir
      type: string
    SearchResultRow:
      properties:
        id:
          title: Id
          type: string
        external_id:
          title: External Id
          type: string
        data:
          additionalProperties: true
          title: Data
          type: object
        tags:
          items:
            type: string
          title: Tags
          type: array
        searchable_text:
          anyOf:
            - type: string
            - type: 'null'
          title: Searchable Text
        content:
          anyOf:
            - type: string
            - type: 'null'
          title: Content
        updated_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          title: Updated At
        score:
          anyOf:
            - type: number
            - type: 'null'
          title: Score
      required:
        - id
        - external_id
        - data
        - tags
      title: SearchResultRow
      type: object
    FilterOp:
      enum:
        - eq
        - ne
        - gt
        - lt
        - gte
        - lte
        - in
        - contains
        - starts_with
        - is_null
        - is_not_null
      title: FilterOp
      type: string
  securitySchemes:
    ScopedAPIKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````