/api-reference/lookup

POST /v1/lookup

cURL

curl --request POST \
  --url https://api.example.com/v1/lookup \
  --header 'Content-Type: application/json' \
  --data '
{
  "input": "<string>",
  "include_parcel": true
}
'

Resolve an address, coordinate, or APN to canonical join keys: a coordinate, resolved address, and — when it’s safe to — a parcel.

cURL

curl --request POST \
  --url https://api.example.com/v1/lookup \
  --header 'Content-Type: application/json' \
  --data '
{
  "input": "<string>",
  "include_parcel": true
}
'

​ When to use this

  • resolved — a coordinate, plus a parcel when the geocode cleared parcel-quality accuracy.
  • clarify — the input is genuinely ambiguous: multiple plausible matches at comparable confidence. You get candidates, never a silent pick.
  • no_match — an honest failure, with a reason.

​ Request shape

​ Example: a clean, parcel-quality match

curl -s https://api.mireye.com/v1/lookup \
  -H "Authorization: Bearer $MIREYE_API_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"input": "480 Berdoll Ln, Cedar Creek TX"}' | jq

​ Area, hazard, and market context

  • Jurisdiction codes, from the same Census Geocoder call as county_fips/county/tract_geoid: state_fips, state, block_group_geoid, block_geoid, congressional_district (e.g. "TX-27"), cbsa_name/cbsa_code (the metro or micro market, e.g. "Austin-Round Rock-San Marcos, TX Metro Area").
  • Elevation and flood risk: elevation_m, fema_flood_zone, within_floodplain, coastal_high_hazard — the same catalog sources /v1/fetch uses (3DEP/EPQS elevation, FEMA NFHL).
  • County market context: county_market bundles ten metrics from five federal sources (Census PEP/BPS/ACS, FHFA, BLS QCEW) — population and its 1-year growth, net domestic migration, building permits (total, single-family, YoY %), home-price YoY %, employment (total, YoY %), and median household income.
  • Opportunity Zone status: in_opportunity_zone (a federal tax-incentive designation) and opportunity_zone_tract_geoid when applicable.
  • Timezone: timezone, the IANA zone name (e.g. "America/Chicago").

​ Example: genuine ambiguity — never a silent pick

curl -s https://api.mireye.com/v1/lookup \
  -H "Authorization: Bearer $MIREYE_API_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"input": "1100 King St W, Toronto"}' | jq

​ Example: a lone winner in the wrong town is a no_match, never silent

curl -s https://api.mireye.com/v1/lookup \
  -H "Authorization: Bearer $MIREYE_API_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"input": "100 Main St, Columbus"}' | jq

​ Example: a parcel-lookup failure never demotes a good geocode

JSON
{
  "disposition": "resolved",
  "lat": 38.8977,
  "lng": -77.0365,
  "resolved_address": "1600 PENNSYLVANIA AVE NW, WASHINGTON, DC",
  "parcel_unavailable": true,
  "parcel_unavailable_reason": "regrid_quota_exhausted",
  "match_method": "geocode_rooftop",
  "confidence": 0.95
}

​ A coarse geocode never gets a parcel

​ Swapped coordinates are a hard error, never a nearest-match

curl -s -i https://api.mireye.com/v1/lookup \
  -H "Authorization: Bearer $MIREYE_API_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"input": "-73.9,40.7"}'

​ APN-only lookup is not supported yet

JSON
{
  "disposition": "no_match",
  "reason": "apn_not_supported_in_v1",
  "hint": "APN-only lookup isn't supported yet -- supply an address or coordinate."
}

​ Response shape

​ Errors

​ Limits

  • One input per request. No batching in V1; loop client-side.
  • 256 characters maximum, rejected rather than truncated.
  • Address-leg caching follows /v1/geocode’s rules: successful geocodes cache 30 days, negatives 24 hours, form-only normalization (case/whitespace/ punctuation) — see /v1/geocode’s Limits for the full detail, since the same cache backs both.
  • US only, same envelope as the rest of the API.
  • Parcel data depends on Regrid. There is no free parcel tier — a parcel is attached only when Regrid succeeds and the match is close enough to trust; every other case is an honest parcel_unavailable, not an error.

​ What we keep

Successful Response