HappierleadsDocs

See your leads

Everyone we identified on your website: the person, their company, what they did and how well they fit.

Authenticated with ?privateKey=YOUR_KEY (see Authentication).

GET/v3/leadsList website leads
GET/admin/leads-tableGet paginated leads table with advanced filtering
GET/v3/websites/{websiteId}/lead-qualityGet the lead quality bar
PUT/v3/websites/{websiteId}/lead-qualityUpdate the lead quality bar
POST/v3/websites/{websiteId}/lead-quality/purgePurge leads below the bar
POST/v3/websites/{websiteId}/lead-quality/undo-purgeUndo a lead purge
GET
Try:
Parameters
Website IdWebsite id (24 hex characters) from list_websites.
Date FromStart of the range, matched on the lead's last visit date (whole day). Accepts YYYY-MM-DD, MM/DD/YYYY, a full ISO 8601 timestamp or epoch milliseconds.
Date ToEnd of the range (inclusive, whole day). Same formats as dateFrom.
PagePage number, 1-based, 50 leads per page. Default 1; pages beyond 100 return page 100.
DomainFree-text search across company name and domain, person names and emails, e.g. "acme.example" or "Jane Smith".
IndustriesOne industry to match (case-insensitive, partial match), e.g. "Software". A single value, not a list.
SectorsOne company sector to match (case-insensitive, partial match).
Visitor LocationVisitor country as a two-letter ISO code, e.g. "US", "GB" (case-insensitive).
Visitor Location StateVisitor state/region, e.g. "California". When set without visitorLocation, results are limited to US visitors.
TagTag name (not id) to filter by, e.g. "HOT"; tag names are stored in upper case and matched case-insensitively. Names come from list_tags.
Visits_lower_boundMinimum number of visits (sessions). Default 0.
Visits_upper_boundMaximum number of visits (sessions). Leave it out to include every lead, however many visits.
Employees MinSmallest company headcount to include, e.g. 10.
Employees MaxLargest company headcount to include, e.g. 200.
TechTechnology the company uses, case-insensitive partial match, e.g. "HubSpot", or a JSON array string of several: '["HubSpot","Shopify"]'.
Exact Visitortrue to list only leads where the exact person was identified (name and contact details), false for all leads. Leave it out for all leads.
Utm SourceJSON array string of [operator, value] pairs, e.g. '[["contains","google"]]'. Operators: contains, not-contains, starts-with, ends-with. A plain string (not JSON) makes the call fail.
Utm MediumJSON array string of [operator, value] pairs, e.g. '[["contains","cpc"]]'. Same operators as utmSource.
Page VisitedJSON array string of [operator, value] pairs matched against visited page paths, e.g. '[["contains","pricing"]]' or '[["not-contains","careers"]]'. Operators: contains, not-contains, starts-with (value without the leading slash), ends-with. A plain string makes the call fail.
curl -X GET "https://rest-admin.happierleads.com/v3/leads?privateKey=YOUR_KEY&websiteId=64b7f0a1c2d3e4f5a6b7c8d9&dateFrom=2026-10-01&dateTo=2026-10-30&page=1"
Response
Press Send request to try it with sample data.

Use case: Who came from Germany this month?

GET /v3/leads with visitorLocation=Germany and the month as dateFrom/dateTo. Results come 50 a page; pass page for more.

On this page