Programmatic Public Records API
The Surplus Docket REST API delivers structured, daily-refreshed tax deed surplus and excess proceeds datasets directly to law firm CRMs, legal research software, and custom automated pipelines.
Base Endpoint URL
https://surplusdocket.com/api/v1
HTTPS / JSON
Standard HTTPS GET requests returning UTF-8 JSON. Cross-Origin Resource Sharing (CORS) is enabled on all routes.
Authentication & Delivery Schedule
Bearer AuthAuthorization: Bearer <sd_live_api_key>
Tier Requirement: Provisioned with the National Feed + REST API Plan ($449/mo). Includes all 6 states, webhooks, and unlimited API requests.
Schedule: Mon–Fri (Court Business Days) at 7:00 AM EST.
Security: Full unredacted legal names and property situs addresses require an active API Bearer token. Public/unauthenticated calls receive the redacted evaluation sandbox payload.
Interactive Live API Console
Test live HTTP GET requests to inspect API response structure and schema. Active subscription keys receive full unredacted records via morning court business day feeds.
Click "Send Request" to test endpoint live...
Production REST Endpoints
Complete reference for all 6 jurisdictional routes and system manifest endpoints.
Returns the master consolidated multi-state public records dataset across all 6 monitored jurisdictions (Florida, Texas, Georgia, North Carolina, Tennessee, and California).
curl -s -H "Authorization: Bearer YOUR_API_TOKEN" "https://surplusdocket.com/api/v1/feed.json"
Returns filtered Florida clerk of court tax deed surplus records governed by Fla. Stat. § 197.582.
curl -s -H "Authorization: Bearer YOUR_API_TOKEN" "https://surplusdocket.com/api/v1/florida.json"
Returns filtered Texas district court registry excess proceeds records governed by Tex. Tax Code § 34.04.
curl -s -H "Authorization: Bearer YOUR_API_TOKEN" "https://surplusdocket.com/api/v1/texas.json"
Returns filtered Georgia county tax commissioner excess funds records governed by O.C.G.A. § 48-4-5.
curl -s -H "Authorization: Bearer YOUR_API_TOKEN" "https://surplusdocket.com/api/v1/georgia.json"
Returns filtered North Carolina judicial tax foreclosure surplus records governed by N.C.G.S. § 105-374 (including 10-day upset bid tracking).
curl -s -H "Authorization: Bearer YOUR_API_TOKEN" "https://surplusdocket.com/api/v1/north-carolina.json"
Returns filtered Tennessee chancery court tax sale surplus proceeds records governed by T.C.A. § 67-5-2501.
curl -s -H "Authorization: Bearer YOUR_API_TOKEN" "https://surplusdocket.com/api/v1/tennessee.json"
Returns filtered California county tax collector defaulted excess proceeds records governed by Cal. Rev. & Tax Code § 4675.
curl -s -H "Authorization: Bearer YOUR_API_TOKEN" "https://surplusdocket.com/api/v1/california.json"
Health check endpoint returning system uptime, API version manifest, and verified active endpoints.
curl -s "https://surplusdocket.com/api/v1/health.json"
Data Dictionary & JSON Record Schema
Standardized canonical field definitions across all 6 jurisdictional feeds, ensuring zero data transformation overhead.
| Field Name | Data Type | Example Value | Description & Statutory Role |
|---|---|---|---|
| docket_id | String | "2026-TD-004501" | Official court case number, tax deed certificate number, or county clerk registry file ID. |
| state | String (ISO-2) | "FL" | Two-letter state postal abbreviation (FL, TX, GA, NC, TN, CA). |
| county | String | "Palm Beach" | County judicial district or municipal tax collector jurisdiction. |
| sale_date | String (ISO-8601) | "2026-08-18" | Date the tax foreclosure auction was confirmed or deed recorded. |
| surplus_amount | Float / Number | 145000.00 | Gross excess bid proceeds held in registry after satisfying taxes, interest, and auction costs. |
| statutory_fee_cap_pct | String / Float | "20%" | Governing statutory contingency fee limit or practitioner compensation ceiling. |
| filing_deadline | String (Date/Text) | "2026-12-16" | Jurisdictional cutoff date calculated with court holiday & weekend roll-forward rules. |
| lien_scrub_status | String / Enum | "CLEARED_INDIVIDUAL" | Institutional encumbrance verification flag confirming senior mortgages do not exhaust the balance. |
| clerk_portal_url | String (URL) | "https://mypalmbeachclerk.com/casesearch?caseNumber=2026-TD-004501" | Query-parameterized direct link to the official clerk docket or court case verification portal. |
{
"docket_id": "2026-TD-004501",
"state": "FL",
"county": "Palm Beach",
"sale_date": "2026-08-18",
"surplus_amount": 145000.00,
"statutory_fee_cap_pct": "20%",
"filing_deadline": "2026-12-16",
"lien_scrub_status": "CLEARED_INDIVIDUAL",
"clerk_portal_url": "https://mypalmbeachclerk.com/casesearch?caseNumber=2026-TD-004501",
"owner_name": "A. & V. ████████",
"property_address": "720 S Ocean Blvd, Palm Beach FL 33480",
"est_finder_fee_usd": 29000.00,
"governing_statute": "Fla. Stat. § 197.582"
}
Code Integration Examples
Standardized JSON endpoints for Python scripts, webhooks, and practice management workflows.
import requests
import json
# Ingest Mon–Fri 7:00 AM EST Court Business Day Feed
FEED_URL = "https://surplusdocket.com/api/v1/feed.json"
HEADERS = {"Authorization": "Bearer YOUR_API_TOKEN"}
response = requests.get(FEED_URL, headers=HEADERS, timeout=10)
docket_data = response.json()
# Filter High-Value Individual Claims (> $50,000 with institutional liens removed)
actionable_claims = [
c for c in docket_data.get("records", [])
if c.get("Est_Finder_Fee_USD", 0) >= 10000
]
print(f"[✓] Ingested {len(actionable_claims)} priority recovery dockets for court session.")
# Pass records to CRM or local database...
// Ingest Mon–Fri 7:00 AM EST Court Business Day Feed
const res = await fetch('https://surplusdocket.com/api/v1/feed.json', {
headers: { 'Authorization': 'Bearer YOUR_API_TOKEN' }
});
const { generated_at, meta, records } = await res.json();
console.log(`Ingested ${records.length} records generated at ${generated_at}`);
// Automatically sync to Airtable / Zapier / Legal Case Management...
Zapier, Clio, PracticePanther & Airtable Sync
National + API subscribers can ingest court records without code using Zapier's "Webhooks by Zapier (GET)" action (with your Authorization: Bearer <key> header) or Airtable's "Data Fetcher" extension. Poll https://surplusdocket.com/api/v1/feed.json every business morning (Mon–Fri) at 7:05 AM EST to automatically populate new matter leads and assign intake tasks to your staff.
Provision Your Live REST API Token
Subscribe to the National Feed + REST API Tier ($449/mo) for instant Bearer token provisioning, unredacted JSON endpoints across all 6 jurisdictions, webhook integration, and unlimited developer seats.
Billed monthly