API Documentation

TerraCore
Location Intelligence API

Enrich any US coordinate, address, ZIP code, or GEOID with structured demographic, economic, and location intelligence signals — including accessibility, amenity proximity, and percentile-ranked composite indices — at census block group resolution.

Base URL https://api.airelit.com/v1/terracore
Coverage United States
Data Refresh Monthly
Data Sources: TerraCore integrates national demographic data, geospatial infrastructure datasets, and proprietary enrichment models. Public source datasets update on independent schedules; TerraCore performs rolling monthly refreshes.

Introduction

TerraCore resolves any supported US location — coordinate, address, ZIP code, or GEOID — to census block group resolution and returns structured, analysis-ready neighborhood intelligence.

Responses combine demographic context, economic indicators, composite percentile-ranked indices, and location intelligence metrics such as accessibility and amenity proximity — delivered in a consistent, flattened JSON format.

Applications can request only the field groups they need, enabling high-resolution neighborhood context for use cases including site selection, market analysis, logistics planning, risk modeling, real estate evaluation, and location-based segmentation.

All endpoints accept a fields parameter to control which field groups are returned. Field groups span core metrics (population, income, housing, employment, education), composite indices, and TerraCore Location Intelligence Metrics such as walkability, retail density, grocery access, transit access, recreation, and healthcare proximity.

Data freshness: TerraCore performs rolling monthly refreshes (typically Saturday overnight US time). Public source datasets update on independent schedules (for example, ACS demographic releases occur annually), and TerraCore incorporates new releases as they become available.

Key Capabilities

Lookup TypeInputResolution
Coordinate lookupLatitude & longitudeCensus block group (spatial containment)
ZIP code lookup5-digit ZIPPopulation-weighted aggregate of intersecting block groups
GEOID lookup12-digit Census GEOIDExact census block group
Address lookupFree-form address stringGeocoded → block group

Authentication

All requests require an API key passed in the X-API-Key header. API keys are available through your Airelit account dashboard or via RapidAPI.

Request header
X-API-Key: YOUR_API_KEY
Content-Type: application/json
RapidAPI users: Authentication headers are handled automatically by the RapidAPI gateway.

Base URL & Format

All TerraCore endpoints use POST with a JSON request body.

Base URL
https://api.airelit.com/v1/terracore
EndpointPath
By Coordinates/v1/terracore/coordinates
By ZIP Code/v1/terracore/zipcode
By GEOID/v1/terracore/geoid
By Address/v1/terracore/address

Code Examples

Ready-to-run TerraCore API examples are available on GitHub. The repository includes complete request examples for:

  • Node.js
  • Python
  • curl

Each example demonstrates authenticated POST requests for all TerraCore endpoints, including address, coordinates, ZIP code, and GEOID lookups.

View Examples on GitHub
Quick Example
curl -X POST https://api.airelit.com/v1/terracore/address \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"address":"10700 Escondido Canyon Rd, Agua Dulce, CA 91390", "fields": ["summary", "income"]}'

The GitHub repository includes runnable scripts for each endpoint and language.

Field Groups

The fields parameter accepts an array of field group names. Only the requested groups are returned, keeping responses efficient and predictable. If omitted, only the summary group is returned.

Field groups represent logical categories of related metrics. The exact fields returned may differ depending on the spatial level queried. Block Group endpoints return detailed census variables, while ZIP code endpoints return aggregated versions of those metrics along with additional ZIP-exclusive environment and amenity fields.

See the Field Reference section for the complete list of fields returned for each group and endpoint type.

Field groups are organized into four categories: Core Metrics, Composite Indices, Location Intelligence Metrics, and ZIP-Exclusive Fields.

Request example
{
  "lat": 32.7767,
  "lon": -96.7970,
  "fields": ["summary", "income", "indices", "walkability"]
}

Pass ["all"] to request every field group permitted by your subscription tier.

Core Metrics
summary Free
Core geographic metadata including identifiers, population totals, density metrics, and location attributes.
demographics Basic
Population structure by sex and age groups including working-age, youth, and senior population distributions with associated percentages.
race Basic
Population distribution by race and ethnicity along with a diversity index measuring demographic heterogeneity.
income Basic
Household income metrics including median income, per-capita income, poverty indicators, and income distribution across income brackets.
education Basic
Educational attainment levels and derived education index measuring the concentration of higher education within the population.
employment Basic
Labor market indicators including employment levels, unemployment rates, and labor force participation.
housing Basic
Housing market characteristics including home values, rental costs, ownership rates, housing types, vacancy levels, and affordability indicators.
jurisdictions Basic
Political and civic jurisdiction data including timezone, congressional district, state legislative districts, and school district identifiers.
commute Pro
Commuting patterns including travel time and primary transportation methods such as driving, public transit, walking, and remote work.
internet Pro
Household internet access metrics including connectivity rates and internet adoption across the population.
insurance Pro
Health insurance coverage indicators including insured population totals and overall coverage rates.
raw_counts Pro
Detailed raw census counts used to derive income distribution and demographic percentages.
Not available for ZIP code lookups.
Composite Indices
indices Pro
Socioeconomic composite indices derived from demographic, housing, and economic indicators. Values are nationally percentile-ranked from 0–100, where higher values indicate stronger relative performance.
Location Intelligence Metrics
walkability Pro
Measures pedestrian accessibility using nearby amenities, transit access, and retail density indicators.
grocery_access Pro
Access to grocery stores including nearest distance and grocery availability within surrounding areas.
healthcare_access Pro
Accessibility to healthcare facilities including clinics and hospitals with distance and facility density indicators.
transit_access Pro
Public transportation availability including nearby transit stops and proximity to major transit stations.
retail Pro
Retail activity indicators including store density and commercial amenity concentration.
school_access Pro
Accessibility to educational facilities including school proximity and nearby school counts.
recreation Pro
Access to recreational amenities including parks, entertainment venues, and nearby recreational space.
community_access Pro
Community engagement indicators including religious institutions and community gathering places.
enrichment_meta Pro
Metadata describing enrichment quality including OSM feature density and data confidence indicators.
Location Intelligence Metrics (walkability, grocery_access, etc.) are only available for Block Group queries. ZIP code lookups return aggregated environment metrics in the ZIP-exclusive groups below.
ZIP-Exclusive Fields
zip_environment_scores Pro
Population-weighted averages of environment scores derived from contributing block groups.
ZIP queries only.
zip_poi_distances Pro
Population-weighted average distances to key amenities such as grocery stores, hospitals, parks, and transit stations.
ZIP queries only.
zip_amenity_counts Pro
Direct counts of amenities located within the ZIP boundary derived from OpenStreetMap feature data.
ZIP queries only.
zip_amenity_ratios Pro
Population-normalized amenity density metrics calculated from ZIP amenity counts and total population.
ZIP queries only.
zip_indices Pro
ZIP-level composite indices evaluating neighborhood livability and retail opportunity relative to national benchmarks.
National percentile-ranked composite indices. ZIP queries only.

