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

# Search Query

> Run a search query. Provide exactly one query source: simple_filters, filters, parsed_query, or search_id. For pagination, pass cursor alone.



## OpenAPI

````yaml https://api.sixtyfour.ai/openapi.json post /search/query
openapi: 3.1.0
info:
  title: Sixtyfour API
  description: >-
    Intelligence API for People and Entities. Deploy AI agents that investigate,
    resolve identities, map relationships, and surface risk signals
  contact:
    name: Sixtyfour
    url: https://sixtyfour.ai/
    email: support@sixtyfour.ai
  license:
    name: Proprietary
  version: 1.0.0
servers:
  - url: https://api.sixtyfour.ai
    description: Production
security: []
tags:
  - name: Enrichment
    description: Find and enrich emails, phones, and LinkedIn for people and companies.
  - name: org-chart
    description: Discover people inside a company and build org charts.
  - name: Search
    description: Run deep and filter searches over Sixtyfour's data.
  - name: Workflow
    description: Create, run, and manage enrichment workflows.
  - name: Workflow Schedules
    description: Create and manage recurring schedules for workflows.
  - name: Account
    description: Manage and inspect your account and credit balance.
  - name: Intelligence
    description: Verify identity attributes such as age using high-tier OSINT research.
paths:
  /search/query:
    post:
      tags:
        - Search
      summary: Search Query
      description: >-
        Run a search query. Provide exactly one query source: simple_filters,
        filters, parsed_query, or search_id. For pagination, pass cursor alone.
      operationId: search_query_endpoint_search_query_post
      parameters:
        - name: x-api-key
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchQueryRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FilterSearchResponse'
        '400':
          description: Request was rejected by the route's validation rules.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Invalid request body
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Invalid API key
        '402':
          description: >-
            Insufficient credits or no active subscription for this
            organization.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Insufficient API credits
        '403':
          description: Forwarded user_id does not belong to caller's organization.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Forwarded user_id does not belong to your organization.
        '404':
          description: Search task or export file not found.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Search not found or has no parsed_query.
        '409':
          description: Export workflow already running for this search.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Export workflow is already running for this search.
        '422':
          description: Request body failed validation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Rate limit exceeded
        '500':
          description: Unexpected server error. Retry with backoff.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Internal server error
        '502':
          description: Upstream search backend returned an error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: 'NL upstream transport error: connection reset by peer'
        '503':
          description: Search backend is not configured or unavailable.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Company search backend endpoint is not configured
        '504':
          description: Upstream search backend timed out.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: Field values request timed out
