Skip to main content
POST
/
v1
/
enrichment
/
name
curl -X POST "https://api.v2.dealmachine.com/v1/enrichment/name" \
  -H "Authorization: Bearer dm_sk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "data": [
      { "last_name": "Oster", "first_name": "David" }
    ],
    "location": { "type": "state", "code": "MO" },
    "include_properties": true,
    "per_page": 25,
    "page": 1
  }'
{
  "data": [
    {
      "dm_person_id": "per_x1y2z3",
      "full_name": "David Oster",
      "first_name": "David",
      "last_name": "Oster",
      "phones": [{ "number": "3145551234" }, { "number": "3145559999" }],
      "emails": [{ "address": "david.oster@example.com" }],
      "properties": [
        {
          "dm_property_id": "prop_a1b2c3",
          "address": "1200 Market St",
          "city": "St. Louis",
          "state": "MO",
          "zip": "63101",
          "latitude": 38.627,
          "longitude": -90.1994
        }
      ]
    }
  ],
  "credits": {
    "used": 2,
    "properties": 1,
    "people": 1,
    "deduplicated": 0
  },
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 1,
    "total_pages": 1
  }
}
Look up people by name. Provide a data array of name objects (each with a last_name and optional first_name) and the API returns all matching people with their contact information. Optionally include a location to narrow results to a specific area.
This endpoint returns paginated results — up to 100 people per page. Use page and per_page to navigate through large result sets.

Body Parameters

data
array
required
Array of name objects to search for (max 250). Each object must include a last_name.
location
object
Location to narrow results to a specific area. When omitted, results are not filtered by location.
include_properties
boolean
default:false
When true, each matched person includes a properties array with all associated properties.
page
integer
default:1
Page number for pagination (starts at 1).
per_page
integer
default:25
Number of results per page (max 100).

curl -X POST "https://api.v2.dealmachine.com/v1/enrichment/name" \
  -H "Authorization: Bearer dm_sk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "data": [
      { "last_name": "Oster", "first_name": "David" }
    ],
    "location": { "type": "state", "code": "MO" },
    "include_properties": true,
    "per_page": 25,
    "page": 1
  }'
{
  "data": [
    {
      "dm_person_id": "per_x1y2z3",
      "full_name": "David Oster",
      "first_name": "David",
      "last_name": "Oster",
      "phones": [{ "number": "3145551234" }, { "number": "3145559999" }],
      "emails": [{ "address": "david.oster@example.com" }],
      "properties": [
        {
          "dm_property_id": "prop_a1b2c3",
          "address": "1200 Market St",
          "city": "St. Louis",
          "state": "MO",
          "zip": "63101",
          "latitude": 38.627,
          "longitude": -90.1994
        }
      ]
    }
  ],
  "credits": {
    "used": 2,
    "properties": 1,
    "people": 1,
    "deduplicated": 0
  },
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 1,
    "total_pages": 1
  }
}

Response Fields

The response contains a data array of person contacts and a pagination object.

Person Contact

Each object in the data array contains:
FieldTypeDescription
dm_person_idstringDealMachine internal person ID
full_namestringFull display name
first_name, last_namestring | nullParsed name components
phonesarrayPhone numbers with number
emailsarrayEmail addresses with address
propertiesarrayAssociated properties. Only present when include_properties is true.

Pagination

FieldTypeDescription
pageintegerCurrent page number
per_pageintegerResults per page
totalintegerTotal number of matching people
total_pagesintegerTotal number of pages

Credits

This endpoint consumes 1 people credit per matched person. When include_properties is true, included properties consume property 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

  • Each name object requires a last_name. A name search without a last name would be too broad.
  • Name matching is case-insensitive and trims whitespace.
  • The location parameter is optional. When provided, results are scoped to that area. When omitted, the search is nationwide.
  • You can submit multiple name objects in the data array to search for several people at once.
  • Use page and per_page to paginate through large result sets. Maximum per_page is 100.
  • When include_properties is true, each person’s properties array includes all associated properties.