By Coordinates

Enriches a latitude/longitude by resolving the point to its containing census block group and returning structured demographic and Location Intelligence data.

POST https://api.airelit.com/v1/terracore/coordinates
Performs spatial containment against census block group boundaries and returns a single matching block group record.

Request Parameters

ParameterTypeRequiredDescription
lat float required Latitude. Must be between -90 and 90. Must fall within US territorial bounds.
lon float required Longitude. Must be between -180 and 180. Must fall within US territorial bounds.
fields array optional Array of field group names to return. Defaults to ["summary"]. Pass ["all"] for all permitted groups.
{
  "lat": 32.7767,
  "lon": -96.7970,
  "fields": ["summary", "income"]
}
curl -X POST https://api.airelit.com/v1/terracore/coordinates \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lat": 32.7767, "lon": -96.7970, "fields": ["summary", "income"]}'
{
  "meta": {
    "geoid":           "481130201001",
    "state_abbr":      "TX",
    "state_name":      "Texas",
    "county_name":     "Dallas County",
    "dataset_version": "2026.03",
    "fields_returned": ["summary", "income"],
    "query_type":      "coordinates"
  },
  "data": {
    "total_population":           3842,
    "population_density":         4210.55,
    "median_age":                  34.2,
    "land_area_sq_miles":          0.9124,
    "latitude":                    32.7769,
    "longitude":                   -96.7965,
    "median_household_income":     68400,
    "per_capita_income":           31200,
    "aggregate_household_income":  82540000,
    "pct_below_poverty":           9.4,
    "pct_income_under_25k":        18.2,
    "pct_income_25k_to_50k":       24.1,
    "pct_income_50k_to_100k":      31.8,
    "pct_income_over_100k":        25.9
    // ... additional income bracket fields
  }
}

By ZIP Code

Returns ZIP-level demographic and Location Intelligence metrics aggregated across intersecting census block groups using population-weighted aggregation. ZIP code responses also include ZIP-exclusive fields — environment scores, raw amenity counts, per-capita ratios, and composite indices — not available at the Block Group level.

Resolution note: ZIP codes are postal regions and do not align perfectly with census geographies. Block group metrics are aggregated using population weighting. The contributing_block_groups field indicates how many block groups contributed to the result.
POST https://api.airelit.com/v1/terracore/zipcode
Returns pre-aggregated ZIP code metrics for approximately 33,000 US ZIP codes. This is the fastest lookup method.

Request Parameters

ParameterTypeRequiredDescription
zipcode string required 5-digit US ZIP code. Must be exactly 5 numeric digits (e.g. "75201", not "75201-1234").
fields array optional Array of field group names. Defaults to ["summary"].
{
  "zipcode": "75201",
  "fields": ["summary", "housing", "income"]
}
curl -X POST https://api.airelit.com/v1/terracore/zipcode \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"zipcode": "75201", "fields": ["summary", "housing", "income"]}'
{
  "meta": {
    "geoid":                    null,
    "zipcode":                   "75201",
    "state_abbr":                "TX",
    "state_name":                "Texas",
    "county_name":               null,
    "dataset_version":           "2026.03",
    "fields_returned":           ["summary", "housing", "income"],
    "query_type":                "zipcode",
    "contributing_block_groups": 14
  },
  "data": {
    "total_population":    12540,
    "population_density":  8840.20,
    "median_age":          31.8,
    "median_home_value":   385000,
    "median_gross_rent":   1640,
    "affordability_index": 0.72,
    "pct_owner_occupied":  28.4,
    "pct_renter_occupied": 71.6,
    "vacancy_rate":        7.2,
    "median_household_income": 72800,
    "per_capita_income":   48100,
    "pct_below_poverty":   11.3
  }
}

By GEOID

Returns demographic and Location Intelligence metrics for a specific census block group using its 12-digit GEOID.

POST https://api.airelit.com/v1/terracore/geoid
Direct block group lookup by 12-digit Census GEOID (state FIPS + county FIPS + tract + block group). Returns a single exact record.

