Agent-readable docs index: /llms.txt. Full docs in one file: /llms-full.txt. Download /docs.zip to grep all markdown files locally.

Count People

Returns the total number of people matching a set of filters. Takes the same filters and locations parameters as Search People.

Body Parameters

body locationsarray
Array of location objects defining where to search. Required unless filters or protocol filters are provided (max 15). Locations use OR logic.
Location object properties
body typestringrequired
Location type: state, county, city, zip_code, radius, or polygon.
body codestring
Location identifier. Required for state (2-letter abbreviation), county (5-digit FIPS code), city (place ID), and zip_code (5-digit ZIP).
body latitudenumber
Center point latitude. Required for radius.
body longitudenumber
Center point longitude. Required for radius.
body radius_milesnumber
Search radius in miles. Required for radius.
body coordinatesarray
Array of [longitude, latitude] pairs defining the boundary. Required for polygon (minimum 3 points).
body filtersarray
Array of filter objects. Required unless locations or protocol filters are provided. All filters must come from the people catalog (source_type=people) — see People Filters. Property filters are rejected with filter_source_mismatch; use the property endpoints for those.
Filter object properties
body filter_idstringrequired
The filter slug from the List Filters endpoint (e.g., has_active_phone_number, estimated_household_income).
body operatorstring
One of the filter's allowed_operators. See Filter Values for all operators by type. Optional for BOOLEAN filters — automatically defaults to is_boolean.
body valueanyrequired
The filter value. Shape depends on the operator — can be a number, string, boolean, array, or object. See Filter Values.
body include_listsobject
Restrict counts to people list IDs, for example { "people_list_ids": [123] }.
body exclude_listsobject
Exclude people list IDs, for example { "people_list_ids": [456] }.
body exclude_previously_exportedboolean | object
Exclude people already exported by your organization.
This endpoint counts people using the people filter catalog only. Property attributes such as estimated_value, property_type or num_units are not available here and return filter_source_mismatch — use Count Properties, which reports distinct people alongside the property count. property_match applies to Export People only.

Response Fields

FieldTypeDescription
total_peopleintegerNumber of people matching the filters
total_propertiesintegerNumber of properties the matched people are connected to.
total_resultsintegerAlways equals total_people for people search

Notes

  • The same filter validation rules apply as Search People.
  • Filters must all come from the people catalog. A property filter returns HTTP 400 with code filter_source_mismatch; the response's details.replacementFilterId names the equivalent people filter when one exists.
  • To gate on property attributes, call Count Properties instead — it returns the distinct people count alongside the property count.
Request example
curl -X POST "https://api.v2.dealmachine.com/v1/people/search/count" \ -H "Authorization: Bearer dm_sk_live_xxx" \ -H "Content-Type: application/json" \ -d '{ "locations": [ { "type": "state", "code": "TX" } ], "filters": [ { "filter_id": "estimated_household_income", "operator": "greater_than", "value": 100000 }, { "filter_id": "has_active_phone_number", "value": true } ] }'
Response example
{ "total_people": 412, "total_properties": 387, "total_results": 412 }