API reference

All routes are under https://api.korzy.co and need an API key with api:read. Parameters are query-string parameters unless noted. Costs are explained in Credits.

Discovery

Start here. Discovery routes are free and describe what each dataset covers, how fresh it is and how to query it.

GET/api/query/catalogFree

Datasets, geographic coverage, source dates, layer keys and query limits.

ParameterTypeDescription
datasetstringReturn a single dataset, for example parcels or logistics.
viewstringfull (default) or overview for a compact summary.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'view=overview' \
  https://api.korzy.co/api/query/catalog
Example response (abbreviated)
{
  "datasets": {
    "parcels": {
      "available": true,
      "records": 160000000,
      "note": "Counts are source parcel records, including overlapping condo records, not unique land footprints. M …"
    },
    "datacenters": {
      "available": true,
      "capacity_note": "Reported claims; no national capacity total or child-building sum",
      "mapped_count": 3000,
      "project_count": 3000,
      "unmapped_count": 21,
      "run_id": "20261102T123021962884Z",
      "published_at": "2026-11-02T12:30:21.962884+00:00"
    }
  },
  "catalog_view": "overview",
  "limits": {
    "area_and_list_queries": false,
    "page_size": 100,
    "max_offset": 1000,
    "context_radius_km": {
      "environment": 10,
      "datacenters": 10,
      "logistics": 25
    },
    "analysis_timeout_seconds": 20
  },
  "map_limits": {
    "applies_to": "the Korzy map only",
    "parcel_bbox_span_degrees": 0.5,
    "infrastructure_bbox_span_degrees": 5,
    "page_size": 100,
    "max_offset": 10000
  },
  "note": "Geometry intersection or proximity does not establish a utility connection, service eligibility, or …"
}
GET/api/summaryFree

Parcel record counts and field coverage by state.

GET/api/creditsFree

Data sources and the attribution each one requires.

Parcels

Nationwide parcel records with situs address, land use, building, value and sale fields where the source publishes them. Parcel IDs (korzy_id) look like 37183-676db8ae68362b7a3685; treat them as opaque strings. Owner fields are left out unless you pass include_owner=true, which doubles the request’s cost.

GET/api/query/point1 credit per 10 records requested; doubled with include_owner

Parcels whose boundary covers a point. Overlapping records, such as condominium units, are all returned.

ParameterTypeDescription
longitude (required)numberLongitude, −180 to 180.
latitude (required)numberLatitude, −85 to 85.
limitintegerRecords per page, 1–100. Default 20.
offsetintegerRecords to skip, up to 1,000. Default 0.
include_ownerbooleantrue adds owner fields where the source publishes them and doubles the request’s cost. Default false: owner fields are left out.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'longitude=-78.6270' \
  --data-urlencode 'latitude=35.7999' \
  --data-urlencode 'limit=2' \
  https://api.korzy.co/api/query/point
Example response (abbreviated)
{
  "records": [
    {
      "korzy_id": "37183-676db8ae68362b7a3685",
      "bldgsqft": 2393,
      "countyname": "Wake",
      "latitude": 35.799881,
      "longitude": -78.627001,
      "parceladdr": "714 MORDECAI TOWNE PL",
      "parcelcity": "RALEIGH",
      "parcelid": "1714066205",
      "saleamt": 740000,
      "saledate": "2025-07-10",
      "statefp": "37",
      "taxacres": 0.03,
      "totalvalue": 662832,
      "updated": "2026-05-17",
      "usedesc": "R",
      "yearbuilt": 2009,
      "situs_zip": "27604",
      "legal_description": "LO4 MORDECAI TOWNS AT COURTLAND DRIVE BM2007 -01069",
      "land_use_code": "RHS",
      "alternate_parcel_number": "0364254",
      "building_count": 1,
      "land_value_usd": 135000,
      "improvement_value_usd": 527832,
      "last_sale_document": "Deed Book/Page 019954/02049",
      "geoid": "37183"
    }
  ],
  "limit": 2,
  "offset": 0,
  "truncated": false,
  "pagination_exhausted": false,
  "as_of": "2026-11-04",
  "spatial_relation": "full_geometry_covers_point",
  "note": "Counts are source parcel records, not unique land footprints. Missing attributes do not establish va …"
}
GET/api/parcel-record1 credit; 2 with include_owner