GEOID Structure

// 12-digit Census Block Group GEOID breakdown
"481130201001"
 ^^   State FIPS  (48 = Texas)
   ^^^  County FIPS (113 = Dallas County)
      ^^^^^^ Census Tract (020100)
            ^ Block Group (1)

Request Parameters

ParameterTypeRequiredDescription
geoid string required Exactly 12 numeric digits. Must be a valid US Census block group GEOID.
fields array optional Array of field group names. Defaults to ["summary"].
{
  "geoid": "481130201001",
  "fields": ["summary", "race", "education"]
}
curl -X POST https://api.airelit.com/v1/terracore/geoid \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"geoid": "481130201001", "fields": ["summary", "race", "education"]}'
{
  "meta": {
    "geoid":           "481130201001",
    "state_abbr":      "TX",
    "state_name":      "Texas",
    "county_name":     "Dallas County",
    "dataset_version": "2026.03",
    "fields_returned": ["summary", "race", "education"],
    "query_type":      "geoid"
  },
  "data": {
    "total_population":         3842,
    "population_density":       4210.55,
    "median_age":               34.2,
    "land_area_sq_miles":       0.9124,
    "pct_white":                38.4,
    "pct_hispanic":             31.2,
    "pct_black":                18.9,
    "pct_asian":                7.8,
    "diversity_index":          0.7241,
    "pct_bachelors_or_higher":  52.3,
    "education_index":          68.4,
    "pct_high_school_or_higher": 84.6
  }
}

By Address

Accepts a free-form US address string, resolves it to coordinates, and returns block group–level demographic and Location Intelligence data.

Geocoding accuracy: Results depend on address specificity. Full street address, city, and state provide the best precision. Non-rooftop addresses may resolve to a generalized location.
POST https://api.airelit.com/v1/terracore/address
Resolves the address to coordinates and performs block group containment. The resolved_address field contains the canonical address returned by the geocoder after matching and normalization. This may differ from the submitted input.

Request Parameters

ParameterTypeRequiredDescription
address string required Free-form US address. Between 5 and 500 characters. Include street number, street name, city, and state for best results.
fields array optional Array of field group names. Defaults to ["summary"].
{
  "address": "1600 Pennsylvania Avenue NW, Washington, DC",
  "fields": ["summary", "income", "housing"]
}
curl -X POST https://api.airelit.com/v1/terracore/address \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"address": "1600 Pennsylvania Avenue NW, Washington, DC", "fields": ["summary", "income"]}'
{
  "meta": {
    "geoid":             "110010062001",
    "state_abbr":        "DC",
    "state_name":        "District of Columbia",
    "county_name":       "District of Columbia",
    "dataset_version":   "2026.03",
    "fields_returned":   ["summary", "income"],
    "query_type":        "address",
    "resolved_address":  "1600 Pennsylvania Avenue NW, Washington, DC",
    "resolved_latitude":  38.8977,
    "resolved_longitude": -77.0365
  },
  "data": {
    "total_population":        1284,
    "population_density":      9820.40,
    "median_age":              38.1,
    "median_household_income": 118400,
    "per_capita_income":       84600,
    "pct_below_poverty":       4.2
  }
}

Response Format

All successful responses use a consistent two-key envelope. The meta object contains resolution context and geographic identifiers. The data object contains the requested enrichment fields as a flat, analysis-ready structure.

Request ID header: Every API response includes a unique request identifier in the response headers for tracking and debugging. This is returned as x-request-id. Example: x-request-id: 1c67f2f1-f44d-48a4-a595-82ac37aee7f7

Success Envelope

geoidstring | null12-digit Census block group GEOID. Null for ZIP queries.
zipcodestring | nullZIP code identifier. Null for block group queries.
state_fipsstringTwo-digit state FIPS code.
state_abbrstringTwo-letter state abbreviation.
state_namestringFull state name.
county_namestring | nullCounty name. For ZIP queries this represents the dominant county associated with the ZIP.
county_short_namestring | nullShort county name without suffix (e.g. "Travis").
county_fipsstring | nullFive-digit county FIPS code. Null for ZIP queries.
dataset_versionstringVersion identifier for the dataset powering the response.
fields_returnedarrayField groups included in the response.
query_typestringOne of: coordinates, zipcode, geoid, or address.
resolved_addressstring | nullNormalized address returned by the geocoder for address queries.
resolved_latitudenumber | nullLatitude returned by the geocoder for address queries.
resolved_longitudenumber | nullLongitude returned by the geocoder for address queries.
contributing_block_groupsinteger | nullNumber of block groups used to construct ZIP aggregates.
dataobjectAll requested field groups returned as a single flattened object. Numeric types are preserved (integers and decimals are not cast to strings).
Schema stability: Field names are version-stable within a major API version (/v1/). New fields may be added, but existing fields will not be renamed or removed without a version change.

Error Envelope

All errors use a consistent format regardless of endpoint:

{
  "error": true,
  "code": "NOT_FOUND",
  "message": "No census block group found for these coordinates"
}

Field Reference

Complete listing of every field returned per group. All percentage fields are expressed as values from 0–100. Monetary values are in US dollars (not adjusted for inflation).

All fields listed below appear inside the data object of the response. Geographic identifiers such as geoid, state_fips, state_name, state_abbr, and county identifiers are returned in the meta object.

ZIP aggregation: When a ZIP code is requested, demographic and economic metrics are derived from contributing census block groups. Most values are population-weighted averages unless otherwise noted. Certain metrics (such as rent or poverty counts) use specialized weighting methods appropriate to the underlying dataset.