components:
  schemas:
    SearchQueryRequest:
      properties:
        simple_filters:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Simple Filters
          description: MongoDB-style filters; the API translates them to DSL.
        filters:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Filters
          description: Raw OpenSearch DSL filters.
        parsed_query:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Parsed Query
          description: Structured filter set returned by a previous search.
        search_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Search Id
          description: >-
            Search history ID returned by a previous search. Replays only the
            query shape; pass exclusions again on this request if they should
            apply.
        query:
          anyOf:
            - type: string
            - type: 'null'
          title: Query
          description: >-
            Natural-language query. Mutually exclusive with simple_filters /
            filters / parsed_query / search_id. People-mode only.
        cursor:
          anyOf:
            - type: string
            - type: 'null'
          title: Cursor
          description: Opaque pagination cursor returned by a previous response.
        mode:
          type: string
          enum:
            - people
            - company
          title: Mode
          description: Search mode; inferred from DB when using `search_id`.
          default: company
        page_size:
          type: integer
          maximum: 100
          minimum: 1
          title: Page Size
          description: >-
            Maximum number of results per page (1-100). Pages may contain fewer
            rows while more results remain (e.g. with exclusion filtering); rely
            on `has_more`/`next_cursor`, never on page fullness.
          default: 10
        max_results:
          type: integer
          title: Max Results
          description: Maximum number of results to return across pages.
          default: 1000
        exclude_public_ids:
          anyOf:
            - items:
                type: string
              type: array
              maxItems: 1000
            - type: 'null'
          title: Exclude Public Ids
          description: >-
            People-mode inline identifiers to exclude from results, applied as a
            post-filter. Accepts LinkedIn public IDs or profile URLs. For
            company searches, use `exclude_entity_ids`. Max 1000.
        exclude_entity_ids:
          anyOf:
            - items:
                type: string
              type: array
              maxItems: 1000
            - type: 'null'
          title: Exclude Entity Ids
          description: >-
            Inline identifiers to exclude from results, applied as a
            post-filter. People mode: LinkedIn public IDs or profile URLs.
            Company mode: numeric LinkedIn company IDs, company URLs/slugs, or
            exact website domains (values that resolve to no or multiple
            companies are ignored). Max 1000.
        exclude_list_ids:
          anyOf:
            - items:
                type: string
              type: array
              maxItems: 10
            - type: 'null'
          title: Exclude List Ids
          description: >-
            Saved exclusion-list IDs to apply as a post-filter. Each list's
            entity type must match the search mode (person lists for people
            searches, company lists for company searches). Max 5 (10 for
            organizations with extended exclusion limits).
        location_expansion_enabled:
          type: boolean
          title: Location Expansion Enabled
          description: >-
            Expand the parsed location filter to nearby areas via PostGIS
            radius. People-mode `query` branch only.
          default: true
        location_expansion_radius_miles:
          type: integer
          maximum: 200
          minimum: 5
          title: Location Expansion Radius Miles
          description: >-
            Radius (miles) for PostGIS location expansion. Ignored when
            expansion is disabled.
          default: 10
      type: object
      title: SearchQueryRequest
      description: >-
        Unified search query request — replaces both /start-filter-search and
        /browse.
    FilterSearchResponse:
      properties:
        search_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Search Id
          description: >-
            Search history ID returned by a previous search. Replays only the
            query shape; pass exclusions again on this request if they should
            apply.
        resource_handle_id:
          type: string
          title: Resource Handle Id
          description: Legacy export handle. Empty for company direct-filter mode.
          default: ''
        csv_download_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Csv Download Url
          description: Signed URL to download results as CSV.
        json_download_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Json Download Url
          description: Signed URL to download results as JSON.
        next_cursor:
          anyOf:
            - type: string
            - type: 'null'
          title: Next Cursor
          description: Cursor to fetch the next page; null when exhausted.
        cursor_expires_in_seconds:
          anyOf:
            - type: integer
            - type: 'null'
          title: Cursor Expires In Seconds
          description: Seconds until `next_cursor` expires.
        request_duration_ms:
          anyOf:
            - type: integer
            - type: 'null'
          title: Request Duration Ms
          description: Server-side request duration in milliseconds.
        has_more:
          type: boolean
          title: Has More
          description: >-
            True when another page is available via `next_cursor`. Always
            continue via the cursor; a short or empty page does NOT mean the
            results are exhausted.
          default: false
        page_size:
          anyOf:
            - type: integer
            - type: 'null'
          title: Page Size
          description: >-
            Maximum number of results per page (1-100). Pages may contain fewer
            rows while more results remain (e.g. with exclusion filtering); rely
            on `has_more`/`next_cursor`, never on page fullness.
        page_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Page Count
          description: >-
            Number of results in this response page. May be less than
            `page_size` (down to 0) while `has_more` is true, e.g. when
            exclusion filtering is active.
        page_number:
          anyOf:
            - type: integer
            - type: 'null'
          title: Page Number
          description: 1-based page number (company pagination).
        total_pages:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total Pages
          description: Final total page count; omitted while `has_more` is true.
        max_pages:
          anyOf:
            - type: integer
            - type: 'null'
          title: Max Pages
          description: Upper bound on pages based on max_results and page_size.
        remaining_results:
          anyOf:
            - type: integer
            - type: 'null'
          title: Remaining Results
          description: Rows still available under max_results after this page.
        download_expires_in_seconds:
          anyOf:
            - type: integer
            - type: 'null'
          title: Download Expires In Seconds
          description: Seconds until the download URLs expire.
        total_results:
          type: integer
          title: Total Results
          description: Rows returned so far (cumulative for company pagination).
        total_available:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total Available
          description: >-
            Total OpenSearch matches across pages (capped at 50000); people-mode
            only. Pre-exclusion: exclusion filtering does not reduce this count.
        exported_count:
          type: integer
          title: Exported Count
          description: Legacy export count; always 0 for company direct-filter mode.
          default: 0
        results:
          items:
            additionalProperties: true
            type: object
          type: array
          title: Results
          description: Rows returned for the current page.
        parsed_query:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Parsed Query
          description: >-
            Structured filter set echoed back; round-trippable into a follow-up
            request.
        natural_language_query:
          anyOf:
            - type: string
            - type: 'null'
          title: Natural Language Query
          description: Original natural-language query echoed verbatim, if any.
      type: object
      required:
        - total_results
      title: FilterSearchResponse
      description: Response for a completed filter search.
    HTTPValidationError:
      title: HTTPValidationError
      type: object
      properties:
        detail:
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
      example:
        detail:
          - loc:
              - body
              - target_company
              - domain
            msg: Field required
            type: missing
            input: null
            ctx: {}
    ValidationError:
      title: ValidationError
      type: object
      required:
        - loc
        - msg
        - type
      properties:
        loc:
          type: array
          items:
            oneOf:
              - type: string
              - type: integer
          description: Path to the field that failed validation.
          example:
            - body
            - target_company
            - domain
        msg:
          type: string
          description: Human-readable error message.
          example: Field required
        type:
          type: string
          description: Error code (e.g. 'missing', 'value_error').
          example: missing
        input:
          description: The offending input value (any type, may be null).
          nullable: true
          example: null
        ctx:
          type: object
          description: Optional error context.
          additionalProperties: true
          example: {}

````