One parcel record by ID.

ParameterTypeDescription
korzy_id (required)stringParcel ID from a point, search or area result.
include_ownerbooleantrue adds owner fields where the source publishes them and doubles the request’s cost. Default false: owner fields are left out.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'korzy_id=37183-676db8ae68362b7a3685' \
  https://api.korzy.co/api/parcel-record
Example response · Default (abbreviated)
{
  "korzy_id": "37183-676db8ae68362b7a3685",
  "bldgsqft": 2393,
  "countyname": "Wake",
  "latitude": 35.799881,
  "longitude": -78.627001,
  "parceladdr": "714 MORDECAI TOWNE PL",
  "parcelcity": "RALEIGH",
  "parcelid": "1714066205",
  "saleamt": 740000,
  "saledate": "2025-07-10",
  "statefp": "37",
  "taxacres": 0.03,
  "totalvalue": 662832,
  "updated": "2026-05-17",
  "usedesc": "R",
  "yearbuilt": 2009,
  "situs_zip": "27604",
  "legal_description": "LO4 MORDECAI TOWNS AT COURTLAND DRIVE BM2007 -01069",
  "land_use_code": "RHS",
  "alternate_parcel_number": "0364254",
  "building_count": 1,
  "land_value_usd": 135000,
  "improvement_value_usd": 527832,
  "last_sale_document": "Deed Book/Page 019954/02049",
  "geoid": "37183"
}
Example response · With include_owner=true (abbreviated)
{
  "korzy_id": "37183-676db8ae68362b7a3685",
  "bldgsqft": 2393,
  "countyname": "Wake",
  "latitude": 35.799881,
  "longitude": -78.627001,
  "parceladdr": "714 MORDECAI TOWNE PL",
  "parcelcity": "RALEIGH",
  "parcelid": "1714066205",
  "saleamt": 740000,
  "saledate": "2025-07-10",
  "statefp": "37",
  "taxacres": 0.03,
  "totalvalue": 662832,
  "updated": "2026-05-17",
  "usedesc": "R",
  "yearbuilt": 2009,
  "situs_zip": "27604",
  "legal_description": "LO4 MORDECAI TOWNS AT COURTLAND DRIVE BM2007 -01069",
  "land_use_code": "RHS",
  "alternate_parcel_number": "0364254",
  "building_count": 1,
  "land_value_usd": 135000,
  "improvement_value_usd": 527832,
  "last_sale_document": "Deed Book/Page 019954/02049",
  "geoid": "37183",
  "owner_name": "EXAMPLE HOLDINGS LLC",
  "owner_mailing_address": "100 EXAMPLE ST, SAMPLE CITY, ST 00000"
}
GET/api/search1 credit; 2 with include_owner

Address search. Returns up to 15 candidates ranked by match quality, each with coordinates, the parcel ID where known, and match_type (exact, partial or approximate).

ParameterTypeDescription
q (required)stringAddress text, 3–160 characters, such as 714 Mordecai Towne Pl, Raleigh, NC. Including the state gives the most precise results.
include_ownerbooleantrue adds owner fields where the source publishes them and doubles the request’s cost. Default false: owner fields are left out.

House numbers must match exactly. Street names tolerate abbreviations, missing words and small typos.

curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'q=714 Mordecai Towne Pl, Raleigh, NC' \
  https://api.korzy.co/api/search
Example response (abbreviated)
{
  "results": [
    {
      "korzy_id": "37183-676db8ae68362b7a3685",
      "address": "714 MORDECAI TOWNE PL",
      "city": "RALEIGH",
      "postcode": "27604",
      "county": "Wake",
      "statefp": "37",
      "longitude": -78.627001,
      "latitude": 35.799881,
      "match_type": "exact",
      "bldgsqft": 2393,
      "countyname": "Wake",
      "parceladdr": "714 MORDECAI TOWNE PL",
      "parcelcity": "RALEIGH",
      "parcelid": "1714066205",
      "saleamt": 740000,
      "saledate": "2025-07-10",
      "taxacres": 0.03,
      "totalvalue": 662832,
      "updated": "2026-05-17",
      "usedesc": "R",
      "yearbuilt": 2009,
      "situs_zip": "27604",
      "legal_description": "LO4 MORDECAI TOWNS AT COURTLAND DRIVE BM2007 -01069",
      "land_use_code": "RHS",
      "alternate_parcel_number": "0364254",
      "building_count": 1,
      "land_value_usd": 135000,
      "improvement_value_usd": 527832,
      "last_sale_document": "Deed Book/Page 019954/02049",
      "geoid": "37183"
    }
  ],
  "truncated": false,
  "query_ms": 277,
  "cached": false
}