Core Metrics

summary Free

FieldTypeDescription
total_populationintegerTotal population count.
population_densitydecimalPopulation per square mile of land area.
median_agedecimalMedian age of the population.
land_area_sq_milesdecimalLand area in square miles (excludes water).
latitudedecimalBlock group interior centroid latitude.*
longitudedecimalBlock group interior centroid longitude.*

* The latitude and longitude fields represent the centroid of the block group, not the specific address location. For address queries, the geocoded latitude and longitude can be found in the meta object as resolved_latitude and resolved_longitude.

demographics Basic

FieldTypeDescription
male_totalintegerTotal male population.
female_totalintegerTotal female population.
under_18integerPopulation under 18.
age_18_to_34integerPopulation aged 18–34.
age_25_to_44integerPopulation aged 25–44.
age_45_to_64integerPopulation aged 45–64.
over_65integerPopulation 65 and older.
working_age_popintegerPopulation aged 18–64 (working-age population).
pct_maledecimalPercent male.
pct_femaledecimalPercent female.
pct_under_18decimalPercent of population under 18.
pct_18_to_34decimalPercent of population aged 18–34.
pct_25_to_44decimalPercent of population aged 25–44.
pct_45_to_64decimalPercent of population aged 45–64.
pct_65_overdecimalPercent of population 65 and older.
pct_working_agedecimalPercent of population aged 18–64.

race Basic

FieldTypeDescription
white_alone_not_hispanicintegerWhite alone, not Hispanic or Latino.
black_alone_not_hispanicintegerBlack or African American alone, not Hispanic.
asian_alone_not_hispanicintegerAsian alone, not Hispanic.
hispanic_latino_any_raceintegerHispanic or Latino of any race.
native_alone_not_hispanicintegerAmerican Indian or Alaska Native alone, not Hispanic.
pacific_islander_not_hispanicintegerNative Hawaiian or Other Pacific Islander, not Hispanic.
two_or_more_races_not_hispanicintegerTwo or more races, not Hispanic.
other_race_not_hispanicintegerSome other race alone, not Hispanic.
pct_whitedecimalPercent White alone, not Hispanic.
pct_blackdecimalPercent Black or African American.
pct_asiandecimalPercent Asian.
pct_hispanicdecimalPercent Hispanic or Latino.
pct_nativedecimalPercent American Indian or Alaska Native.
pct_pacific_islanderdecimalPercent Pacific Islander.
pct_two_or_moredecimalPercent two or more races.
diversity_indexdecimalProbability (0–1) that two randomly selected people are of different races or ethnicities. Higher values indicate greater diversity.
total_pop_raceintegerTotal population used as race denominator.

income Basic

FieldTypeDescription
median_household_incomeintegerMedian household income (USD).
per_capita_incomedecimalPer capita income (USD).
aggregate_household_incomeintegerSum of all household incomes in the block group (USD). Block-group lookups only.
income_households_totalintegerTotal households used as income denominator. Block-group lookups only.
pct_income_under_25kdecimalPercent of households with income under $25,000.
pct_income_25k_to_50kdecimalPercent of households $25,000–$49,999.
pct_income_50k_to_100kdecimalPercent of households $50,000–$99,999.
pct_income_over_100kdecimalPercent of households $100,000 and above.
pct_below_povertydecimalPercent of population below the federal poverty line.
tract_poverty_countintegerCount of persons below poverty. ZIP aggregation uses tract population-share allocation.
tract_poverty_universeintegerPopulation for whom poverty status is determined. ZIP aggregation uses the same tract population-share allocation method.
Note: Poverty counts originate from census tract-level tables and are proportionally allocated when aggregating to ZIP codes to prevent double counting.

education Basic

FieldTypeDescription
education_indexdecimalComposite education attainment score (0–100). Higher values indicate higher educational attainment relative to other areas nationally.
pct_high_school_or_higherdecimalPercent with high school diploma or higher (age 25+).
pct_bachelors_or_higherdecimalPercent with bachelor's degree or higher (age 25+).
no_schoolingintegerCount: no schooling completed. Block-group only.
high_school_diplomaintegerCount: high school diploma. Block-group only.
ged_equivalentintegerCount: GED or alternative credential. Block-group only.
associates_degreeintegerCount: associate's degree. Block-group only.
bachelors_degreeintegerCount: bachelor's degree. Block-group only.
bachelors_or_higherintegerCount: bachelor's degree or higher.
masters_degreeintegerCount: master's degree. Block-group only.
professional_degreeintegerCount: professional school degree (JD, MD, etc.). Block-group only.
doctorate_degreeintegerCount: doctoral degree. Block-group only.
education_universe_25plusintegerPopulation 25 and older used as the denominator for education attainment metrics.

employment Basic

FieldTypeDescription
unemployment_ratedecimalUnemployment rate as a percentage of the civilian labor force.
labor_force_participationdecimalPercent of civilian non-institutional population in the labor force.
employedintegerEmployed civilian population.
unemployedintegerUnemployed civilian population.
not_in_labor_forceintegerPopulation not in the labor force.
in_labor_forceintegerTotal in civilian labor force.
civilian_labor_forceintegerCivilian labor force total.
employment_universeintegerTotal population used as employment denominator. Block-group only.

housing Basic

