Building/Due

Data API documentation

Three GET endpoints, JSON by default, CSV or Excel on request. Try each with the sandbox key below: same paths under /sandbox, same response shapes, fictional buildings.

Your free sandbox keypublic, no sign-up

bd_sandbox_public

curl -H "Authorization: Bearer bd_sandbox_public" \
  "https://buildingdue.com/api/v1/sandbox/leads?category=recertification&limit=5"

The sandbox answers with 25 fictional records in "Sandbox City", zip 99999, folios SBX0000000001 to SBX0000000025, phones in the 555-01xx range. Up to 60 calls a minute per address. Real data needs a key from your account's API page.

Authentication

Send Authorization: Bearer bd_... on every call. Account owners create and revoke keys in the portal; a key is shown once and stored only as a hash. Limits per key: 120 calls a minute, 20,000 a day.

Endpointsbase URL https://buildingdue.com/api/v1 (sandbox: /api/v1/sandbox)
CallWhat it returns
GET /leadsRecords first seen since a moment, newest first. Parameters: since (ISO date-time; poll with the newest first_seen you hold), category (recertification, permit, reserve_study, violation, project, power, power_site, foreclosure; comma-separated), zip, city, limit (up to 1000), format.
GET /buildings?zip=Every forecast and reserve-study building in one zip, with year built, cycle year, storeys, units, roof and the condo association and manager.
GET /buildings/{folio}One building by parcel: its attributes and every record on file.
GET /openapi.jsonThe OpenAPI 3.1 spec, for Postman, code generators and no-code connectors. Open it.

Add format=csv or format=xlsx to any list call for the same records as a file. Errors: 401 missing or unknown key, 403 plan without API access, 429 over a limit.

A recordfrom the sandbox
{
  "uid": "sandbox:SBX0000000001:recertification",
  "category": "recertification",
  "source_key": "sandbox",
  "address": "100 OCEAN EXAMPLE DR",
  "city": "Sandbox City",
  "zipcode": "99999",
  "folio": "SBX0000000001",
  "status": "LIKELY OVERDUE - cycle year 2025, not confirmed filed",
  "filing_status": "none_on_file",
  "filing_ref": "",
  "description": "Fictional sandbox record 1 for testing an integration.",
  "valuation": null,
  "owner_name": "",
  "owner_mailing_address": "",
  "contractor_name": "Example Contracting LLC",
  "lat": 25.0,
  "lon": -80.0,
  "record_date": "2026-01-15",
  "first_seen": "2026-10-01T06:00:00+00:00",
  "last_changed": "2026-10-27T06:00:00+00:00",
  "url": "https://buildingdue.com/data-api/docs",
  "contractor": {
    "business_name": "Example Contracting LLC",
    "phone": "305-555-0100",
    "email": "",
    "address": "1 Example Plaza, Sandbox City, FL 99999",
    "licence": "CGC0000000"
  }
}

Compiled from public records - a reason to look, not proof of a deadline. Your plan's categories and other firms' exclusive zip codes apply to real keys.