Parcel record fields

Parcel routes return these fields where the source publishes them. Any can be null. Records can also carry additional source and provenance fields; ignore fields you don't use.

FieldsDescription
korzy_idParcel ID.
parcelidThe jurisdiction’s parcel number.
statefpState FIPS code.
geoidCounty FIPS code.
countynameCounty name.
parceladdr, parcelcity, situs_state, situs_zipSitus (property) address.
municipality, subdivision, legal_descriptionJurisdiction details where published.
taxacresLot size (acreage).
land_use_code, usedescLand-use code and description.
zoning_code, zoning_descriptionZoning where published.
yearbuilt, bldgsqft, living_area_sqft, building_countBuilding facts.
totalvalue, land_value_usd, improvement_value_usd, assessed_value_usd, market_value_usd, taxable_value_usdValues in US dollars, as published.
tax_year, tax_amount_usdTax year and amount.
saledate, saleamt, last_sale_documentLast reported sale.
owner_name, owner_name_additional, owner_mailing_address, owner_typeOwner fields where the source publishes them. Returned only with `include_owner=true`.
longitude, latitudeA point on the parcel.
updatedDate the record was last updated.

Site context

What is near a point: utilities, environmental layers, transport and data-center projects.

GET/api/utilities/context1 credit

Water and sewer service-area matches at a point and nearby treatment plants.

ParameterTypeDescription
lon (required)numberLongitude, −180 to 180.
lat (required)numberLatitude, −85 to 85.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'lon=-78.6270' \
  --data-urlencode 'lat=35.7999' \
  https://api.korzy.co/api/utilities/context
Example response (abbreviated)
{
  "longitude": -78.627,
  "latitude": 35.7999,
  "matches": {
    "water": [
      {
        "feature_id": "water:29943",
        "name": "RALEIGH, CITY OF",
        "boundary_basis": "System Sourced"
      }
    ],
    "sewer": [
      {
        "feature_id": "sewer:2161",
        "name": "NEUSE RIVER RESOURCE RECOVERY FACILITY",
        "boundary_basis": "Sourced"
      }
    ]
  },
  "nearby_treatment": [
    {
      "feature_id": "treatment:7989",
      "name": "NORTH CARY WWTP",
      "distance_km": 14.09036
    },
    {
      "feature_id": "treatment:15459",
      "name": "Smith Creek Resource Recovery Facility",
      "distance_km": 14.649621
    }
  ],
  "truncated": {
    "water": false,
    "sewer": false
  },
  "run_id": "7977b144-cf55-4137-84d8-eb3eac66d5a5",
  "datasets": {
    "water": {
      "boundary_counts": {
        "Modeled": 19240,
        "System Sourced": 25375
      },
      "coverage": "US community water systems",
      "mapped": 45000,
      "note": "Sourced and Korzy-modeled service areas. A boundary match does not confirm a parcel connection or av …",
      "rows": 45000,
      "status_counts": {
        "Unknown": 45000
      },
      "title": "Water service areas",
      "unmapped": 0
    }
  }
}
GET/api/environment/context1 credit per 10 records requested

Mapped environmental layers at a point, such as flood zones, wetlands and protected areas, and nearby cleanup sites.

ParameterTypeDescription
lon (required)numberLongitude, −180 to 180.
lat (required)numberLatitude, −90 to 90.
radius_kmnumberSearch radius, up to 10 (10 km). Default 10.
limitintegerNearby records per layer, 1–20. Default 5.
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'lon=-78.6270' \
  --data-urlencode 'lat=35.7999' \
  --data-urlencode 'limit=2' \
  https://api.korzy.co/api/environment/context