FieldTypeDescription
median_home_valueintegerMedian owner-occupied home value (USD).
median_gross_rentintegerMedian gross rent per month (USD). ZIP aggregation uses renter-weighted averages across contributing block groups.
affordability_indexdecimalHousing affordability ratio (annual income / annual rent). Higher = more affordable relative to income.
gross_rent_yielddecimalAnnualized rent as a percent of median home value ((monthly rent × 12) / home value × 100). Raw yield metric for real estate investors. For ZIP queries, yield is calculated using the ZIP-level rent and home value estimates.
total_housing_unitsintegerTotal housing units.
occupied_unitsintegerOccupied housing units.
vacant_unitsintegerVacant housing units.
owner_occupiedintegerOwner-occupied units.
renter_occupiedintegerRenter-occupied units.
pct_owner_occupieddecimalPercent of occupied units that are owner-occupied.
pct_renter_occupieddecimalPercent of occupied units that are renter-occupied.
vacancy_ratedecimalPercent of total housing units that are vacant.
total_householdsintegerTotal households.
family_householdsintegerFamily households.
nonfamily_householdsintegerNon-family households.
pct_family_householdsdecimalPercent of all households that are family households.
pct_single_family_detacheddecimalPercent of total housing units that are single-family detached structures.
single_family_detachedintegerSingle-family detached structures. Block-group only.
single_family_attachedintegerSingle-family attached (townhomes). Block-group only.
units_2integer2-unit structures (duplexes). Block-group only.
units_10_to_19integerBuildings with 10–19 units. Block-group only.
mobile_homeintegerMobile homes. Block-group only.
housing_type_universeintegerTotal housing units used as the denominator for housing type breakdowns.
occupancy_universeintegerTotal housing units used as the denominator for occupancy status breakdowns.

jurisdictions Basic

Political and civic jurisdiction identifiers derived from spatial overlay of census block group centroids against authoritative boundary datasets.

FieldTypeDescription
timezonestringIANA timezone identifier for the location (e.g. America/Chicago).
congressional_districtstringCongressional district number.
congressional_district_namestringFull name of the US congressional district.
state_senate_districtstringState senate district number.
state_senate_district_namestringFull name of the state senate district.
state_house_districtstringState house (lower chamber) district number.
state_house_district_namestringFull name of the state house district.
school_district_namestringName of the unified or elementary school district serving the location.
school_district_typestringSchool district classification (e.g. unified, elementary, secondary).

commute Pro

FieldTypeDescription
mean_commute_timedecimalAverage commute time in minutes for workers 16+.
worked_from_homeintegerWorkers who worked from home.
drove_aloneintegerWorkers who drove alone to work.
public_transitintegerWorkers using public transportation.
walkedintegerWorkers who walked to work.
pct_worked_from_homedecimalPercent working from home.
pct_drove_alonedecimalPercent driving alone.
pct_public_transitdecimalPercent using public transit.
pct_walkeddecimalPercent walking to work.
commute_universeintegerWorkers 16+ used as commute denominator.

internet Pro

FieldTypeDescription
has_internetintegerHouseholds with any internet subscription.
pct_with_internetdecimalPercent of households with internet access.
internet_universeintegerTotal households surveyed for internet access.

insurance Pro

FieldTypeDescription
insured_totalintegerTotal population with health insurance coverage.
uninsured_totalintegerTotal population without health insurance coverage.
pct_insureddecimalPercent with health insurance coverage.
insurance_universeintegerTotal civilian non-institutional population surveyed.

raw_counts Pro Block-group lookups only

Raw integer counts for the expanded age buckets. Useful when you need the underlying population counts rather than the percentages returned in demographics. Not available for ZIP code queries.

FieldTypeDescription
income_under_10kincome_over_200kintegerHousehold count in each income bracket. Block-group lookups only. 17 brackets from under $10K to over $200K.

Composite Indices

indices Pro

TerraCore Composite Indices translate multi-variable demographic and economic signals into percentile-ranked, decision-ready scores. Each index combines independently percentile-normalized components to preserve scale consistency across heterogeneous inputs (income, rates, densities, etc.).

All indices are scored 0–100 using national percentile ranking across all ~242,000 US census block groups. A score of 75 means the location ranks higher than 75% of block groups nationally on that metric. Higher values always indicate stronger relative performance. For ZIP queries, index scores represent the population-weighted average of contributing block group scores.
FieldTypeDescriptionTarget Buyers
household_stability_index numeric Composite stability score. Higher values indicate more established, lower-risk neighborhoods. Components include owner-occupancy rate, vacancy rate (inverted), poverty rate (inverted), percent income under $25K (inverted), and median home value. Real estate investors, lenders, insurers
family_orientation_index numeric Composite family-centricity score. Higher values indicate stronger family presence. Components include percent under 18, percent family households, owner-occupancy rate, and single-family detached housing share. Home builders, childcare services, education providers, youth franchises
economic_strength_index numeric Affluence and economic capacity score. Higher values indicate stronger purchasing power and employment base. Components include median household income, percent income over $100K, unemployment rate (inverted), labor force participation, poverty rate (inverted), and percent bachelor's degree or higher. Retail expansion, franchise site selection, advertising platforms
growth_potential_index numeric Composite growth potential score reflecting indicators commonly associated with neighborhood appreciation. Components include percent bachelor's degree or higher, percent population aged 25–44, percent working from home, commute time (inverted), and median home value. Real estate investors, builders, STR operators, private equity
workforce_quality_index numeric Skilled labor availability score. Higher values indicate stronger and more accessible workforce quality. Components include percent bachelor's degree or higher, percent high school or higher, labor force participation, unemployment rate (inverted), and commute time (inverted). Corporate site selection, logistics firms, industrial developers
insurance_risk_index numeric Population insurance coverage and risk profile score. Higher values indicate lower socioeconomic risk and stronger insurance coverage. Components include percent insured, poverty rate (inverted), percent income under $25K (inverted), and owner-occupancy rate. Insurance carriers, risk modeling firms, healthcare networks
investor_yield_index numeric Rental investment fundamentals score. Higher values indicate stronger rental demand and yield environment. Components include gross rent yield, renter occupancy rate, vacancy rate (inverted), median household income, and percent income over $100K. Landlords, STR operators, real estate syndicates
Methodology note: Each component metric is first percentile-ranked independently (0–100) before weighting. This normalization allows indicators measured in different units (income, rates, densities, etc.) to be combined on a common scale. (inv.) denotes an inverted component where higher raw values (for example vacancy or unemployment) contribute negatively to the final score.

