---
title: "Screen with up to six metric filters (supply, tightness, wages, pipeline, ...) and a sort; CSV export. Costs 80 credits per call (deep); the response carries X-ATI-Credits-Charged and X-ATI-Credits-Remaining."
method: POST
path: "/v1/screen"
---

# Screen with up to six metric filters (supply, tightness, wages, pipeline, ...) and a sort; CSV export. Costs 80 credits per call (deep); the response carries X-ATI-Credits-Charged and X-ATI-Credits-Remaining.

`POST /v1/screen`

## Request

- Base URL: `https://api.americantradesindex.com`
- URL: `https://api.americantradesindex.com/v1/screen`
- Auth: HTTP bearer

## Request body

- object
  - `trade` string, required
  - `state` string
  - `filters` object[]
    - `metric` string
    - `op` 'gte' | 'lte' | 'gt' | 'lt'
    - `value` number
  - `sort` object
    - `metric` string
    - `dir` 'desc' | 'asc'
  - `limit` integer
  - `format` 'json' | 'csv'

## Response `200`

counties[] (or CSV)

## Other responses

- `400`: invalid_request: detail names the field
- `401`: unauthorized: missing, invalid or revoked key
- `402`: upgrade_required (no active plan), credits_exhausted (period pool used up) or payment_required (last charge failed); body carries an `upgrade` URL
- `429`: rate_limited (120/min per workspace). Every response carries RateLimit-Limit/Remaining/Reset/Policy; a 429 adds Retry-After

---

[API](https://skmtc.dev/americantradesindex/apis/american-trades-index-api.md) · [All operations](https://skmtc.dev/americantradesindex/apis/american-trades-index-api/llms.txt) · [OpenAPI document](https://skmtc.dev/americantradesindex/apis/american-trades-index-api/revisions/5a9de4d8c76b?raw)