Example response (abbreviated)
{
  "longitude": -78.627,
  "latitude": 35.7999,
  "radius_km": 10,
  "limit": 2,
  "matches": {
    "air_quality_areas": [
      {
        "feature_id": "air_quality_areas:0:103",
        "name": "Raleigh-Durham-Chapel Hill Area · Ozone 8-hr (1997 standard) · NC",
        "status": "Maintenance",
        "state": "NC",
        "category": "Ozone 8-hr (1997 standard)",
        "geometry_kind": "area"
      },
      {
        "feature_id": "air_quality_areas:10:64",
        "name": "Raleigh-Durham Area · Ozone 1-hr (1979 standard-revoked) · NC",
        "status": "Maintenance (NAAQS revoked)",
        "state": "NC",
        "category": "Ozone 1-hr (1979 standard-revoked)",
        "geometry_kind": "area"
      }
    ]
  },
  "nearby": {
    "superfund_npl": [
      {
        "feature_id": "superfund_npl:records:266",
        "name": "North Carolina State University (Lot 86, Farm Unit #1)",
        "status": "NPL Site",
        "state": "North Carolina",
        "city": "Raleigh",
        "category": "Superfund NPL sites",
        "distance_km": 7.811862,
        "geometry_kind": "point"
      }
    ],
    "brownfields": [
      {
        "feature_id": "brownfields:records:11457",
        "name": "PROPERTY 25",
        "state": "NC",
        "city": "RALEIGH",
        "category": "Brownfields",
        "distance_km": 2.167752,
        "geometry_kind": "point"
      },
      {
        "feature_id": "brownfields:records:4939",
        "name": "702 706 E MARTIN STREET",
        "state": "NC",
        "city": "RALEIGH",
        "category": "Brownfields",
        "distance_km": 2.599652,
        "geometry_kind": "point"
      }
    ]
  },
  "truncated": {
    "superfund_sites": false,
    "superfund_npl": false
  },
  "note": "Screening at the supplied reference point, not a full parcel overlap analysis. Area and line matches …",
  "datasets": {
    "superfund_sites": {
      "available": true,
      "coverage": "United States and source-covered territories",
      "geometry_kind": "area",
      "geometry_repaired": 48,
      "mapped": 2100,
      "note": "Korzy source boundary features, including NPL and non-NPL sites. A site can have multiple features. …",
      "rows": 2100,
      "title": "Superfund site boundaries",
      "unmapped": 0,
      "total": 2100
    }
  },
  "run_id": "20261101T123020425601Z",
  "published_at": "2026-11-01T14:23:23.307140+00:00"
}
GET/api/logistics/context1 credit per 10 records requested

Nearby ports, rail, roads, airports, warehouses and other transport features.

ParameterTypeDescription
lon (required)numberLongitude, −180 to 180.
lat (required)numberLatitude, −85 to 85.
radius_kmnumberSearch radius, up to 25 (25 km). Default 25.
limitintegerRecords per layer, 1–20. Default 5.
layersstringComma-separated layer keys from the catalog.
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'lon=-78.6270' \
  --data-urlencode 'lat=35.7999' \
  --data-urlencode 'limit=2' \
  https://api.korzy.co/api/logistics/context
