Enrichment
Enrich by Geocode
POST
Look up properties by geographic coordinates (reverse geocoding). Each item in the
data array provides a latitude and longitude pair, and the API returns the property at that location.
Each request accepts up to 250 items in the
data array. The response returns every submitted
item with a matched flag indicating whether a property was found.Body Parameters
Array of coordinate objects to look up (max 250).
Field IDs to include in results. Can include both property and people fields.
Omit or pass an empty array for the default set.
Which contacts to include on matched properties.Options:
owners, owners_and_family, renters, residentsWhen set, each matched result includes a contacts array. Omit to skip contacts.Response Fields
The response contains adata array and a totals object. There is no pagination — all submitted items are returned in a single response.
Matched Result
Whenmatched is true, the result contains all always-included property fields plus any requested fields.
| Field | Type | Description |
|---|---|---|
input | object | Echo of the original input object |
matched | boolean | true |
dm_property_id | string | DealMachine internal property ID |
full_address | string | Complete formatted address |
address, city, state, zip | string | Parsed address components |
latitude, longitude | number | Property coordinates |
contacts | array | Contacts matching contact_audience. Only present when contact_audience is set. |
| requested fields | varies | Any fields specified in fields |
Unmatched Result
| Field | Type | Description |
|---|---|---|
input | object | Echo of the original input object |
matched | boolean | false |
match_failure | object | Structured failure with code and reason |
match_failure.code | string | Machine-readable failure code (see Match Failure Codes below) |
match_failure.reason | string | Human-readable explanation of why no match was found |
Match Failure Codes
These codes are shared across all enrichment endpoints.| Code | Description |
|---|---|
not_found | No matching record exists for the provided input |
invalid_input | The input could not be processed (e.g., invalid address, invalid email, invalid phone number). The reason field provides specifics. |
Totals
| Field | Type | Description |
|---|---|---|
submitted | integer | Number of items in the request data array |
matched | integer | Number of items that matched a property |
unmatched | integer | Number of items that did not match |
Credits
This endpoint consumes 1 property enrichment credit per matched property. Whencontact_audience is set, included contacts consume people credits. Only matched results consume credits. Credits are deduplicated within your billing period — accessing the same entity again is free.
Every response includes a credits object with a full breakdown of what was charged. See Credits for details.
Notes
- Both
latitudeandlongitudeare required for each item. - The API matches the nearest property parcel to the provided coordinates. For best results, use coordinates that fall within the property boundary.
- Items are matched independently — one failed match does not affect others.
- The
inputobject is always echoed back so you can correlate results with your input data. - When
contact_audienceis set, each matched result includes acontactsarray with the same structure and match behavior as Search Properties. - The old
/v1/enrichment/latlngpath is still supported as a deprecated alias.