Lexington County, SC parcel and infrastructure data API

Korzy has about 150,000 parcel records for Lexington County, South Carolina, with source updates through October 2026. Nearly every record carries owner names, values, last sale, land use, year built and building size. In and around the county the API also maps about 10 power plants with about 710 MW of capacity, led by natural gas; and about 100 miles of active rail. Look up any parcel by address or coordinates, then check water, sewer and infrastructure context at the same point.

Parcel coverage in Lexington County

About 150,000 parcel records with boundaries, situs addresses and parcel numbers, with the latest source update from October 2026. Each record has a stable korzy_id you can store and look up again with /api/parcel-record. Share of records with each field:

FieldCoverageShare
Situs addressNearly all · 100%
Owner nameNearly all · 99%
Assessed or market valueNearly all · 99%
Year builtNearly all · 99%
Building sizeNearly all · 99%
Last saleNearly all · 99%
Land useNearly all · 99%
ZoningMany · 63%

Owner name and mailing address are returned with include_owner=true, which doubles a request's cost: a parcel record costs 2 credits instead of 1. 99% of Lexington County records carry an owner name.

Infrastructure in and around Lexington County

Power plants

About 10 operable plants with about 710 MW of nameplate capacity; largest by capacity: natural gas, solar, hydro.

Plant details: /api/power/plants/{plant_id}

Substations and transmission

About 85 in-service substations, 7 rated 230 kV or higher.

About 460 miles of transmission lines: about 35 mi at under 100 kV; about 330 mi at 100–161 kV; about 65 mi at 220–287 kV.

Water and sewer service

Service areas of about 75 community water systems cover about 29% of the county.

Sewer service areas of 5 systems cover about 37%.

At a point: /api/utilities/context

Flood zones and wetlands

Special flood hazard areas cover about 13% of the county on the current federal flood maps, published October 2026.

Mapped wetlands cover about 4%.

Rail, ports and freight

  • About 100 miles of active rail, about 80 of it main line
  • About 50 miles of national freight network highway

Within 25 km of a point: /api/logistics/context

Example requests for Lexington County

Real responses from the production API, trimmed to the main fields. Every request needs an API key with api:read; see authentication and credits and limits.

1. Find a parcel by address

/api/search matches 130 CEDARCREST DRIVE, LEXINGTON, SC and returns the parcel's korzy_id, coordinates and record. 1 credit.

curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'q=130 CEDARCREST DRIVE, LEXINGTON, SC' \
  https://api.korzy.co/api/search
Python
import os
import requests

response = requests.get(
    "https://api.korzy.co/api/search",
    params={"q": "130 CEDARCREST DRIVE, LEXINGTON, SC"},
    headers={"Authorization": f"Bearer {os.environ['KORZY_API_KEY']}"},
    timeout=30,
)
response.raise_for_status()
parcel = response.json()["results"][0]
print(parcel["korzy_id"], parcel["longitude"], parcel["latitude"])
Response (trimmed)
{
  "results": [
    {
      "korzy_id": "45063-5246b155681231343772",
      "address": "130 CEDARCREST DRIVE",
      "city": "LEXINGTON",
      "postcode": "29072",
      "county": "Lexington",
      "statefp": "45",
      "longitude": -81.21738782638889,
      "latitude": 33.97349485,
      "match_type": "exact",
      "parcelid": "005497-01-006",
      "parceladdr": "130 CEDARCREST DRIVE",
      "parcelcity": "LEXINGTON",
      "situs_zip": "29072",
      "usedesc": "GENERAL COMMERCIAL - UNIMPROVED",
      "land_use_code": "0003",
      "zoning_code": "ID",
      "yearbuilt": 0,
      "bldgsqft": 0,
      "building_count": 0,
      "taxacres": 1.4,
      "totalvalue": 18660,
      "land_value_usd": 18660,
      "improvement_value_usd": 0,
      "assessed_value_usd": 18660,
      "market_value_usd": 311000,
      "saledate": "2013-09-16",
      "saleamt": 450000,
      "updated": "2026-01-01",
      "geoid": "45063"
    }
  ],
  "truncated": false
}