Example response (abbreviated)
{
  "longitude": -78.627,
  "latitude": 35.7999,
  "radius_km": 25,
  "limit": 2,
  "nearby": {
    "rail_lines": [
      {
        "feature_id": "rail_lines:records:155115",
        "name": "ABERDEEN",
        "status": "M",
        "state": "NC",
        "category": "M",
        "boundary_basis": "Published source feature",
        "source_date": "2026-07-21",
        "country": "US",
        "railroad_parties": "CSXT",
        "intersects": false,
        "distance_km": 0.151224,
        "geometry_kind": "line"
      },
      {
        "feature_id": "rail_lines:records:155112",
        "name": "Rail lines 486208",
        "status": "O",
        "state": "NC",
        "category": "O",
        "boundary_basis": "Published source feature",
        "source_date": "2026-07-21",
        "country": "US",
        "railroad_parties": "CSXT",
        "intersects": false,
        "distance_km": 0.165497,
        "geometry_kind": "line"
      }
    ],
    "rail_crossings": [
      {
        "feature_id": "rail_crossings:records:149086",
        "name": "CAPITAL BOULEVARD",
        "operator": "NORTH CAROLINA",
        "state": "NC",
        "city": "RALEIGH",
        "category": "Public",
        "boundary_basis": "Published source feature",
        "source_date": "2026-07-21",
        "country": "US",
        "crossing_position": "RR Over",
        "intersects": false,
        "distance_km": 0.209353,
        "geometry_kind": "point"
      },
      {
        "feature_id": "rail_crossings:records:146553",
        "name": "RALEIGH YARD",
        "operator": "CSX Transportation",
        "state": "NC",
        "city": "RALEIGH",
        "category": "Private",
        "boundary_basis": "Published source feature",
        "source_date": "2026-07-21",
        "country": "US",
        "crossing_position": "At Grade",
        "intersects": false,
        "distance_km": 0.381042,
        "geometry_kind": "point"
      }
    ]
  },
  "truncated": {
    "rail_lines": true,
    "rail_crossings": true
  },
  "candidate_limited": {
    "rail_lines": false,
    "rail_crossings": false
  },
  "candidates_examined": {
    "rail_lines": 321,
    "rail_crossings": 354
  },
  "candidate_limit": 1000,
  "note": "Screening near the supplied reference point, not a parcel access assessment. Distances are approxima …",
  "datasets": {
    "rail_lines": {
      "available": true,
      "coverage": "United States, Canada and Mexico",
      "geometry_kind": "line",
      "geometry_repaired": 0,
      "mapped": 300000,
      "rows": 300000,
      "source_date": "2026-07-21",
      "title": "Rail lines",
      "unmapped": 0,
      "minzoom": 6,
      "total": 300000
    }
  },
  "run_id": "20261104T143724536187Z",
  "published_at": "2026-11-04T18:35:57.184682+00:00"
}
GET/api/datacenters/context1 credit per 10 records requested

Data-center projects near a point.

ParameterTypeDescription
lon (required)numberLongitude, −180 to 180.
lat (required)numberLatitude, −85 to 85.
radius_kmnumberSearch radius, up to 10 (10 km). Default 10.
limitinteger1–100. Default 5.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'lon=-77.4874' \
  --data-urlencode 'lat=39.0438' \
  --data-urlencode 'limit=1' \
  https://api.korzy.co/api/datacenters/context
Example response (abbreviated)
{
  "projects": [
    {
      "project_id": "dc_1aac762b0a7956be5cdb",
      "name": "Equinix Ashburn Campus (DC1–DC15)",
      "operator": "Equinix",
      "status": "operating",
      "state": "VA",
      "city": "Ashburn",
      "longitude": -77.4875,
      "latitude": 39.0437,
      "location_precision": "exact",
      "operational_mw": 500,
      "source_count": 1,
      "source_date": "2026-09-14",
      "mapped": true,
      "distance_km": 0.014079
    }
  ],
  "radius_km": 10,
  "limit": 1,
  "truncated": true,
  "note": "Straight-line distance to the reported project point; inspect location_precision. Projects merge sup …",
  "run_id": "20261102T123021962884Z",
  "published_at": "2026-11-02T12:30:21.962884+00:00"
}

Infrastructure and utilities

Power, water, gas, fiber and other infrastructure layers. Coverage varies by layer; check the catalog first.

GET/api/utilities/{layer}/record1 credit

One water, sewer, treatment, gas or fiber record with standardized attributes.

ParameterTypeDescription
feature_id (required)stringID returned by the matching search or inventory.
GET/api/utilities/summaryFree

Utility layers, coverage and source dates.

GET/api/power/plants/{plant_id}1 credit

A power plant and its generators.

GET/api/transmission/summaryFree

Transmission coverage and source dates.

GET/api/poi/categoriesFree

Point-of-interest categories you can browse.

GET/api/poi/{category}/{record_id}1 credit

One point-of-interest record.

ParameterTypeDescription
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.

Grid capacity

