Skip to main content
This page is the exhaustive reference for filtering accounts and contacts: every valid key, its fixed keyType, and — for the three enum-backed keyTypes — the exact values the API accepts. The keyType for a given key is fixed; passing a different one returns a 400 validation error.

Account Filter Keys (type: “account”)

Contact Filter Keys (type: “contact”)

string_with_id and number_with_id fields (owner, lead_score) require an ID value, not a display name — there is currently no lookup endpoint to resolve a display name to its ID. ID-resolution endpoints are planned for a future release.

Country Values

For address_country and company_address_country, pass an array of country name strings from this exact list — full English names, matching Knock2’s enrichment output. United States and Canada are listed first; the remainder is alphabetical.

Employee Range Values

For employees and company_employees, pass an array of JSON-stringified [min, max] tuples — not the display label. Use null for the open-ended upper bound.

Revenue Range Values

For annual_revenue and company_annual_revenue, pass an array of JSON-stringified [min, max] tuples in raw dollars — not the display label. Use null for the open-ended upper bound.
These are the standard buckets used by the dashboard’s own filter builder, but the API does not strictly enforce them — employee_range/revenue_range filtering is a numeric range-overlap comparison, so a non-standard [min, max] tuple (e.g. "[15,42]") is still evaluated rather than rejected. A malformed (non-JSON) string in the array is silently skipped rather than returning an error, so double-check your encoding if a filter of this type doesn’t behave as expected.