Location Intelligence Metrics

Derived from TerraCore spatial analysis engine of neighborhood amenities and infrastructure, percentile-ranked within urban, suburban, or rural zone class peers. Scores are integers 0–100 where 80 means "better than 80% of comparable zone-type block groups."

Location Intelligence Metrics describe access to everyday amenities — groceries, transit, parks, healthcare, schools, walkable retail, and community resources. Composite scores are normalized within peer zone classes (urban / suburban / rural) so comparisons are meaningful across geography types. Zone class is determined algorithmically based on population density and built-environment structure — not ZIP code heuristics — ensuring like-for-like benchmarking across geographies.

The enrichment_meta group provides data quality indicators for any Location Intelligence Metrics response, including a data_confidence field (high, medium, or low). Low confidence suggests sparse coverage for the area; scores may be underestimated.

walkability Pro

Pedestrian-range access to daily-use amenities measured within 0.25–1 mile radial buffers.

FieldTypeDescription
cnt_restaurant_05miintegerNumber of restaurants, fast food, and cafes within half a mile.
cnt_retail_05miintegerNumber of retail shops within half a mile.
cnt_transit_stop_025miintegerNumber of bus stops within a quarter mile (walkable transit).
cnt_grocery_1miintegerNumber of grocery stores and supermarkets within 1 mile.
den_restaurant_1midecimalRestaurant density per square mile within a 1-mile radius.
score_walkabilityintegerComposite walkability score (0–100), percentile-ranked within zone class.

grocery_access Pro

Proximity and availability of grocery stores and supermarkets.

FieldTypeDescription
dist_grocery_nearestdecimalDistance in miles to the nearest grocery store or supermarket.
cnt_grocery_1miintegerNumber of grocery stores within 1 mile.
cnt_grocery_3miintegerNumber of grocery stores within 3 miles.
score_grocery_accessintegerComposite grocery access score (0–100), percentile-ranked within zone class.

healthcare_access Pro

Access to clinics, urgent care facilities, and hospitals.

FieldTypeDescription
dist_clinic_nearestdecimalDistance in miles to the nearest clinic, doctor's office, or urgent care.
cnt_clinic_3miintegerNumber of clinics and urgent care facilities within 3 miles.
dist_hospital_nearestdecimalDistance in miles to the nearest hospital.
score_healthcare_accessintegerComposite healthcare access score (0–100), percentile-ranked within zone class.

transit_access Pro

Walkable bus stop access plus proximity to rail and tram stations.

FieldTypeDescription
cnt_transit_stop_025miintegerNumber of bus stops within a quarter mile.
cnt_transit_stop_05miintegerNumber of bus stops within half a mile.
dist_transit_station_nearestdecimalDistance in miles to the nearest rail or tram station.
score_transit_accessintegerComposite transit access score (0–100), percentile-ranked within zone class.

retail Pro

Commercial retail density and walkable shop access.

FieldTypeDescription
cnt_retail_05miintegerNumber of retail shops within half a mile.
cnt_retail_1miintegerNumber of retail shops within 1 mile.
den_retail_1midecimalRetail shops per square mile within a 1-mile radius.
score_retail_densityintegerComposite retail density score (0–100), percentile-ranked within zone class.

school_access Pro

Proximity to K-12 schools and higher education institutions.

FieldTypeDescription
cnt_school_1miintegerNumber of schools, colleges, and universities within 1 mile.
dist_school_nearestdecimalDistance in miles to the nearest school or university.
score_school_accessintegerComposite school access score (0–100), percentile-ranked within zone class.

recreation Pro

Access to parks, nature areas, and nearby entertainment venues.

FieldTypeDescription
dist_park_nearestdecimalDistance in miles to the nearest park or nature reserve.
park_area_sqmi_1midecimalTotal park polygon area (sq miles) within 1 mile of the block group anchor.
cnt_park_1miintegerNumber of parks and nature reserves within 1 mile.
cnt_entertainment_5miintegerNumber of entertainment venues (cinemas, theatres, bowling alleys, etc.) within 5 miles.
dist_entertainment_nearestdecimalDistance in miles to the nearest entertainment venue.
score_recreationintegerComposite recreation score (0–100), percentile-ranked within zone class.

community_access Pro

Proximity and density of community gathering places and places of worship.

FieldTypeDescription
cnt_worship_1miintegerNumber of places of worship within 1 mile (all religions).
den_worship_1midecimalWorship location density per square mile within a 1-mile radius.
score_religious_densityintegerComposite religious/community access score (0–100), percentile-ranked within zone class.

enrichment_meta Pro

Data quality and coverage indicators for Location Intelligence Metrics.

