Skip to main content
All search endpoints return results in a consistent envelope with three top-level keys: data, totals, and pagination.

Response Envelope

The data Array

The data array contains the matching records. Each record is a JSON object with always-included fields plus any fields you requested.
  • Always-included fields are present on every record regardless of your fields selection (see below).
  • Requested fields appear when you include their field_id in the fields array.
  • Default fields are returned if you omit the fields parameter or pass an empty array.
  • Values match the field type: numbers are JSON numbers, dates are YYYY-MM-DD strings, booleans are true/false, and multi-select values are arrays of option IDs.
  • Null values: Fields with no data return null.

The totals Object

Every search response includes a totals object with the full count of matching entities across the entire result set, regardless of pagination or anchor. These are the same values returned by the Count Properties and Count People endpoints — embedded directly in every search response so you don’t need a separate call.

Always-Included Fields

These fields are present on every record in every response — you never need to request them.

Properties

People

When anchor is "people", each record in data represents a person. Person records always include:

Residence

The residence object is the person’s place of residence — where they currently live. This is not necessarily a property they own; it is simply their home address.

Nested Property

The property object contains the property associated with this person through the search — for example, a property they own, rent, or are otherwise connected to based on the contact_audience parameter. It uses the same structure as a property-anchored result, including images and any requested property fields like estimated_value.

Images

Every property includes an images object with three views served via img.dealmachine.com. Image URLs are edge-cached and do not consume additional credits.
Image URLs follow the pattern https://img.dealmachine.com/{type}/{lat},{lng}.jpg and support optional query parameters:
Image URLs are edge-cached and do not consume additional credits. If a street view is not available for a location, Google returns a grey placeholder tile — the CDN still caches and serves it.

Phones

The phones array on each person contains all available phone numbers:

Emails

The emails array on each person contains all available email addresses:

The credits Object

Every endpoint that consumes credits includes a credits object in the response. This tells you exactly what was charged for the request.
The credits object is not included on non-billable endpoints (account info, filter metadata, field discovery) or when estimate_cost: true is used on search endpoints. See Credits for full details on how credits work.

The pagination Object

Every response includes pagination metadata. See Pagination & Sorting for full details.

Empty Results

When no records match your filters, the response still uses the same envelope:

Error Responses

When a request fails, the API returns an error object instead of the data envelope. See Errors for the full error format and codes.
Common search-related errors: