Endpoints
Get Parcel by County + Parcel ID
Look up a single Florida parcel by its natural key — county slug plus the county-assigned parcel id. Punctuation-insensitive.
GET /api/v1/parcels/by-parcel-id
Look up a single parcel by its natural key: the county slug plus the county-assigned parcel_id. The match is punctuation-insensitive — 12-34-56 matches 123456. Use this when you have a parcel id from a county property-appraiser site, a deed, or a tax bill and want the canonical record.
Authentication
curl -H "X-API-Key: fpapi_test_..." \
"https://api.floridapropertyapi.com/v1/parcels/by-parcel-id?county=hillsborough&parcel_id=192829-5040-001000-0010"
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
county | string | yes | County slug, e.g. hillsborough. |
parcel_id | string | yes | County-assigned parcel id (punctuation ignored). |
Response (200)
Object envelope { data: ParcelHit, meta } — the same shape as Get Parcel by ID, including the GeoJSON geometry polygon.
{
"data": {
"parcel_id": "192829-5040-001000-0010",
"county_slug": "hillsborough",
"county_name": "Hillsborough",
"owner_name": "SMITH JOHN A & MARY B",
"site_address_full": "123 BAYSHORE BLVD",
"site_city": "TAMPA",
"site_state": "FL",
"site_zip": "33606",
"dor_use_code": "0100",
"property_use_code": "01",
"land_use_description": "SINGLE FAMILY",
"just_value": 485000,
"assessed_value": 412300,
"taxable_value": 387300,
"year_built": 1998,
"last_sale_date": "2021-04-15",
"last_sale_price": 460000,
"centroid_lat": 27.9221,
"centroid_lng": -82.4839,
"geometry": "{\"type\":\"Polygon\",\"coordinates\":[[[-82.4842,27.9219],[-82.4836,27.9219],[-82.4836,27.9223],[-82.4842,27.9223],[-82.4842,27.9219]]]}"
},
"meta": { "request_id": "req_1234567890abcdef12345", "dataset_status": "live" }
}
Error Responses
| Status | Code | Cause |
|---|---|---|
400 | bad_request | Missing county or parcel_id. |
401 | unauthorized | Missing or invalid API key. |
404 | not_found | No parcel matches that county + parcel id. |
429 | rate_limited | Rate limit exceeded. |
500 | internal_error | Server error — retry with backoff. |