FieldTypeDescription
data_confidencestringOverall enrichment data quality indicator: high, medium, or low. Low values suggest sparse local coverage; enrichment scores may be underestimated. Confidence classification is derived from amenity density thresholds and regional mapping completeness heuristics.
osm_feature_densitydecimalLocal mapping completeness proxy — active amenity features per square mile within 1 mile of the block group anchor.
amenity_count_rawintegerTotal amenity count across all categories used in scoring confidence classification.
Designed for high-volume decision systems. All Location Intelligence metrics are precomputed at the census block group level (~242,000 geographies) to ensure consistent latency under load.

ZIP-Exclusive Fields

The following fields are only returned for ZIP code queries (/v1/terracore/zipcode). They do not exist at the Block Group level. Block Group documentation remains unchanged.

How ZIP values are derived: ZIP-level metrics are not sourced from a separate census dataset. Most values are derived from the underlying census block groups that intersect the ZIP boundary and aggregated using population-weighted calculations. This approach preserves consistency with block-group metrics while allowing reliable comparisons at the ZIP level.
Methodology corrections (ZIP only — v5/v6): Three existing ZIP field calculations were updated. Column names are unchanged.

median_gross_rent — Previously: population-weighted avg of BG median rents. Now: weighted by renter_occupied × area_weight. BGs with NULL rent excluded from both numerator and denominator. Weighting by total population diluted values with homeowner-dominated BGs.

gross_rent_yield — Previously: population-weighted avg of BG yield ratios. Now: derived directly as (median_gross_rent × 12) / median_home_value × 100 from ZIP-level values. Averaging ratios ≠ ratio of averages; the new method guarantees internal consistency.

tract_poverty_count / tract_poverty_universe / pct_below_poverty — Previously: area-weighted sum of tract values across BG rows (caused severe overcounting — universe could exceed ZIP population). Now: each tract's poverty values are allocated proportionally by estimated population share in that tract.

ZIP-Exclusive · Environment Scores

zip_environment_scores Pro

Population-weighted averages of Block Group-level environment scores, aggregated to the ZIP. Weight = estimated population from area intersection. BGs with NULL scores are excluded from both numerator and denominator.

FieldTypeDescription
score_walkability_zip_avgdecimalPopulation-weighted avg of BG walkability scores (0–100).
score_transit_access_zip_avgdecimalPopulation-weighted avg of BG transit access scores (0–100).
score_grocery_access_zip_avgdecimalPopulation-weighted avg of BG grocery access scores (0–100).

ZIP-Exclusive · Nearest POI Distance Averages

zip_poi_distances Pro

Population-weighted averages of BG-level nearest-POI distances. NULLs excluded from both numerator and denominator. Units: miles (same as BG source fields).

FieldTypeDescription
dist_grocery_nearest_zip_avgdecimalPop-weighted avg nearest grocery store distance (miles).
dist_hospital_nearest_zip_avgdecimalPop-weighted avg nearest hospital distance (miles).
dist_clinic_nearest_zip_avgdecimalPop-weighted avg nearest clinic distance (miles).
dist_transit_station_nearest_zip_avgdecimalPop-weighted avg nearest transit station distance (miles).
dist_park_nearest_zip_avgdecimalPop-weighted avg nearest park distance (miles).
dist_entertainment_nearest_zip_avgdecimalPop-weighted avg nearest entertainment venue distance (miles).

ZIP-Exclusive · Raw Amenity Counts

zip_amenity_counts Pro

Sourced directly from env.zip_environment — OSM features aggregated within the ZIP boundary. Not rolled up from Block Groups. NULL when no environment data exists for a ZIP.

FieldTypeDescription
cnt_restaurantintegerTotal restaurants in ZIP.
cnt_fast_foodintegerFast food locations.
cnt_barintegerBars.
cnt_dessertintegerDessert/café venues.
cnt_groceryintegerGrocery stores.
cnt_pharmacyintegerPharmacies.
cnt_clinicintegerClinics.
cnt_hospitalintegerHospitals.
cnt_fitnessintegerFitness centers.
cnt_bankintegerBanks.
cnt_atmintegerATMs.
cnt_fuelintegerFuel/gas stations.
cnt_schoolintegerSchools.
cnt_childcareintegerChildcare facilities.
cnt_worshipintegerPlaces of worship.
cnt_transit_stopintegerTransit stops.
cnt_transit_stationintegerTransit stations.
cnt_parkintegerParks.
cnt_entertainmentintegerEntertainment venues.
cnt_retailintegerRetail locations.
total_featuresintegerTotal OSM features in ZIP.
env_data_confidencestringData confidence rating for environment data: high, medium, or low.

ZIP-Exclusive · Per-Capita Amenity Ratios

zip_amenity_ratios Pro

Derived from ZIP amenity counts divided by ZIP total population. NULL when population is 0 or env data is absent.

FieldTypeFormulaDescription
restaurants_per_1k_popdecimalcnt_restaurant / population × 1000Restaurants per 1,000 residents.
grocery_per_1k_popdecimalcnt_grocery / population × 1000Grocery stores per 1,000 residents.
transit_stops_per_1k_popdecimalcnt_transit_stop / population × 1000Transit stops per 1,000 residents.
parks_per_1k_popdecimalcnt_park / population × 1000Parks per 1,000 residents.
clinics_per_10k_popdecimalcnt_clinic / population × 10000Clinics per 10,000 residents.
amenities_per_1k_popdecimal(cnt_restaurant + cnt_grocery + cnt_retail + cnt_entertainment) / population × 1000Broad amenity density per 1,000 residents.

