Every source RoofShopper draws from, its tier, and when it was last refreshed.
City of Tampa Construction Services (Accela Citizen Access)
Tier 1 · GOVERNMENT RECORD · City of Tampa, FL
Last refreshed 2026-07-26
Public government permit records, no authentication required. Eighth Accela Citizen Access tenant — same vendor family as Pasco, Lee, Pinellas, Charlotte, Hillsborough, Osceola, and Polk — and the first City (rather than county) registration on this vendor. Real, closed-vocabulary "Residential Roof Trade Permit"/"Commercial Roof Trade Permit" categories — the exact same strings already mapped for Hillsborough County, reused with zero new classifier code. Confirmed live to expose Hillsborough's own real gap: unincorporated-Hillsborough's resolver already excludes "TAMPA" by mailing-city name, so this registration is purely additive, no overlap. Required two real, evidence-based fixes to the shared accelaPermits.ts this sprint, both backward-compatible with every other tenant: (1) this tenant's own siteAddress field renders with no comma at all ("204 E Cluster Ave T 33604", and inconsistently, on older records, "204 E CLUSTER Ave TAMPA FL 33604" — full city/state, still no comma) — extractStreetPortion() now anchors on the last-known street-type vocabulary word instead of assuming a fixed comma or trailing-token count; (2) this tenant's own server-side street-name search rejects a leading directional prefix ("E Cluster" returns zero rows; "Cluster" alone returns the real row) — the same failure mode already disclosed for Osceola, but affecting roughly 90% of Tampa's own real addresses rather than a narrow edge case, given Tampa's directional-quadrant street-naming convention — fetchPermits() now retries once with the leading direction stripped when the first search finds no match, verified safe because matchesAddress() itself still compares the full, direction-included address, so this can only widen which rows are fetched from the server, never which ones are accepted as a match. See docs/providers/tampa-preflight.md.
City of North Port Building Division (Accela Citizen Access)
Tier 1 · GOVERNMENT RECORD · City of North Port, FL
Last refreshed 2026-07-27
Public government permit records, no authentication required. Ninth Accela Citizen Access tenant — same vendor family as every prior tenant, module=Building same as Pasco/Charlotte/Hillsborough/Osceola, and the second City (after Tampa) rather than County registration. Real, closed-vocabulary "Residential Roof/Reroof"/"Commercial Roof/Reroof" categories confirmed directly on live records this sprint (not inferred by symmetry) — extended into the shared accelaRoofPermits.ts classifier, no new file. This tenant's own real records carry "VENICE" as their USPS mailing city for a genuine share of its own ZIP footprint (34293, split with the separate City of Venice) — deliberately NOT excluded by mailing-city name, the same departure already established for Osceola's and Polk's own resolvers, for the identical directly-observed reason. See docs/providers/north-port-preflight.md.
City of Sarasota Building and Engineering Permitting (FastTrackGov / Mitchell Humphrey)
Tier 1 · GOVERNMENT RECORD · City of Sarasota, FL
Last refreshed 2026-08-23
Public government permit records, no authentication required, no CAPTCHA. First RoofShopper FastTrackGov/Mitchell Humphrey ("tripleview") provider family onboarding — a genuinely different WebForms shape from Accela: the search step is real ASP.NET WebForms (GET for VIEWSTATE, POST a real search, real GridView results table), but the *detail* page itself is client-JS-rendered from empty placeholder HTML — real field data is fetched by the page's own script via a same-origin SOAP call to Common/PropertySearch.asmx (ExecuteDataSource, dataSourceName "Sarasota PM Inquiry", parameter SPOKey = the record's own GUID), confirmed live via a plain curl replay with zero cookies/session required. Real Work Type values confirmed live and directly used as the roof-classification signal: "REROOF - RESIDENTIAL" (three independent real permits: 2026-012048 at 3942 Glen Oaks Manor Dr; 2026-011334 and 2026-011336, a real two-permit case — main house and guest house — both at 1894 Datura St) and the documented commercial parallel "REROOF - COMMERCIAL". Real false-positive protection confirmed live: permit 2024-007398 (Work Type "ALTERATIONS/REPAIRS - RESIDENTIAL", a real permit at 3946 Bearded Oaks Ct whose free-text Work Description happens to mention "Shingle roof replacement") is correctly NOT classified as roof — a known, accepted, and documented false-negative risk rather than an unbounded free-text guess (see lib/classify/fastTrackGovRoofPermits.ts's own header); permit 2025-000349 ("REPLACING 4 WINDOWS - SIZE FOR SIZE") is also correctly not classified. A real confirmed-zero address was independently verified: 3960 Glen Oaks Manor Dr, Sarasota, FL 34232 — a real, geocodable property (Esri World Geocoding Service score 98.9, within the confirmed real address range of that street segment) that returns the source's own real "The entered criteria did not yield any results." marker, never fabricated. This source exposes no parcel/folio identifier anywhere (confirmed directly against three real detail records) and no single overall permit-status string, only several genuinely independent review tracks (Administrative, Plans Review/Planning, Zoning, ...) — each preserved verbatim in SourceRecord.rawPayload, never collapsed into one fabricated combined state. Jurisdiction routing for this authority is never ZIP/mailing-city-based (see resolveAuthority above and lib/providers/address/municipalBoundary.ts). See docs/providers/fasttrackgov.md and docs/providers/sarasota-city-municipal-boundary.md.
Esri World Geocoding Service
Tier 1 · GOVERNMENT RECORD · Florida (statewide)
Last refreshed 2026-08-23
Esri's free, public World Geocoding Service — the same service already used for live address autocomplete (Sprint H8) and City of Sarasota's own municipal-boundary routing (Sprint H7). A geocoded rooftop-level point, not a government parcel record — recorded only as a fallback when no parcel-based location exists for a property, never allowed to outrank one.
Florida Department of Revenue — Statewide Parcel Cadastral
Tier 1 · GOVERNMENT RECORD · Florida (statewide)
Last refreshed 2026-08-25
Public ArcGIS FeatureServer, no authentication required. Published by Florida's county property appraisers in coordination with the Florida Department of Revenue Property Tax Oversight program. A statewide corroborating/fallback location source — never used to establish property identity, and never allowed to silently outrank a county-authoritative location source; see docs/architecture/property-location-foundation.md.
Hillsborough County Building Construction Services (Accela Citizen Access / HillsGovHub)
Tier 1 · GOVERNMENT RECORD · Hillsborough County, FL
Last refreshed 2026-08-27
Public government permit records, no authentication required. Fifth Accela Citizen Access tenant — same vendor family as Pasco, Lee, Pinellas, and Charlotte, module=Building same as Pasco and Charlotte. Reuses the same shared classifier as Pasco and Charlotte unmodified in structure (extended Record Type vocabulary only) — this tenant's real, closed-vocabulary "Residential Roof Trade Permit"/"Commercial Roof Trade Permit" categories are the same classification strategy, not a new one. Excludes three separately incorporated cities within the county — Tampa (own separate Accela tenant), Temple Terrace (Click2Gov), Plant City (MaintStar). See docs/providers/hillsborough-preflight.md and docs/providers/accela.md.
City of Mulberry Building Department (Accela Citizen Access)
Tier 1 · GOVERNMENT RECORD · City of Mulberry, FL
Last refreshed 2026-08-27
Public government permit records, no authentication required — confirmed live at 400 N Church Ave (3 real records). Own, distinct Accela tenant ("MULBERRY") from Polk County's own "POLKCO" instance; the real official domain is cityofmulberryfl.org (cityofmulberry.com, without "fl", is an unrelated domain-squatter page). Real recordType "Re-Roof Permit" (BROOF-25-0057, "Clean and repair the roof area above the east offices and recoat the roof from metal edge to metal edge in problem area only") matches the shared accelaRoofPermits.ts closed vocabulary unchanged — zero classifier changes required. "Commercial New Permit" and "Fence-Wall Permit" at the same address correctly excluded (no tracked HomeSystem category). A second real address (144 SE 1st St) confirmed SUCCESS_NO_RECORDS handled cleanly.
National Hurricane Center — Wind History (Best Track Wind Swath)
Tier 1 · GOVERNMENT RECORD · United States (federal)
Last refreshed 2026-08-29
Public NOAA/NHC GIS product, no authentication required. Authoritative reconstructed cumulative wind-field extent per intensity threshold (34/50/64 kt) for the storm's full track — see docs/architecture/hurricane-exposure-v1.md for the live-verification record.
USGS Short-Term Network (STN) — High-Water Marks
Tier 1 · GOVERNMENT RECORD · United States (federal)
Last refreshed 2026-08-30
Public USGS STN service, no authentication required. Each record is a physically surveyed, QA-approved observation of the water elevation a specific historical event reached at one specific fixed site — never property-specific evidence, never a basis for comparing against a property's own (unknown) elevation. See docs/providers/usgs-hwm.md.
NOAA/NCEI Storm Events Database
Tier 1 · GOVERNMENT RECORD · United States (federal)
Last refreshed 2026-08-30
Public NOAA/NCEI government dataset, no authentication required. Storm Data as compiled from NWS field-office reports — see docs/providers/ncei-hail.md for known reporting-based (not exhaustive-detection) limitations.
NOAA/NWS Storm Prediction Center — Tornado Database
Tier 1 · GOVERNMENT RECORD · United States (federal)
Last refreshed 2026-08-30
Public NOAA/SPC government dataset, no authentication required. Compiled from NWS Storm Data submissions — see docs/providers/spc-tornado.md for known detection-bias limitations.
City of Largo Civic Access Portal (LCAP) — Tyler EnerGov SelfService
Tier 1 · GOVERNMENT RECORD · City of Largo, FL
Last refreshed 2026-09-08
Public government permit records, no authentication required — confirmed live this session via the real tenant's own /api/Home/GetTenants response: tenantId=1, tenantName="CityofLargoFLProd", Tyler-TenantUrl="CityofLargoFLProd". LCAP replaced a prior system ("eTRAKiT", hosted at etrakit.largo.com) via a formal, city-announced migration/cutover; whether that legacy subdomain still resolves in any form remains unconfirmed (a direct check was denied/failed this session) but does not affect this current, live-confirmed source. Two real addresses ran end-to-end through the exact request shape fetchPermits() sends (search -> address re-verification -> classification), confirmed live this session: 3069 138TH PL N (9 real permits at this parcel, 3 correctly classified ROOF — a 2008 "Commercial Roof Permit" (Finalized) and two real 2025 "Residential Roof Permit" records, ROOF-25-001181 "In Review" and ROOF-25-001184 "Expired" — and 6 correctly excluded as non-roof: mechanical, window/door replacement x2, fence, plumbing x2) and 744 WOODLAND DR (4 real permits, 2 correctly classified ROOF — a 2010 "Commercial Roof Permit" and ROOF-26-000104 "Residential Roof Permit" "Final" — and 2 correctly excluded: window/door replacement, tree removal). A fabricated address (1 Fake Nonexistent St) correctly returned SUCCESS_NO_RECORDS. Both real CaseType values observed ("Residential Roof Permit", "Commercial Roof Permit") were already present in the shared ROOF_CASE_TYPES vocabulary (added previously for Winter Park) — zero classifier changes were needed for this onboarding, a genuine config-only reuse. Real parcel identifiers confirmed live on every record (Pinellas County's own dash-delimited numeric format, e.g. "01-30-15-89025-000-1500") — not independently re-checked against Florida DOR's statewide parcel join this session. See docs/providers/tyler-energov.md.
City of Delray Beach eServices (Tyler EnerGov SelfService)
Tier 1 · GOVERNMENT RECORD · City of Delray Beach, FL
Last refreshed 2026-09-10
Public government permit records, no authentication required — confirmed live this sprint by directly capturing the real browser's own network requests (not assumed to follow a prior tenant's naming pattern): tenantId=1, tenantName="EnerGovProd", Tyler-TenantUrl="Home", the exact values this tenant's own /api/Home/GetTenants response returns. The site's own homepage copy ("Registration in the eServices platform is required to access existing records...") describes the account/application flow, not the public Search Public Records tool, which was independently confirmed anonymous — the POST /api/energov/search/search call carries no cookie or session of any kind, replayed successfully outside any browser session. Seventh RoofShopper Tyler EnerGov production onboarding, and the Tyler EnerGov Florida-sprint canary: chosen specifically to validate the already-proven provider (six prior Florida tenants) against a genuinely new county (Palm Beach, RoofShopper's first authority there) before committing to a broader multi-city sprint. Real roof records confirmed live this sprint at 532 NW 1st Ave (real parcel 12434607010020330): BLDR-019414-2026 ("Re-Roof of Existing Structure - Residential (single family or duplex)", CaseWorkclass "Roof - Replacement", status "Submitted - Online", applied 2026-08-25) plus three real historical roof-replacement permits at the same parcel spanning 2002-2010 (02-082403, 07-113780, 10-128229 — all CaseType "Legacy - Roof - Replacement", same CaseWorkclass, status "Complete"). A real roof-adjacent-but-distinct category was also confirmed and deliberately excluded: "Legacy - Roof - New Construction - SUB" (14-151432-000-000-R3-00, at a different real parcel) — new-construction roof work, not a replacement, never added to the roof classifier's vocabulary. Real false-positive-protection evidence: 21 other non-roof permits at the 532 NW 1st Ave parcel (fence, hardscape, electrical, new construction) and a further live pass across 6+ single-family addresses (627 East Dr, 3064 Carl Bolter Dr, 917 Iris Dr among them) — every non-roof CaseWorkclass (Alteration, Hardscape, Pool, Solar-App, General, Replacement [AC], Fence, Miscellaneous - Legacy) correctly excluded from roof classification. Real parcel identifiers (MainParcel) present directly on every search-result row, confirmed resolvable-format, no per-record detail-page fetch needed — this provider family's own established advantage over Accela. One real, disclosed, unresolved gap: 1055 SW 15th Ave (a real permit, BLDC-019445-2026, "Exterior Openings" for Suite C9-C12) appeared in a broad keyword search but did not match via this provider's own exact-address query — most likely a unit/suite-qualifier gap on a multi-tenant commercial building, not root-caused this sprint; every ordinary single-family address tested resolved correctly. A real, separately-fixed shared-adapter bug was found and corrected during this onboarding: the shared Tyler EnerGov adapter's own single-request PageSize (previously 25) silently excluded real records beyond page 1 — confirmed live for this exact parcel (39 total real permits on file, 3 of them real roof-replacement records that fell entirely on the never-requested page 2 before the fix) — see MAX_RESULTS_PER_SEARCH in tylerEnerGovPermits.ts.
City of Sunrise Tyler EnerGov SelfService
Tier 1 · GOVERNMENT RECORD · City of Sunrise, FL
Last refreshed 2026-09-10
Public government permit records, no authentication required — confirmed live this sprint via the real tenant's own /api/Home/GetTenants response: tenantId=1, tenantName="SunriseFL Prod" (genuinely contains a literal space — sent verbatim in both the tenantName and Tyler-TenantUrl headers, confirmed functional), self-hosted on the city's own energov.sunrisefl.gov domain rather than Tyler's shared tylerhost.net hosting, a genuinely different hosting pattern from every prior Broward tenant. Real roof records confirmed live via a full end-to-end fetchPermits() validation run against 10 real addresses plus one negative control: every expected CaseNumber found (e.g. 6221 NW 19 ST -> R-STRT-011790-2026, real depth also confirmed back to 2001-12-27 at 6881 NW 29 ST/2002-00001500, "Residential Structural - Roof / Reroof", CaseWorkclass "Roof / Reroof"). The deepest genuinely continuous real historical evidence confirmed anywhere in this program — no generic-bucket migration gap found across 2001, 2011, and 2021-era records sampled at the same real parcel.
City of Coral Gables Tyler EnerGov SelfService
Tier 1 · GOVERNMENT RECORD · City of Coral Gables, FL
Last refreshed 2026-09-11
Public government permit records, no authentication required — confirmed live this sprint via the real tenant's own /api/Home/GetTenants response: tenantId=1, tenantName="CoralGablesFLProd", Tyler-TenantUrl="CoralGablesFLProd". Real roof records confirmed live via a full end-to-end fetchPermits() validation run against 10 real addresses plus one negative control: every expected CaseNumber found (e.g. 1141 S ALHAMBRA CIR -> BLDR-21-09-0148, "Residential Roofing Permit", CaseWorkclass "Roofing", status "Finaled", parcel 0341300080550) — that same real parcel's own permit history also included a real "Residential Addition or Exterior Renovation Permit", confirmed correctly excluded from roof classification. Real historical depth for roof-classifiable records is confirmed only from 2021-08-30 forward (case BLDR-21-08-0086); an older real record at this tenant ("EDEN Legacy Permit - EDEN Legacy Building", 2017) is a generic pre-migration bucket type, not roof-identifiable — the same kind of migration ceiling confirmed at Miami Gardens.
City of Miami Gardens Tyler EnerGov SelfService (CMG Customer Self Service)
Tier 1 · GOVERNMENT RECORD · City of Miami Gardens, FL
Last refreshed 2026-09-11
Public government permit records, no authentication required — confirmed live this sprint via the real tenant's own /api/Home/GetTenants response: tenantId=1, tenantName="MiamiGardensFLProd", Tyler-TenantUrl="MiamiGardensFLProd" — hosted on the "energovpub" tylerhost.net subdomain segment, genuinely distinct from the "energovweb" segment every prior tylerhost.net tenant in this program used. Real roof records confirmed live via a full end-to-end fetchPermits() validation run against 9 real addresses plus one negative control: every expected CaseNumber found (e.g. 20280 NW 33RD CT -> ROOF-2026-003971, "Residential Building Roof", CaseWorkclass "Residential", status "Issued", parcel 3411330230020) — the same real parcel also returned a real pre-migration record ("Eden Historical - PZ", 2016), confirming a real "Eden" system migration ceiling on this tenant's historical roof-classifiability (see registry.ts). Real CaseWorkclass values ("Residential"/"Commercial") are dangerously generic and deliberately never added to the shared ROOF_WORKCLASS_VALUES set — classification relies on CaseType alone for this tenant.
Polk County Building Division (Accela Citizen Access)
Tier 1 · GOVERNMENT RECORD · Polk County, FL
Last refreshed 2026-09-11
Public government permit records, no authentication required. Seventh Accela Citizen Access tenant — same vendor family as Pasco, Lee, Pinellas, Charlotte, Hillsborough, and Osceola, launched with the Coverage Factory tooling built in Sprint L (scripts/preflight.ts). Reuses makeAccelaPermitProvider() and accelaHtmlParser.ts unchanged. Real, closed-vocabulary "Re-Roof Permit" record type (no Residential/Commercial split, the same shape as Osceola's own "Roofing Permit") — extended into the shared accelaRoofPermits.ts classifier, no new file. Excludes twelve separately incorporated cities (Lakeland, Winter Haven, Bartow, Auburndale, Haines City, Davenport, Lake Wales, Mulberry, Frostproof, Dundee, Lake Alfred, Lake Hamilton) that run their own permitting departments — but, unlike the default pattern, NOT by mailing-city name: a real record confirmed live this sprint carries "LAKE WALES" as its mailing city despite being genuinely unincorporated-county territory administered by this tenant itself, so a name-based exclusion would incorrectly refuse a real, correctly-routed address. Eagle Lake (previously also excluded) was added to this authority's own routing this milestone (Top 10 Florida County Coverage Milestone 6) — confirmed live to have NO separate tenant of its own (its official ACCELA PORTAL link 302-redirects straight to this exact tenant), a real, rich set of over 100 real Eagle Lake permit records confirmed via a broad city-name search, and 3 real Eagle Lake addresses independently re-confirmed through this exact production provider code (3191 Totem Rd, 393 Gilbert St, 830 N 8th St) — none carrying a real roof/re-roof permit in the visible window, a disclosed data-coverage gap tracked separately (see the tracker's own Eagle Lake entry), not a reason to withhold correct routing. See docs/providers/polk-county-preflight.md. ZIP 34759 (a real Polk/Osceola county-line ZIP) is deliberately omitted from this resolver's ZIP set since it is already claimed by osceolaCountyParcelProvider, registered earlier in this array.
Pasco County Building Construction Services (Accela Citizen Access)
Tier 1 · GOVERNMENT RECORD · Pasco County, FL
Last refreshed 2026-09-11
Public government permit records, no authentication required. First production jurisdiction on the Accela Citizen Access vendor platform — see docs/providers/accela.md. Excludes the six separately incorporated cities within the county's ZIP footprint (New Port Richey, Zephyrhills, Port Richey, Dade City, San Antonio, St. Leo), which run their own building departments on other systems, not this county portal.