Utility-published substation, bank and feeder load capacity, and regional transfer capacity.

GET/api/grid/capacity/summaryFree

Capacity source keys, dates, coverage and status.

GET/api/grid/capacity/{source}/record1 credit

One capacity record with dated observations, geometry and provenance.

ParameterTypeDescription
feature_id (required)stringID returned by the matching search or inventory.
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'feature_id=collection_b8384943f25433ffd6b6:1' \
  https://api.korzy.co/api/grid/capacity/{source}/record
Example response (abbreviated)
{
  "record": {
    "feature_id": "collection_b8384943f25433ffd6b6:1",
    "utility": "coned",
    "data_kind": "equipment_capacity",
    "scope": "substation_or_bank",
    "season": "unspecified",
    "phase": "unspecified",
    "scenario": "published",
    "coverage": "Con Edison electric territory, NYC and Westchester",
    "substation": "HARRISON",
    "qualifications": "Source combines substation/bank scope and repeats values on feeder geometry. Seasonal capacity is re …",
    "geometry_repaired": false,
    "observations": [
      {
        "metric": "rating",
        "scenario": "published",
        "scope": "substation_or_bank",
        "season": "unspecified",
        "unit": "MW",
        "value": 262
      },
      {
        "metric": "peak_load",
        "scenario": "published",
        "scope": "substation_or_bank",
        "season": "unspecified",
        "unit": "MW",
        "value": 202
      }
    ],
    "geometry": {
      "type": "LineString",
      "coordinates": [
        [
          -73.738842,
          40.944218
        ],
        [
          -73.739136,
          40.944035
        ]
      ]
    }
  },
  "source_status": {
    "available": true,
    "coverage": "Con Edison electric territory, NYC and Westchester",
    "data_kind": "equipment_capacity",
    "dated_rows": 0,
    "geometry_kind": "line",
    "geometry_repaired": 0,
    "mapped": 83000,
    "note": "Utility screening estimates, not reserved power or confirmed parcel service. Shared feeder, bank and …",
    "phase": "unspecified",
    "rows": 83000,
    "scenario": "published",
    "scope": "substation_or_bank",
    "season": "unspecified",
    "source_date_range": [
      null,
      null
    ],
    "stale": false,
    "status": "fresh",
    "title": "Equipment Capacity · Unspecified",
    "unmapped": 0,
    "utility": "coned"
  },
  "run_id": "20261101T110021240424Z-ae344efa",
  "published_at": "2026-11-01T12:56:03.415934+00:00"
}
GET/api/grid/transfers1 credit

Total and available transfer capability for a regional interface, in MW.

ParameterTypeDescription
interface (required)stringInterface name from the catalog.
date (required)stringDate as YYYY-MM-DD.
marketstringDAM (default) or another published market.
GET/api/grid/summaryFree

Grid datasets, interfaces and dates.

Energy

Generation, fuel, emissions, prices and project pipelines from public energy reporting.

GET/api/energy/summaryFree

Energy datasets, regions and dates.

GET/api/energy/plants/{plant_id}1 credit per 10 records requested

Generation and fuel observations, outages and generator inventory for one plant.

ParameterTypeDescription
datasetstringLimit to one dataset key.
limitintegerRecords per page, 1–500. Default 500.
offsetintegerRecords to skip, up to 100,000. Default 0.
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
GET/api/energy/regions/{region}1 credit per 10 records requested

State prices, energy and emissions, or hourly demand and fuel mix for a balancing area.

ParameterTypeDescription
datasetstringDataset key.
metricstringMetric key.
limitintegerRecords per page, 1–500. Default 500.
offsetintegerRecords to skip, up to 100,000. Default 0.
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
GET/api/energy/infrastructure/summaryFree

Oil, gas and coal infrastructure layers.

GET/api/energy/infrastructure/{layer}/record1 credit

One oil, gas or coal facility or route.

ParameterTypeDescription
feature_id (required)stringID returned by the matching search or inventory.
GET/api/energy/coal-mines/{mine_id}/shipments1 credit per 10 records requested

Reported coal receipts linking a mine to power plants.

