---
title: "Get deals with filtering and pagination"
method: GET
path: "/deals"
tags: ["Deals"]
---

# Get deals with filtering and pagination

`GET /deals`

## Request

- Base URL: `https://app.usehindsight.com/api/v1`
- URL: `https://app.usehindsight.com/api/v1/deals`
- Auth: HTTP bearer

Retrieve deals with flexible filtering, sorting, and pagination.
Returns deal objects with all their properties and relationships.
Use this for real-time data access and integrations.

## Query parameters

- `page_size` integer
- `page_index` integer
- `count` boolean
- `sort` 'created_at' | 'updated_at' | 'close_date' | 'amount' | 'name'
- `sort_order` 'asc' | 'desc'
- `columns` string
- `searchQuery` string
- `status` string
- `owner_ids` string
- `close_date` string
- `amount` string

## Response `200`

Successful response

- union
  - Deal[]
    - `id` string: Hindsight deal ID
    - `name` string: Deal name
    - `amount` number: Deal value
    - `status_id` string: Current deal stage ID
    - `previous_status_id` string, nullable: Previous deal stage ID
    - `close_date` string, date: Expected or actual close date (internal field name: proposal_due)
    - `created_at` string, date-time: Deal creation timestamp
    - `owner_id` string: Deal owner ID
    - `salesforce_id` string, nullable: Salesforce Opportunity ID
    - `hubspot_id` string, nullable: HubSpot Deal ID
    - `deal_analyzed` boolean: Whether deal has been analyzed
    - `analysis_verified` boolean: Whether analysis has been verified
    - `type` string, nullable: Type of deal
    - `region` string, nullable: Geographic region
    - `deal_competitor_associations` object[]: Array of competitor associations
      - `competitor_id` string
      - `is_primary` boolean
      - `is_incumbent` boolean
    - `drivers` object[]: Array of deal drivers/reasons
      - `reason_id` string
      - `positive` boolean, nullable
      - `summary` string
    - `wl_product_fit_score` number, nullable: Product fit score (1-5)
    - `wl_sales_execution_score` number, nullable: Sales execution score (1-5)
    - `wl_relationship_score` number, nullable: Relationship score (1-5)
  - integer: Total count when count=true

## Other responses

- `400`: Bad request - invalid parameters
- `401`: Unauthorized - invalid or missing API key
- `429`: Too many requests - rate limit or applicable usage quota exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/usehindsight/apis/hindsight-api.md) - [All operations](https://skmtc.dev/usehindsight/apis/hindsight-api/llms.txt) - [OpenAPI document](https://skmtc.dev/usehindsight/apis/hindsight-api/revisions/97371a7da857?raw)
