---
title: "Get Estimates Summary"
method: POST
path: "/estimate/summary"
---

# Get Estimates Summary

`POST /estimate/summary`

## Request

- Base URL: `https://dc-region.zuperpro.com/api`
- URL: `https://dc-region.zuperpro.com/api/estimate/summary`
- Auth: API key in header `x-api-key`

Kanban board summary: counts and totals of estimates grouped by `estimate_status`. Unlike Job's Kanban summary, Estimate's status groups are a fixed, hardcoded set (not per-category dynamic) — every active status is always present in the response, zero-filled if there are no matching estimates. `AWAIT_SIGNATURE` is omitted entirely when the company's multi-signer policy is disabled.

Accepts `filter_rules`/`filter_rule_operator`/`preferred_timezone` for scoping (same v3 rule-engine mechanism as the Estimate list endpoint). There is no dedicated `is_proposal` shortcut field here — filter on it via `filter_rules` instead (e.g. `{"field": "is_proposal", "operator": "is", "value": true}`).

## Request body

- object
  - `sort` 'ASC' | 'DESC'
  - `sort_by` 'created_at' | 'updated_at' | 'estimate_date' | 'total'
  - `filter_rules` object[]
  - `filter_rule_operator` 'AND' | 'OR'

## Response `200`

200

- object
  - `data` object[]
    - `status` string
    - `status_name` string
    - `count` integer
    - `total` number

## Changes

- **2026-11-03** `3c21bc232e16`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/zuper/apis/zuper-pro-api/changes/estimate/summary/post.md)

---

[API](https://skmtc.dev/zuper/apis/zuper-pro-api.md) - [All operations](https://skmtc.dev/zuper/apis/zuper-pro-api/llms.txt) - [OpenAPI document](https://skmtc.dev/zuper/apis/zuper-pro-api/revisions/3c21bc232e16?raw)
