Search Tax Delinquencies
Search Florida delinquent-tax and tax-certificate records by county, tax year, status, amount due, parcel id, owner, vendor, or certificate number.
GET /api/v1/tax-delinquencies/search
Search delinquent-property-tax and tax-certificate records aggregated from county tax collectors and certificate-sale portals (LienHub / RealAuction, RealTaxLien, TaxCertSale, WFBS, PacificBlue). Filter by county, tax year, status, amount due, county parcel id, owner name, source vendor, or certificate number.
A tax certificate is a lien against the property for unpaid taxes — it is not ownership of the property. These records describe the lien/delinquency, not a transfer of title.
Authentication
All endpoints share the base URL https://api.floridapropertyapi.com/v1. Send your API key in the X-API-Key header.
curl -H "X-API-Key: fpapi_test_..." \
"https://api.floridapropertyapi.com/v1/tax-delinquencies/search?county=polk&tax_year=2023&min_due=1000&limit=10"
// JavaScript (fetch)
const res = await fetch(
"https://api.floridapropertyapi.com/v1/tax-delinquencies/search?county=polk&tax_year=2023&min_due=1000&limit=10",
{ headers: { "X-API-Key": "fpapi_test_..." } },
);
const body = await res.json();
console.log(body.data);
# Python (requests)
import requests
res = requests.get(
"https://api.floridapropertyapi.com/v1/tax-delinquencies/search",
params={"county": "polk", "tax_year": 2023, "min_due": 1000, "limit": 10},
headers={"X-API-Key": "fpapi_test_..."},
)
res.raise_for_status()
print(res.json()["data"])
Query Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
county | string | string[] | no | — | County slug(s). Repeatable or CSV. |
tax_year | integer | no | — | Tax year (e.g. 2023). |
status | string (≤40 chars) | no | — | Delinquency status (e.g. certificate_sold). |
min_due | number | no | — | Minimum total amount due. |
max_due | number | no | — | Maximum total amount due. |
parcel_id | string (≤100 chars) | no | — | County-assigned parcel id. |
owner | string (≤200 chars) | no | — | Owner name (contains match). |
vendor | string (≤80 chars) | no | — | Source vendor (e.g. LienHub, RealTaxLien). |
certificate_number | string (≤80 chars) | no | — | Tax-certificate number. |
sort | enum (due_desc, due_asc, year_newest) | no | — | Result ordering. |
limit | integer 1-500 | no | 25 | Page size. |
offset | integer ≥ 0 | no | 0 | Pagination offset. |
Response (200)
List envelope { data: DelinquencyHit[], pagination, meta }.
{
"data": [
{
"id": "txd_5b1e7c44",
"county_slug": "polk",
"county_parcel_id": "262813-000000-012345",
"tax_year": 2023,
"status": "certificate_sold",
"delinquent_amount": 3284.17,
"total_due": 3512.44,
"certificate_number": "2024-04821",
"certificate_sale_date": "2024-06-01",
"owner_name": "DOE JANE",
"site_address_full": "456 ORANGE AVE, LAKELAND FL 33801",
"source_vendor": "LienHub"
}
],
"pagination": { "limit": 25, "offset": 0, "total": 1, "has_more": false },
"meta": { "request_id": "req_1234567890abcdef12345", "dataset_status": "live" }
}
Coverage varies by county — not every county publishes a delinquency / certificate-sale feed. See Tax-Delinquency Sources for per-county coverage.
Error Responses
| Status | Code | Cause |
|---|---|---|
400 | bad_request | Invalid query parameters. |
401 | unauthorized | Missing or invalid API key. |
429 | rate_limited | Rate limit exceeded. |
500 | internal_error | Server error — retry with backoff. |
Data Coverage
Tax-delinquency and certificate coverage is rolling out county by county — not every county publishes a delinquency / certificate-sale feed, and feeds are onboarded as they are ingested. A county with no feed loaded returns an empty data array (never a 404). See Tax-Delinquency Sources for per-county coverage and freshness.
Rate Limits
Every /api/v1/* response (including 429) carries X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers, plus the IETF RateLimit structured field. See Rate Limits for per-tier quotas and backoff guidance.