ZIP-Exclusive · Composite Indices

zip_indices Pro

Composite indices derived from ZIP-level metrics and normalized using national percentile ranking across all ~33,000 US ZIP codes. Scores range from 0–100 where higher values indicate stronger performance relative to other ZIP codes nationally.

FieldTypeDescription
neighborhood_livability_index_zip_avg decimal Composite livability score derived from walkability, transit access, grocery access, park proximity, amenity density, and remote-work prevalence. Higher = more walkable and accessible neighborhood environment.
retail_opportunity_index_zip_avg decimal Retail opportunity score measuring potential demand versus competition. Combines economic strength, population density, restaurant competition density (inverted), commute patterns, and household income.
neighborhood_livability_zip_rank decimal National percentile rank for the livability index (0–100). A value of 80 means the ZIP ranks higher than 80% of ZIP codes nationally.
retail_opportunity_zip_rank decimal National percentile rank for the retail opportunity index (0–100). Higher scores indicate stronger potential for retail demand relative to competition.
Methodology note: Composite index components are normalized using national percentile ranking prior to weighting. Components with missing values default to 50 (neutral midpoint) to prevent incomplete data from suppressing index output.

Error Codes

All errors return a JSON object with error: true, a machine-readable code, and a human-readable message.

CodeHTTPDescription
NOT_FOUND 404 No data found for the given input. The coordinates may be in a water area, the ZIP code may not exist in our dataset, or the GEOID may be invalid.
INVALID_PARAMS 400 Input validation failed. Check that lat/lon are valid numbers, zip is exactly 5 digits, and geoid is exactly 12 digits.
OUT_OF_BOUNDS 422 Coordinates fall outside supported US coverage (50 states, DC, Puerto Rico).
TIER_REQUIRED 403 One or more requested field groups require a higher subscription tier. Upgrade your plan or remove the restricted groups from your fields array. (Applies to RapidAPI customers)
INVALID_JSON 400 The request body is not valid JSON. Ensure Content-Type: application/json is set and the body is well-formed.
UNAUTHORIZED 401 Missing or invalid API key. Check the X-API-Key header.
QUOTA_EXCEEDED 429 You have exceeded your plan's request quota. Quota enforcement may be handled by the Airelit platform or by the RapidAPI gateway depending on how the API is accessed.
INTERNAL_ERROR 500 Unexpected server error. Retry the request. If the issue persists, contact support with the returned request_id.
Example error response
{
  "error":   true,
  "code":    "TIER_REQUIRED",
  "message": "Requested field group(s) require a higher tier: commute, internet"
}

Data Sources & Coverage

TerraCore is powered by the US Census Bureau American Community Survey (ACS) 5-Year Estimates, currently using the 2024 ACS 5-Year vintage (2020–2024 survey period). ACS 5-Year data provides the most statistically reliable demographic estimates available for small geographies such as census block groups.

TerraCore extends census demographic data with spatial enrichment layers including amenity density, accessibility metrics, and derived neighborhood intelligence indices. These enrichment datasets are processed through AireLit's spatial analysis pipeline prior to API delivery to ensure consistent response latency and reproducible scoring across the United States.

DatasetCoverageRecords
Block Group Resolution All 50 states, the District of Columbia, and Puerto Rico 242,000+ census block groups
ZIP Code Resolution (ZCTA) All US ZIP Code Tabulation Areas (ZCTAs), the Census Bureau's geographic representation of ZIP codes ~33,000 ZIP codes

Primary Demographic Data

The American Community Survey (ACS) is an ongoing statistical survey conducted by the US Census Bureau. The 5-Year dataset pools survey responses collected over five years, enabling reliable demographic estimates for small geographic areas such as census block groups.

Census block groups typically contain between 600 and 3,000 residents and are designed to represent relatively homogeneous neighborhoods with respect to demographic, economic, and housing characteristics. TerraCore uses block groups as its foundational geographic unit for demographic enrichment.

Spatial & Infrastructure Data

TerraCore Location Intelligence Metrics are derived from normalized geospatial infrastructure datasets including amenity locations, transportation infrastructure, healthcare facilities, parks, schools, and retail features. These datasets are spatially indexed and aggregated using AireLit's enrichment engine to produce neighborhood-level accessibility metrics and percentile-ranked scores.

DatasetProviderLicense / TermsTypical Update Cadence
American Community Survey (ACS) 5-Year Estimates US Census Bureau Public domain (US government data) Annual release (typically December)
TIGER/Line Geographies US Census Bureau Public domain (US government data) Annual release aligned with ACS updates
OpenStreetMap — Amenity & Infrastructure Data OpenStreetMap contributors © OpenStreetMap contributors, ODbL Continuously updated by contributors; TerraCore ingests refreshed extracts monthly
OpenAddresses — Geospatial Address Data OpenAddresses project Various open licenses per jurisdiction; see openaddresses.io Updated by contributing jurisdictions; TerraCore ingests refreshes monthly
Proprietary Enrichment Datasets AireLit Proprietary Updated on internal schedules
Dataset updates: TerraCore performs rolling monthly refreshes during a scheduled maintenance window on Saturday overnight US time. During this window the API continues serving the previous dataset snapshot. The dataset_version field in every response identifies the TerraCore dataset release currently in production.
OpenStreetMap Attribution: Certain TerraCore Location Intelligence Metrics incorporate data derived from OpenStreetMap. © OpenStreetMap contributors. Data available under the Open Database License (ODbL). See openstreetmap.org/copyright for license details.