{"openapi":"3.1.0","jsonSchemaDialect":"https://json-schema.org/draft/2020-12/schema","info":{"title":"PublicGIS API","version":"1.0.0","summary":"Parcel facts, parcel overlays, official resources and coverage for US counties, with a source, date and license class on every fact.","description":"Per-parcel, per-question lookups. Not a bulk export: area search is capped in size and results,\nand there is no owner-name search at any tier.\n\nStatus: not yet open. Until launch every request is refused with HTTP 503 and the problem type\nhttps://www.publicgis.com/problems/not-yet-open, except for operator-issued preview keys.\n\nRules. The data may not be used for credit, insurance, employment, tenant screening, housing or any\nother eligibility decision (no FCRA uses). Parcel maps are not surveys and the county is the\nauthority for boundaries, ownership, values and taxes. Only counties and records whose source is\nlicensed open or public_record are served. Suppressed and protected parcels are never served; when a\nparcel you hold answers 404, delete your copy; when it answers status superseded, fetch its successors.\n\nAccess tiers. Without a key (api_anonymous) you get parcel facts without owner names or mailing\naddresses, limited per IP address. With a key whose holder accepted the current API Terms (api_key)\nthe owner of record and mailing address are added where the county's sources and state policy allow\nit. Third-party contact data (phones, emails) is never part of any response.\n\nEvery success is the envelope data, sources, as_of, request_id, notices. Every error is RFC 9457\napplication/problem+json with a stable type URI. Times are ISO 8601 UTC; coordinates are WGS84 in\nGeoJSON order (longitude, latitude).\n\nLimits are returned in RateLimit and RateLimit-Policy headers (IETF httpapi draft, structured field\nform); a request over a limit gets 429 with Retry-After. Reads carry ETag and Cache-Control; send\nIf-None-Match to get 304. The ETag changes whenever PublicGIS publishes a privacy change. CORS:\nAccess-Control-Allow-Origin * on GET without credentials, so keys cannot be used from a browser.\n\nDeprecation policy: an endpoint, parameter or field is removed no sooner than 12 months after it is\nannounced in the changelog and marked with Deprecation and Sunset headers.\n","termsOfService":"https://api.publicgis.com/terms","contact":{"name":"PublicGIS","url":"https://api.publicgis.com/"}},"servers":[{"url":"https://api.publicgis.com/v1"}],"security":[{},{"apiKey":[]}],"tags":[{"name":"parcels"},{"name":"coverage"}],"paths":{"/parcels/lookup":{"get":{"tags":["parcels"],"operationId":"lookupParcels","summary":"Up to five parcel candidates for an address, a point, or a county and APN","description":"Give exactly one of address; lat and lon; or county_geoid and apn. An address is matched only against the parcel's own site address, city, ZIP and county, never owner names, so this is not a person search.","parameters":[{"name":"address","in":"query","description":"A street address, for example 123 Main St Springfield MN","schema":{"type":"string","minLength":2,"maxLength":200}},{"name":"lat","in":"query","description":"WGS84 latitude","schema":{"type":"number","minimum":-90,"maximum":90}},{"name":"lon","in":"query","description":"WGS84 longitude","schema":{"type":"number","minimum":-180,"maximum":180}},{"name":"county_geoid","in":"query","description":"Five-digit county GEOID, with or without the county: prefix","schema":{"type":"string","pattern":"^(county:)?[0-9]{5}$"}},{"name":"apn","in":"query","description":"The county's parcel number as published","schema":{"type":"string","minLength":1,"maxLength":64}}],"responses":{"200":{"description":"Candidates, best first, with a confidence between 0 and 1","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"ETag":{"$ref":"#/components/headers/ETag"},"Cache-Control":{"$ref":"#/components/headers/Cache-Control"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LookupEnvelope"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"404":{"description":"No parcel this tier may see matches; coverage names the county when one is known","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/TooManyRequests"},"503":{"$ref":"#/components/responses/Problem"}}}},"/parcels/{parcel_uid}":{"get":{"tags":["parcels"],"operationId":"getParcel","summary":"Facts for one parcel by section, each with its sources and as_of date","description":"A retired parcel_uid answers with status superseded and the live successors. A parcel that is hidden, suppressed or protected answers 404; delete any copy you hold.","parameters":[{"$ref":"#/components/parameters/ParcelUid"},{"name":"sections","in":"query","description":"Comma-separated subset of basics, assessment, tax, sales, zoning, overlays. Default all.","schema":{"type":"string","pattern":"^(basics|assessment|tax|sales|zoning|overlays)(,(basics|assessment|tax|sales|zoning|overlays))*$"}},{"name":"geometry","in":"query","description":"GeoJSON outline in basics, simplified to about a metre by default.","schema":{"type":"string","enum":["simplified","full","none"],"default":"simplified"}}],"responses":{"200":{"description":"The parcel, or where it went","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"ETag":{"$ref":"#/components/headers/ETag"},"Cache-Control":{"$ref":"#/components/headers/Cache-Control"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParcelEnvelope"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"405":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/TooManyRequests"},"503":{"$ref":"#/components/responses/Problem"}}}},"/parcels/{parcel_uid}/overlays":{"get":{"tags":["parcels"],"operationId":"getParcelOverlays","summary":"Flood zones, wetlands and soils as shares of the parcel's mapped area","description":"Screening from mapped layers, not an official flood determination or wetland delineation. FEMA's flood layer covers most but not all of the country; an empty flood list where no FEMA layer exists is not a finding of no flood risk.","parameters":[{"$ref":"#/components/parameters/ParcelUid"}],"responses":{"200":{"description":"Overlay shares with their source dates, or where the parcel went","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"ETag":{"$ref":"#/components/headers/ETag"},"Cache-Control":{"$ref":"#/components/headers/Cache-Control"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OverlaysEnvelope"}}}},"304":{"$ref":"#/components/responses/NotModified"},"401":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"405":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/TooManyRequests"},"503":{"$ref":"#/components/responses/Problem"}}}},"/parcels/{parcel_uid}/official-resources":{"get":{"tags":["parcels"],"operationId":"getOfficialResources","summary":"Official government resources for the parcel's place, from GISFinder","description":"Ranked official pages for one topic from GISFinder's directory (www.gisfinder.com), for the smallest jurisdiction containing the parcel and then its county and state, each with GISFinder's verification status. This is GISFinder's compilation, not PublicGIS data. Answers 503 unavailable when GISFinder cannot be reached.","parameters":[{"$ref":"#/components/parameters/ParcelUid"},{"name":"topic","in":"query","required":true,"schema":{"$ref":"#/components/schemas/Topic"}}],"responses":{"200":{"description":"Resources, best first","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"ETag":{"$ref":"#/components/headers/ETag"},"Cache-Control":{"$ref":"#/components/headers/Cache-Control"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourcesEnvelope"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"405":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/TooManyRequests"},"503":{"$ref":"#/components/responses/Problem"}}}},"/parcels":{"get":{"tags":["parcels"],"operationId":"findParcelsInArea","summary":"Parcels in a small box or circle, filtered by acreage and land use","description":"Give bbox, or lat, lon and radius_m. The box may cover at most 2 square kilometres and the radius\nat most 1000 metres. At most 50 parcels per page, in a stable order; pass next_cursor as cursor\nfor the next page with the same query. Never returns owner names or mailing addresses, at any tier.\n","parameters":[{"name":"bbox","in":"query","description":"min_lon,min_lat,max_lon,max_lat in WGS84","schema":{"type":"string","pattern":"^-?[0-9.]+,-?[0-9.]+,-?[0-9.]+,-?[0-9.]+$"}},{"name":"lat","in":"query","schema":{"type":"number","minimum":-90,"maximum":90}},{"name":"lon","in":"query","schema":{"type":"number","minimum":-180,"maximum":180}},{"name":"radius_m","in":"query","schema":{"type":"number","exclusiveMinimum":0,"maximum":1000}},{"name":"min_acres","in":"query","schema":{"type":"number","minimum":0}},{"name":"max_acres","in":"query","schema":{"type":"number","minimum":0}},{"name":"land_use","in":"query","description":"Case-insensitive text found in the county's land use class","schema":{"type":"string","minLength":2,"maxLength":60}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":50,"default":25}},{"name":"cursor","in":"query","schema":{"type":"string","maxLength":400}}],"responses":{"200":{"description":"The count of matching parcels and one page of summaries","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"ETag":{"$ref":"#/components/headers/ETag"},"Cache-Control":{"$ref":"#/components/headers/Cache-Control"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AreaEnvelope"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"405":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/TooManyRequests"},"503":{"$ref":"#/components/responses/Problem"}}}},"/coverage":{"get":{"tags":["coverage"],"operationId":"getCoverage","summary":"Which counties the API serves and how fresh they are","description":"Without jurisdiction_id, every county served through the API (license cleared), optionally for one state. With jurisdiction_id, whether PublicGIS shows that jurisdiction on the web and whether it is cleared for the API.","parameters":[{"name":"state","in":"query","description":"Two-letter postal code","schema":{"type":"string","pattern":"^[A-Za-z]{2}$"}},{"name":"jurisdiction_id","in":"query","schema":{"type":"string","pattern":"^((state|county|place|cousub):)?([0-9]{2}|[0-9]{5}|[0-9]{7}|[0-9]{10})$"}}],"responses":{"200":{"description":"Coverage","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"ETag":{"$ref":"#/components/headers/ETag"},"Cache-Control":{"$ref":"#/components/headers/Cache-Control"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CoverageEnvelope"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"405":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/TooManyRequests"},"503":{"$ref":"#/components/responses/Problem"}}}}},"components":{"securitySchemes":{"apiKey":{"type":"http","scheme":"bearer","description":"Authorization: Bearer <key>. Keys are issued after email verification and acceptance of the API Terms, shown once, and stored only as a SHA-256 digest. An unknown or revoked key is refused with 401; send no Authorization header to use the anonymous tier."}},"headers":{"RateLimit":{"description":"Remaining quota per policy, for example \"minute\";r=59;t=42, \"day\";r=999;t=3600 (r remaining, t seconds to reset).","schema":{"type":"string"}},"RateLimit-Policy":{"description":"Quota policies, for example \"minute\";q=60;w=60, \"day\";q=1000;w=86400.","schema":{"type":"string"}},"Retry-After":{"description":"Seconds to wait before retrying.","schema":{"type":"integer","minimum":1}},"ETag":{"description":"Weak validator of the body and the privacy epoch. Send it back in If-None-Match.","schema":{"type":"string"}},"Cache-Control":{"description":"private, max-age=60 on reads; no-store on problems.","schema":{"type":"string"}},"X-Request-Id":{"description":"The request_id of the body, for support.","schema":{"type":"string"}}},"parameters":{"ParcelUid":{"name":"parcel_uid","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ParcelUid"}}},"responses":{"Problem":{"description":"RFC 9457 problem details","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"TooManyRequests":{"description":"Over a rate limit. Wait Retry-After seconds; retrying sooner is refused again.","headers":{"Retry-After":{"$ref":"#/components/headers/Retry-After"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"NotModified":{"description":"The ETag in If-None-Match still matches; reuse your copy."}},"schemas":{"LicenseClass":{"type":"string","enum":["open","public_record","restricted_no_redistribution","licensed_third_party","unknown"]},"ParcelUid":{"description":"Opaque, stable parcel id (pg_ and a ULID). It survives re-imports; a split or merged parcel's old id answers superseded.","type":"string","pattern":"^pg_[0-9A-HJKMNP-TV-Z]{26}$"},"JurisdictionId":{"type":"string","pattern":"^(state|county|place|cousub|district|country):[0-9A-Za-z_.-]+$"},"Topic":{"description":"GISFinder's topic vocabulary (platform contract 4.3)","type":"string","enum":["parcel_map","county_gis","assessor","property_tax_payment","tax_collector","recorder_deeds","plats_surveys","zoning","building_permits","septic_well","wetlands","floodplain","soils","elevation","roads_right_of_way","public_land","property_records_general"]},"Instant":{"description":"ISO 8601, a UTC date-time ending in Z or a calendar date","type":["string","null"],"pattern":"^[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}Z)?$"},"Value":{"description":"A published value, as the source gives it","type":["string","number","boolean","null","array","object"]},"Text":{"type":["string","null"]},"Number":{"type":["number","null"]},"Geometry":{"description":"GeoJSON, WGS84, longitude first","type":["object","null"],"required":["type","coordinates"],"properties":{"type":{"enum":["Point","Polygon","MultiPolygon"]},"coordinates":{"type":"array"}},"additionalProperties":false},"Source":{"type":"object","required":["id","name","url","publisher","official","retrieved_at","license_class","as_of"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"url":{"type":["string","null"],"format":"uri"},"publisher":{"type":"string"},"official":{"type":"boolean"},"retrieved_at":{"$ref":"#/components/schemas/Instant"},"license_class":{"$ref":"#/components/schemas/LicenseClass"},"as_of":{"$ref":"#/components/schemas/Instant"}},"additionalProperties":false},"Envelope":{"type":"object","required":["data","sources","as_of","request_id","notices"],"properties":{"data":{},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"as_of":{"$ref":"#/components/schemas/Instant"},"request_id":{"type":"string"},"notices":{"description":"Plain-language caveats, always including that parcel maps are not surveys and the FCRA ban","type":"array","minItems":2,"items":{"type":"string"}}}},"Candidate":{"type":"object","required":["parcel_uid","publicgis_url","jurisdiction_id","county_name","state","apn","confidence","matched_by"],"properties":{"parcel_uid":{"$ref":"#/components/schemas/ParcelUid"},"publicgis_url":{"type":"string","format":"uri"},"jurisdiction_id":{"type":"string","pattern":"^county:[0-9]{5}$"},"county_name":{"type":"string"},"state":{"type":["string","null"]},"apn":{"type":"string"},"confidence":{"type":"number","minimum":0,"maximum":1},"matched_by":{"enum":["address","point","apn"]},"situs_address":{"$ref":"#/components/schemas/Text"},"situs_city":{"$ref":"#/components/schemas/Text"},"situs_zip":{"$ref":"#/components/schemas/Text"}},"additionalProperties":false},"LookupEnvelope":{"allOf":[{"$ref":"#/components/schemas/Envelope"},{"properties":{"data":{"type":"object","required":["candidates"],"properties":{"candidates":{"type":"array","minItems":1,"maxItems":5,"items":{"$ref":"#/components/schemas/Candidate"}}},"additionalProperties":false}}}]},"SectionStatus":{"description":"ok; empty (nothing published); not_cleared (a source exists but its license does not allow the API); unavailable (try again later)","enum":["ok","empty","not_cleared","unavailable"]},"Section":{"type":"object","required":["status","as_of","sources"],"properties":{"status":{"$ref":"#/components/schemas/SectionStatus"},"as_of":{"$ref":"#/components/schemas/Instant"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"facts":{"type":"object"}}},"BasicsFacts":{"description":"owner_name, taxpayer_name and both mailing addresses appear only for a key whose holder accepted the current API Terms, and only where the county's parcel and owner sources are cleared, allow reuse of person fields and the state policy allows them. Never without a key.","type":"object","properties":{"apn":{"$ref":"#/components/schemas/Value"},"owner_name":{"$ref":"#/components/schemas/Value"},"taxpayer_name":{"$ref":"#/components/schemas/Value"},"owner_mailing_address":{"$ref":"#/components/schemas/Value"},"taxpayer_mailing_address":{"$ref":"#/components/schemas/Value"},"situs_house_number":{"$ref":"#/components/schemas/Value"},"situs_address":{"$ref":"#/components/schemas/Value"},"situs_city":{"$ref":"#/components/schemas/Value"},"situs_zip":{"$ref":"#/components/schemas/Value"},"municipality":{"$ref":"#/components/schemas/Value"},"plss_township":{"$ref":"#/components/schemas/Value"},"plss_township_direction":{"$ref":"#/components/schemas/Value"},"plss_range":{"$ref":"#/components/schemas/Value"},"plss_range_direction":{"$ref":"#/components/schemas/Value"},"plss_section":{"$ref":"#/components/schemas/Value"},"acres_reported":{"$ref":"#/components/schemas/Value"},"deeded_acres":{"$ref":"#/components/schemas/Value"},"legal_description":{"$ref":"#/components/schemas/Value"},"plat":{"$ref":"#/components/schemas/Value"},"lake_name":{"$ref":"#/components/schemas/Value"},"land_use_class":{"$ref":"#/components/schemas/Value"},"land_use_class_2":{"$ref":"#/components/schemas/Value"},"land_use_class_3":{"$ref":"#/components/schemas/Value"},"school_district":{"$ref":"#/components/schemas/Value"},"tax_district":{"$ref":"#/components/schemas/Value"},"year_built":{"$ref":"#/components/schemas/Value"},"bedrooms":{"$ref":"#/components/schemas/Value"},"bathrooms":{"$ref":"#/components/schemas/Value"},"living_sqft":{"$ref":"#/components/schemas/Value"},"building_sqft":{"$ref":"#/components/schemas/Value"},"acres_mapped":{"$ref":"#/components/schemas/Value"},"geometry":{"$ref":"#/components/schemas/Geometry"},"center":{"$ref":"#/components/schemas/Geometry"}},"additionalProperties":false},"AssessmentRecord":{"type":"object","properties":{"land_value":{"$ref":"#/components/schemas/Value"},"note":{"$ref":"#/components/schemas/Value"},"improvement_value":{"$ref":"#/components/schemas/Value"},"assessment_year":{"$ref":"#/components/schemas/Value"},"market_value":{"$ref":"#/components/schemas/Value"},"assessed_value":{"$ref":"#/components/schemas/Value"},"class":{"$ref":"#/components/schemas/Value"},"card":{"$ref":"#/components/schemas/Value"},"taxable_value":{"$ref":"#/components/schemas/Value"},"roll_stage":{"$ref":"#/components/schemas/Value"},"school_assessed_value":{"$ref":"#/components/schemas/Value"},"school_taxable_value":{"$ref":"#/components/schemas/Value"},"year_built":{"$ref":"#/components/schemas/Value"},"living_sqft":{"$ref":"#/components/schemas/Value"},"residential_units":{"$ref":"#/components/schemas/Value"},"buildings":{"$ref":"#/components/schemas/Value"},"forest_law_value":{"$ref":"#/components/schemas/Value"},"tax_year":{"$ref":"#/components/schemas/Value"},"use_code":{"$ref":"#/components/schemas/Value"},"auxiliary_class":{"$ref":"#/components/schemas/Value"},"deeded_acres":{"$ref":"#/components/schemas/Value"},"tillable_acres":{"$ref":"#/components/schemas/Value"},"pay_year":{"$ref":"#/components/schemas/Value"},"tax_capacity":{"$ref":"#/components/schemas/Value"},"site_value":{"$ref":"#/components/schemas/Value"},"dwelling_value":{"$ref":"#/components/schemas/Value"},"equalized_value":{"$ref":"#/components/schemas/Value"},"classes":{"$ref":"#/components/schemas/Value"},"source_id":{"$ref":"#/components/schemas/Value"},"last_published":{"$ref":"#/components/schemas/Value"}},"additionalProperties":false},"TaxRecord":{"description":"Balances, penalties, payment and delinquency status are never served by the API.","type":"object","properties":{"tax_year":{"$ref":"#/components/schemas/Value"},"note":{"$ref":"#/components/schemas/Value"},"derived_fields":{"$ref":"#/components/schemas/Value"},"net_tax":{"$ref":"#/components/schemas/Value"},"gross_tax":{"$ref":"#/components/schemas/Value"},"tax_total":{"$ref":"#/components/schemas/Value"},"first_half_tax":{"$ref":"#/components/schemas/Value"},"second_half_tax":{"$ref":"#/components/schemas/Value"},"installment_1_amount":{"$ref":"#/components/schemas/Value"},"installment_2_amount":{"$ref":"#/components/schemas/Value"},"special_assessments":{"$ref":"#/components/schemas/Value"},"class":{"$ref":"#/components/schemas/Value"},"prior_year_total":{"$ref":"#/components/schemas/Value"},"source_id":{"$ref":"#/components/schemas/Value"},"last_published":{"$ref":"#/components/schemas/Value"}},"additionalProperties":false},"SaleRecord":{"description":"Flags that describe the buyer or seller (primary residence, related parties, gift or inheritance, distressed) are never served by the API. A multi-parcel sale price is the price of the whole transaction.","type":"object","properties":{"sale_date":{"$ref":"#/components/schemas/Value"},"sale_month":{"$ref":"#/components/schemas/Value"},"sale_price":{"$ref":"#/components/schemas/Value"},"adjusted_price":{"$ref":"#/components/schemas/Value"},"sale_price_kind":{"$ref":"#/components/schemas/Value"},"value_at_sale":{"$ref":"#/components/schemas/Value"},"ratio":{"$ref":"#/components/schemas/Value"},"qualified":{"$ref":"#/components/schemas/Value"},"qualification_code":{"$ref":"#/components/schemas/Value"},"reject_reason":{"$ref":"#/components/schemas/Value"},"instrument":{"$ref":"#/components/schemas/Value"},"document":{"$ref":"#/components/schemas/Value"},"book":{"$ref":"#/components/schemas/Value"},"page":{"$ref":"#/components/schemas/Value"},"recorded_date":{"$ref":"#/components/schemas/Value"},"deed_type":{"$ref":"#/components/schemas/Value"},"sale_type":{"$ref":"#/components/schemas/Value"},"status":{"$ref":"#/components/schemas/Value"},"class_code":{"$ref":"#/components/schemas/Value"},"property_class":{"$ref":"#/components/schemas/Value"},"property_type":{"$ref":"#/components/schemas/Value"},"multi_parcel":{"$ref":"#/components/schemas/Value"},"multi_parcel_code":{"$ref":"#/components/schemas/Value"},"improved":{"$ref":"#/components/schemas/Value"},"jurisdiction":{"$ref":"#/components/schemas/Value"},"deeded_acres":{"$ref":"#/components/schemas/Value"},"year_built":{"$ref":"#/components/schemas/Value"},"study_year":{"$ref":"#/components/schemas/Value"},"note":{"$ref":"#/components/schemas/Value"},"ecrv":{"$ref":"#/components/schemas/Value"},"ecrv_id":{"$ref":"#/components/schemas/Value"},"certificate_stage":{"$ref":"#/components/schemas/Value"},"net_amount":{"$ref":"#/components/schemas/Value"},"personal_property":{"$ref":"#/components/schemas/Value"},"partial_interest":{"$ref":"#/components/schemas/Value"},"government_sale":{"$ref":"#/components/schemas/Value"},"new_construction":{"$ref":"#/components/schemas/Value"},"split_or_combined":{"$ref":"#/components/schemas/Value"},"included":{"$ref":"#/components/schemas/Value"},"planned_use":{"$ref":"#/components/schemas/Value"},"prior_use":{"$ref":"#/components/schemas/Value"},"source_id":{"$ref":"#/components/schemas/Value"},"last_published":{"$ref":"#/components/schemas/Value"},"rejected":{"$ref":"#/components/schemas/Value"},"sale_year":{"$ref":"#/components/schemas/Value"},"tillable_acres":{"$ref":"#/components/schemas/Value"},"transaction_parcels":{"$ref":"#/components/schemas/Value"}},"additionalProperties":false},"AssessmentFacts":{"type":"object","required":["records"],"properties":{"assessment_year":{"$ref":"#/components/schemas/Value"},"land_value":{"$ref":"#/components/schemas/Value"},"building_value":{"$ref":"#/components/schemas/Value"},"total_value":{"$ref":"#/components/schemas/Value"},"market_value":{"$ref":"#/components/schemas/Value"},"value_kind":{"$ref":"#/components/schemas/Value"},"assessed_value":{"$ref":"#/components/schemas/Value"},"assessed_kind":{"$ref":"#/components/schemas/Value"},"assessed_year":{"$ref":"#/components/schemas/Value"},"records":{"type":"array","items":{"$ref":"#/components/schemas/AssessmentRecord"}}},"additionalProperties":false},"TaxFacts":{"type":"object","required":["records"],"properties":{"records":{"type":"array","items":{"$ref":"#/components/schemas/TaxRecord"}}},"additionalProperties":false},"SalesFacts":{"type":"object","required":["records"],"properties":{"last_sale_price":{"$ref":"#/components/schemas/Value"},"last_sale_date":{"$ref":"#/components/schemas/Value"},"sale_price_kind":{"$ref":"#/components/schemas/Value"},"records":{"type":"array","items":{"$ref":"#/components/schemas/SaleRecord"}}},"additionalProperties":false},"ZoningFacts":{"type":"object","required":["zoning","land_use"],"properties":{"zoning":{"type":"array","items":{"type":"object","properties":{"district":{"$ref":"#/components/schemas/Text"},"code":{"$ref":"#/components/schemas/Text"},"authority":{"$ref":"#/components/schemas/Text"}},"additionalProperties":false}},"land_use":{"type":"array","items":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/Text"},"code":{"$ref":"#/components/schemas/Text"},"authority":{"$ref":"#/components/schemas/Text"}},"additionalProperties":false}}},"additionalProperties":false},"OverlayFacts":{"description":"Shares of the parcel's mapped area, in percent. Screening only.","type":"object","properties":{"flood":{"type":"array","items":{"type":"object","properties":{"zone":{"$ref":"#/components/schemas/Text"},"description":{"$ref":"#/components/schemas/Text"},"subtype":{"$ref":"#/components/schemas/Text"},"sfha":{"type":["boolean","null"]},"bfe":{"$ref":"#/components/schemas/Number"},"depth":{"$ref":"#/components/schemas/Number"},"datum":{"$ref":"#/components/schemas/Text"},"pct":{"type":"number"}},"additionalProperties":false}},"wetlands":{"type":"array","items":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/Text"},"pct":{"type":"number"}},"additionalProperties":false}},"soils":{"type":"array","items":{"type":"object","properties":{"unit":{"$ref":"#/components/schemas/Text"},"musym":{"$ref":"#/components/schemas/Text"},"drainage":{"$ref":"#/components/schemas/Text"},"hydric_pct":{"$ref":"#/components/schemas/Number"},"hydgrp":{"$ref":"#/components/schemas/Text"},"flood":{"$ref":"#/components/schemas/Text"},"pond_pct":{"$ref":"#/components/schemas/Number"},"water_table_in":{"$ref":"#/components/schemas/Number"},"bedrock_in":{"$ref":"#/components/schemas/Number"},"farmland":{"$ref":"#/components/schemas/Text"},"pct":{"type":"number"}},"additionalProperties":false}}},"additionalProperties":false},"OverlaySection":{"allOf":[{"$ref":"#/components/schemas/Section"},{"properties":{"facts":{"$ref":"#/components/schemas/OverlayFacts"}}}]},"Sections":{"type":"object","properties":{"basics":{"allOf":[{"$ref":"#/components/schemas/Section"},{"properties":{"facts":{"$ref":"#/components/schemas/BasicsFacts"}}}]},"assessment":{"allOf":[{"$ref":"#/components/schemas/Section"},{"properties":{"facts":{"$ref":"#/components/schemas/AssessmentFacts"}}}]},"tax":{"allOf":[{"$ref":"#/components/schemas/Section"},{"properties":{"facts":{"$ref":"#/components/schemas/TaxFacts"}}}]},"sales":{"allOf":[{"$ref":"#/components/schemas/Section"},{"properties":{"facts":{"$ref":"#/components/schemas/SalesFacts"}}}]},"zoning":{"allOf":[{"$ref":"#/components/schemas/Section"},{"properties":{"facts":{"$ref":"#/components/schemas/ZoningFacts"}}}]},"overlays":{"$ref":"#/components/schemas/OverlaySection"}},"additionalProperties":false},"ParcelHead":{"type":"object","required":["parcel_uid","status","publicgis_url","jurisdiction_id","county_name","state","apn"],"properties":{"parcel_uid":{"$ref":"#/components/schemas/ParcelUid"},"status":{"const":"current"},"publicgis_url":{"type":"string","format":"uri"},"jurisdiction_id":{"type":"string","pattern":"^county:[0-9]{5}$"},"county_name":{"type":"string"},"state":{"type":["string","null"]},"apn":{"type":"string"}}},"ParcelReport":{"allOf":[{"$ref":"#/components/schemas/ParcelHead"},{"required":["sections"],"properties":{"parcel_uid":true,"status":true,"publicgis_url":true,"jurisdiction_id":true,"county_name":true,"state":true,"apn":true,"sections":{"$ref":"#/components/schemas/Sections"}},"additionalProperties":false}]},"ParcelOverlays":{"allOf":[{"$ref":"#/components/schemas/ParcelHead"},{"required":["overlays"],"properties":{"parcel_uid":true,"status":true,"publicgis_url":true,"jurisdiction_id":true,"county_name":true,"state":true,"apn":true,"overlays":{"$ref":"#/components/schemas/OverlaySection"}},"additionalProperties":false}]},"SupersededParcel":{"type":"object","required":["parcel_uid","status","superseded_by","publicgis_url"],"properties":{"parcel_uid":{"$ref":"#/components/schemas/ParcelUid"},"status":{"const":"superseded"},"superseded_by":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/ParcelUid"}},"publicgis_url":{"type":"string","format":"uri"}},"additionalProperties":false},"ParcelEnvelope":{"allOf":[{"$ref":"#/components/schemas/Envelope"},{"properties":{"data":{"oneOf":[{"$ref":"#/components/schemas/ParcelReport"},{"$ref":"#/components/schemas/SupersededParcel"}]}}}]},"OverlaysEnvelope":{"allOf":[{"$ref":"#/components/schemas/Envelope"},{"properties":{"data":{"oneOf":[{"$ref":"#/components/schemas/ParcelOverlays"},{"$ref":"#/components/schemas/SupersededParcel"}]}}}]},"Resource":{"description":"One official page from GISFinder's directory, with GISFinder's verification status","type":"object","required":["name","url","official","verified_status","license_class","page_url"],"properties":{"resource_id":{"$ref":"#/components/schemas/Text"},"name":{"type":"string"},"description":{"$ref":"#/components/schemas/Text"},"url":{"type":"string","format":"uri"},"topics":{"type":"array","items":{"type":"string"}},"jurisdiction_id":{"$ref":"#/components/schemas/Text"},"publisher":{"$ref":"#/components/schemas/Text"},"official":{"type":"boolean"},"verified_status":{"enum":["verified","not_yet_verified","possibly_broken",null]},"verified_at":{"$ref":"#/components/schemas/Instant"},"license_class":{"$ref":"#/components/schemas/LicenseClass"},"page_url":{"type":["string","null"],"format":"uri"}},"additionalProperties":false},"OfficialResources":{"type":"object","required":["parcel_uid","jurisdiction_id","topic","provider","place","resources"],"properties":{"parcel_uid":{"$ref":"#/components/schemas/ParcelUid"},"jurisdiction_id":{"type":"string","pattern":"^county:[0-9]{5}$"},"topic":{"$ref":"#/components/schemas/Topic"},"provider":{"const":"GISFinder"},"place":{"description":"The smallest jurisdiction GISFinder resolved for the parcel's point","type":["object","null"],"properties":{"jurisdiction_id":{"$ref":"#/components/schemas/Text"},"name":{"$ref":"#/components/schemas/Text"},"page_url":{"type":["string","null"],"format":"uri"}},"additionalProperties":false},"resources":{"type":"array","items":{"$ref":"#/components/schemas/Resource"}}},"additionalProperties":false},"ResourcesEnvelope":{"allOf":[{"$ref":"#/components/schemas/Envelope"},{"properties":{"data":{"oneOf":[{"$ref":"#/components/schemas/OfficialResources"},{"$ref":"#/components/schemas/SupersededParcel"}]}}}]},"AreaParcel":{"description":"A parcel summary. Never carries owner names or mailing addresses.","type":"object","required":["parcel_uid","publicgis_url","jurisdiction_id","county_name","state","apn"],"properties":{"parcel_uid":{"$ref":"#/components/schemas/ParcelUid"},"publicgis_url":{"type":"string","format":"uri"},"jurisdiction_id":{"type":"string","pattern":"^county:[0-9]{5}$"},"county_name":{"type":"string"},"state":{"type":["string","null"]},"apn":{"type":"string"},"acres_reported":{"$ref":"#/components/schemas/Value"},"acres_mapped":{"$ref":"#/components/schemas/Value"},"land_use_class":{"$ref":"#/components/schemas/Value"},"land_use_class_2":{"$ref":"#/components/schemas/Value"},"land_use_class_3":{"$ref":"#/components/schemas/Value"},"situs_address":{"$ref":"#/components/schemas/Value"},"situs_city":{"$ref":"#/components/schemas/Value"},"situs_zip":{"$ref":"#/components/schemas/Value"},"center":{"$ref":"#/components/schemas/Geometry"}},"additionalProperties":false},"AreaResult":{"type":"object","required":["count","parcels","next_cursor"],"properties":{"count":{"type":"integer","minimum":0,"description":"Parcels matching the whole query"},"parcels":{"type":"array","maxItems":50,"items":{"$ref":"#/components/schemas/AreaParcel"}},"next_cursor":{"type":["string","null"]}},"additionalProperties":false},"AreaEnvelope":{"allOf":[{"$ref":"#/components/schemas/Envelope"},{"properties":{"data":{"$ref":"#/components/schemas/AreaResult"}}}]},"CountyCoverage":{"type":"object","required":["jurisdiction_id","county_name","state","web_covered","api_cleared","source","as_of"],"properties":{"jurisdiction_id":{"type":"string","pattern":"^county:[0-9]{5}$"},"county_name":{"type":"string"},"state":{"type":["string","null"]},"web_covered":{"type":"boolean"},"api_cleared":{"description":"The county's parcel source is licensed open or public_record, so the API serves it","type":"boolean"},"source":{"oneOf":[{"$ref":"#/components/schemas/Source"},{"type":"null"}]},"as_of":{"$ref":"#/components/schemas/Instant"}},"additionalProperties":false},"AreaCoverage":{"type":"object","required":["jurisdiction_id","name","web_covered","api_cleared","counties","as_of"],"properties":{"jurisdiction_id":{"type":"string","pattern":"^(state|county|place|cousub):[0-9]+$"},"name":{"type":"string"},"web_covered":{"type":"boolean"},"api_cleared":{"type":"boolean"},"counties":{"type":"array","items":{"$ref":"#/components/schemas/CountyCoverage"}},"as_of":{"$ref":"#/components/schemas/Instant"}},"additionalProperties":false},"ServedCoverage":{"type":"object","required":["count","counties"],"properties":{"state":{"type":["string","null"]},"count":{"type":"integer","minimum":0},"counties":{"type":"array","items":{"$ref":"#/components/schemas/CountyCoverage"}}},"additionalProperties":false},"CoverageEnvelope":{"allOf":[{"$ref":"#/components/schemas/Envelope"},{"properties":{"data":{"oneOf":[{"$ref":"#/components/schemas/ServedCoverage"},{"$ref":"#/components/schemas/CountyCoverage"},{"$ref":"#/components/schemas/AreaCoverage"}]}}}]},"Problem":{"description":"RFC 9457. type is one of https://www.publicgis.com/problems/ invalid-request, invalid-key, not-found, no-match, license-not-cleared, method-not-allowed, rate-limited, not-yet-open, unavailable, server-error.","type":"object","required":["type","title","status","request_id"],"properties":{"type":{"type":"string","enum":["https://www.publicgis.com/problems/invalid-request","https://www.publicgis.com/problems/invalid-key","https://www.publicgis.com/problems/not-found","https://www.publicgis.com/problems/no-match","https://www.publicgis.com/problems/license-not-cleared","https://www.publicgis.com/problems/method-not-allowed","https://www.publicgis.com/problems/rate-limited","https://www.publicgis.com/problems/not-yet-open","https://www.publicgis.com/problems/unavailable","https://www.publicgis.com/problems/server-error"]},"title":{"type":"string"},"status":{"type":"integer","minimum":400,"maximum":599},"detail":{"type":"string"},"instance":{"type":"string"},"request_id":{"type":"string"},"coverage":{"oneOf":[{"$ref":"#/components/schemas/CountyCoverage"},{"type":"null"}]}},"additionalProperties":false}}}}