GETPUBLIC
/catalog
Returns the live coverage matrix: every data vertical and the jurisdictions currently available for each. No API key required.
Base URL
https://api.threshmoor.comQuery parameters
This endpoint accepts no query parameters.
Response shape
Every successful response is wrapped in a CatalogResponse object:
{
"verticals": Vertical[]
}Vertical object
| Field | Type | Description |
|---|---|---|
slug | string | URL-safe identifier for the vertical (e.g. "permits", "violations"). |
name | string | Human-readable display name (e.g. "Building Permits"). |
description | string | Short description of the data vertical. |
jurisdictions | Jurisdiction[] | Array of jurisdictions currently available for this vertical. |
Jurisdiction object
| Field | Type | Description |
|---|---|---|
key | string | Lookup key used for filtering in other endpoints (e.g. "austin"). |
label | string | Human-readable label (e.g. "Austin, TX"). |
Example
Request
GET /catalog HTTP/1.1
Host: api.threshmoor.comResponse — 200 OK
{
"verticals": [
{
"slug": "permits",
"name": "Building Permits",
"description": "Building and construction permit records.",
"jurisdictions": [
{ "key": "austin", "label": "Austin, TX" }
]
},
{
"slug": "violations",
"name": "Code Violations",
"description": "Code enforcement violation and complaint records.",
"jurisdictions": [
{ "key": "austin", "label": "Austin, TX" }
]
},
{
"slug": "landuse",
"name": "Land Development",
"description": "Land-use and zoning application records.",
"jurisdictions": [
{ "key": "austin", "label": "Austin, TX" }
]
}
]
}Error responses
| Status | Meaning |
|---|---|
502 | The upstream data source is unreachable or returned an unexpected response. The API never leaks raw errors; you will receive a short, human-readable message. |
{
"detail": "Could not reach the catalog data source: ..."
}