With include_owner=true (2 credits) the record adds owner fields, shown here as placeholders:

{
  "owner_name": "EXAMPLE HOLDINGS LLC",
  "owner_mailing_address": "100 EXAMPLE ST, SAMPLE CITY, ST 00000"
}

2. Look up the parcel at a point

/api/query/point returns every parcel whose boundary covers the coordinates; here it returns the same record, 45063-5246b155681231343772, in records. 1 credit per 10 records requested.

curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'longitude=-81.217388' \
  --data-urlencode 'latitude=33.973495' \
  --data-urlencode 'limit=5' \
  https://api.korzy.co/api/query/point
JavaScript
const params = new URLSearchParams({"longitude": "-81.217388", "latitude": "33.973495", "limit": "5"});
const response = await fetch(`https://api.korzy.co/api/query/point?${params}`, {
  headers: { Authorization: `Bearer ${process.env.KORZY_API_KEY}` },
});
if (!response.ok) throw new Error(`Korzy API ${response.status}`);
const { records } = await response.json();
console.log(records.map((record) => record.korzy_id));

3. Check water and sewer service

/api/utilities/context returns the water and sewer service areas at the point and the nearest treatment plants. 1 credit.

curl --fail-with-body -sS --get \
  -H "Authorization: Bearer $KORZY_API_KEY" \
  --data-urlencode 'longitude=-81.217388' \
  --data-urlencode 'latitude=33.973495' \
  https://api.korzy.co/api/utilities/context
Python
import os
import requests

response = requests.get(
    "https://api.korzy.co/api/utilities/context",
    params={"longitude": "-81.217388", "latitude": "33.973495"},
    headers={"Authorization": f"Bearer {os.environ['KORZY_API_KEY']}"},
    timeout=30,
)
response.raise_for_status()
matches = response.json()["matches"]
print([area["name"] for area in matches["water"]])
Response (trimmed)
{
  "longitude": -81.217388,
  "latitude": 33.973495,
  "matches": {
    "water": [
      {
        "feature_id": "water:44484",
        "name": "LEXINGTON TOWN OF (3210001)",
        "boundary_basis": "System Sourced"
      }
    ],
    "sewer": [
      {
        "feature_id": "sewer:16984",
        "name": "CAYCE WWTP",
        "boundary_basis": "Modeled"
      }
    ]
  },
  "nearby_treatment": [
    {
      "feature_id": "treatment:15989",
      "name": "CAYCE WWTP",
      "distance_km": 17.88573890687898
    },
    {
      "feature_id": "treatment:8018",
      "name": "METRO WWTP",
      "distance_km": 18.831157479313763
    }
  ]
}

Lexington County data questions

How many parcels in Lexington County include year built?
About 150,000 of about 150,000 parcel records (99%) include year built.
Does the Korzy API return owner names for Lexington County parcels?
Yes. 99% of Lexington County parcel records carry an owner name. Add include_owner=true to a point, search or parcel-record request; it doubles the request's cost, so a single parcel record costs 2 credits.
How much power generation is in Lexington County?
About 10 operable power plants in Lexington County total about 710 MW of nameplate capacity, mainly natural gas, solar and hydro.
Which water systems serve Lexington County?
Service areas of about 75 community water systems cover about 29% of Lexington County, and sewer service areas cover about 37%. /api/utilities/context returns the water and sewer matches at a point.
How much of Lexington County is in a mapped flood zone?
About 13% of Lexington County's area falls within special flood hazard areas on the current federal flood maps, and mapped wetlands cover about 4%.

More featured counties

All featured South Carolina counties

Build on Lexington County parcel data

Search, point and record lookups work the same in every county Korzy covers. Credits are shared across parcels, utilities, environment, logistics and data-center routes.