ParameterTypeDescription
limitintegerRecords per page, 1–500. Default 100.
offsetintegerRecords to skip, up to 100,000. Default 0.
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
GET/api/electric-registry/summaryFree

Registry tables and dates.

GET/api/logistics/summaryFree

Logistics layers and freight regions.

Data centers

Data-center projects merged across sources, with operators, statuses, dated capacity evidence and timelines.

GET/api/datacenters/summaryFree

Sources, coverage and facets.

GET/api/datacenters/projects/{project_id}1 credit

One project with observations, capacity evidence and timeline. URL-encode the ID.

ParameterTypeDescription
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
Example response (abbreviated)
{
  "project": {
    "footprints": {
      "type": "FeatureCollection"
    },
    "timeline": [
      {
        "date": "2026-08-26",
        "note": "Fredericksburg City Council voted 7–0 early on August 26, 2026 to deny the rezoning and 7–0 to deny …",
        "status": "cancelled"
      }
    ],
    "project_id": "dc_2e3924f6cdc656909e31",
    "name": "1500 Gateway Data Center (denied)",
    "operator": "1500 Gateway LLC (Penzance)",
    "status": "cancelled",
    "state": "VA",
    "city": "Fredericksburg",
    "address": "1500 Gateway Boulevard",
    "longitude": -77.509,
    "latitude": 38.301,
    "location_precision": "approximate",
    "source_count": 1,
    "source_date": "2026-09-21",
    "mapped": true
  },
  "requested_project_id": "dc_2e3924f6cdc656909e31",
  "run_id": "20261102T123021962884Z",
  "published_at": "2026-11-02T12:30:21.962884+00:00"
}

Property records

Property address, sale and assessment observations published by individual jurisdictions, looked up by record ID. Records use their own IDs, separate from parcel IDs. Owner and mailing fields are left out unless you pass include_owner=true, which doubles the request’s cost.

GET/api/site-control/summaryFree

Source keys, jurisdictions and snapshot dates.

GET/api/site-control/record/{source}/{feature_id}1 credit; 2 with include_owner

One record with its captured history.

ParameterTypeDescription
run_idstringSnapshot ID from the first page. Required on later pages so every page comes from the same data version.
include_ownerbooleantrue adds owner fields where the source publishes them and doubles the request’s cost. Default false: owner fields are left out.
Example response · Default (abbreviated)
{
  "record": {
    "feature_id": "0",
    "state": "AK",
    "county_fips": "02170",
    "jurisdiction": "02170",
    "record_kind": "parcel",
    "parcel_id": "225515",
    "identity_quality": "jurisdiction_parcel",
    "observed_at": "2026-10-13T15:54:51.414026+00:00"
  },
  "dataset": {
    "mapped": 110000,
    "observed_at": "2026-10-13T15:54:51.414026+00:00",
    "rows": 110000,
    "scope": "Matanuska-Susitna Borough",
    "snapshots": 1,
    "state": "AK",
    "title": "Cadastral Parcels"
  },
  "history": [
    {
      "observed_at": "2026-10-13T15:54:51.414026+00:00"
    }
  ],
  "history_truncated": false,
  "run_id": "5cfa92ece2a0332d3ac81d9db541fd45e4fbd54e5a5e044945909850b6f53d41",
  "availability": "Unknown",
  "history_note": "Captured source observations; not a chain of title. Records are linked only by a unique parcel ident …"
}

Terrain

Elevation and slope.

GET/api/terrain/metadataFree

Terrain source resolution, units, coverage and limits.

POST/api/terrain/profile1 credit

Elevation profile along a line.

Send a JSON body with the line’s coordinates; see the metadata route for limits.

Error responses

Errors return JSON with a detail message. Status codes are listed under Errors.

404 · Unknown record (abbreviated)
{
  "detail": "Parcel record not found"
}
422 · Invalid parameter (abbreviated)
{
  "detail": "Invalid request; check parameters"
}
429 · Rate limit reached (Retry-After: 60) (abbreviated)
{
  "detail": "Request limit reached"
}
429 · Monthly credits used up (abbreviated)
{
  "detail": "Monthly credits used up",
  "account_url": "https://app.korzy.co/account",
  "resets_at": "2026-12-01T00:00:00+00:00"
}