Sarasotaclerk APIsarasotaclerk.com ↗
Search and retrieve official land and court records from Sarasota County Clerk via 3 endpoints. Filter by name, date range, and document type with full pagination.
What is the Sarasotaclerk API?
The Sarasota County Clerk Official Records API provides 3 endpoints for searching and retrieving official land and court records from Sarasota County, Florida. Use search_official_records to query by party name, date range, and document type, returning up to 12 results per page with fields like instrument number, book/page, recording date, document type, party names, and legal description. A dedicated lookup endpoint returns full record details by instrument number.
curl -X GET 'https://api.parse.bot/scraper/5317284d-28df-498f-8801-54d9d0fbac02/search_official_records?date_to=02%2F28%2F2026&date_from=01%2F01%2F2026&last_name=KNIGHT&max_pages=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace sarasotaclerk-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""
Sarasota County Clerk Records API - SDK Usage Example
"""
from parse_apis.sarasota_county_clerk_records_api import SarasotaClerk, Record, DocumentType, RecordNotFound
client = SarasotaClerk()
# List available document types
for doc_type in client.documenttypes.list():
print(doc_type.index, doc_type.label)
# Search for records by last name and date range
for record in client.records.search(last_name="KNIGHT", date_from="02/01/2026", date_to="02/28/2026", max_pages=1):
print(record.instrument_number, record.document_type, record.date_recorded, record.names)
# Fetch a specific record by instrument number
detail = client.records.get(instrument_number="2026021479")
print(detail.instrument_number, detail.document_type, detail.legal_description, detail.image_url)
Search Official Records (Land Records) by name, date range, and document types. Returns paginated results with 12 records per page. Narrow your search with specific names and short date ranges to avoid upstream timeouts on broad queries.
| Param | Type | Description |
|---|---|---|
| date_to | string | Recording date range end in MM/DD/YYYY format. |
| date_from | string | Recording date range start in MM/DD/YYYY format. |
| doc_types | string | Comma-separated list of document type indices. Use get_document_types to retrieve the full list of available indices and labels. |
| last_name | string | Last name or business name of party. |
| max_pages | integer | Maximum number of result pages to retrieve (12 results per page). |
| first_name | string | First name of party. |
{
"type": "object",
"fields": {
"results": "array of record objects containing instrument_number, book_page, date_recorded, document_type, names, legal_description, case_number, and image_url",
"total_count": "integer count of results returned"
},
"sample": {
"data": {
"results": [
{
"names": "KNIGHT DENNIS CKNIGHT LINDA LARMORVUE OF SARASOTA LLC",
"book_page": "0-0",
"image_url": "https://secure.sarasotaclerk.com/viewTiff.aspx?intrnum=2026023377",
"case_number": "",
"date_recorded": "02/24/2026",
"document_type": "NOTICE OF COM",
"instrument_number": "2026023377",
"legal_description": "LT 1472 COLONIAL OAKS UN 22"
}
],
"total_count": 5
},
"status": "success"
}
}About the Sarasotaclerk API
Searching Official Records
The search_official_records endpoint accepts last_name, first_name, date_from, date_to (both in MM/DD/YYYY format), and doc_types as a comma-separated list of numeric indices. Results are paginated at 12 records per page; the max_pages parameter controls how many pages are fetched. Each record object in the results array includes instrument_number, book_page, date_recorded, document_type, names, legal_description, and case_number. The total_count field returns the count of records retrieved across all fetched pages.
Filtering by Document Type
Before running a name or date search, call get_document_types to retrieve the full list of available document categories. It returns an array of objects with an index (the numeric string used in the doc_types parameter) and a label (the human-readable document type name). This is the correct way to target specific record categories such as foreclosures, Lis Pendens, deeds, or mortgages without retrieving unrelated record types.
Retrieving a Specific Record
The get_official_record_detail endpoint takes a single required input, instrument_number, and returns the full detail object for that record. This is useful when you already have an instrument number from a prior search and need the complete record fields without re-running a broader query. The response shape matches the record objects returned by search_official_records.
Query Scope and Performance Notes
Broad queries — wide date ranges or common names without document type filters — can trigger upstream timeouts. Narrow searches using specific names combined with short date windows and targeted doc_types values produce the most reliable results. Records covered are limited to Sarasota County, Florida; no other Florida counties are included.
The Sarasotaclerk API is a managed, monitored endpoint for sarasotaclerk.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when sarasotaclerk.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official sarasotaclerk.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track Lis Pendens filings in Sarasota County by filtering on the relevant document type index and a rolling date range.
- Look up the full recorded details of a specific deed or mortgage using its instrument number via get_official_record_detail.
- Build a property history report by searching official records for a business entity name and aggregating returned instrument numbers.
- Monitor new foreclosure filings by running daily date-range queries against the foreclosure document type.
- Retrieve all recorded documents for a specific individual within a given date range for due-diligence research.
- Enumerate all available document type labels using get_document_types to build a filterable record-type selector in an application.
- Cross-reference legal descriptions from search results with parcel data to verify property ownership chains.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.