---
title: "Public Reet"
method: POST
path: "/api/v1/public/reet"
tags: ["public"]
---

# Public Reet

`POST /api/v1/public/reet`

## Request

- Base URL: `https://app.sentineliq.net`
- URL: `https://app.sentineliq.net/api/v1/public/reet`
- Auth: none required

Graduated WA REET (RCW 82.45): state brackets + local county rate.

Same builder as the keyed ``/agent-api/v1/reet`` and the ``wa_reet``
MCP tool (build_reet_response over src/deals/net_sheet.py), so the
payload — attributions and disclaimer included — is identical.

## Request body

- ReetRequest
  - `sale_price` integer, required
  - `county` string, required

## Response `200`

Successful Response

- ReetResponse: Graduated WA REET: state brackets + local county rate + DOR fee.
  - `sale_price` integer, required
  - `county` string, required
  - `state_reet` integer, required
  - `state_brackets` ReetBracket[], required
    - `up_to` integer, nullable, required: Upper bound of the band in dollars; null for the top band.
    - `rate` number, required: State rate applied in this band (0.011 = 1.10%).
    - `taxable` integer, required: Dollars of the sale price taxed in this band.
    - `tax` integer, required: State REET owed on this band, rounded to the dollar.
  - `local_rate` number, required
  - `local_reet` integer, required
  - `total_reet` integer, required
  - `technology_fee` integer, required: Flat DOR electronic-technology fee (RCW 82.45.180).
  - `estimated_total_due` integer, required: total_reet + technology_fee.
  - `local_rate_effective_date` string, required
  - `local_rate_assumption` string, required: County-level local-rate assumption; verify the DOR location code.
  - `state_brackets_effective_through` string, required
  - `reet_scope` string, required
  - `effective_rate_pct` number, required
  - `disclaimer` string, required
  - `attributions` Attribution[], required
    - `source` string, required
    - `text` string, required
    - `url` string, nullable
    - `required` boolean

## Other responses

- `413`: PAYLOAD_TOO_LARGE — serialized body exceeds 65536 bytes; never metered. Reduce it before retrying.
- `422`: VALIDATION — request failed validation.
- `429`: RATE_LIMITED — per-IP burst or daily cap; Retry-After.

---

[API](https://skmtc.dev/sentineliq/apis/sentinel-property-research-api.md) · [All operations](https://skmtc.dev/sentineliq/apis/sentinel-property-research-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sentineliq/apis/sentinel-property-research-api/revisions/64c34d5f2937?raw)
