# Get Website Visitors

Returns companies ranked by website-visit signals for your tracked domains and date range.

Domains must be configured for tracking in the Lusha dashboard — they are resolved to site IDs server-side. Each result combines a V3 company firmographic preview (same shape as Search Companies) with behavioral visit metrics.

Notes:
- Date range must be ≤ 3 months
- If any requested domain is not configured for tracking, the entire request fails with 400
- limit accepts 1–150

Endpoint: POST /v3/companies/website-visits
Security: ApiKeyAuth

## Request fields (application/json):

  - `domains` (array, required)
    Domains configured for tracking in the Lusha dashboard.
    Example: ["lusha.com","google.com"]

  - `startDate` (string, required)
    Window start date (YYYY-MM-DD).
    Example: "2026-01-01"

  - `endDate` (string, required)
    Window end date (YYYY-MM-DD). Range must be ≤ 3 months.
    Example: "2026-03-18"

  - `pagination` (object, required)

  - `pagination.size` (integer, required)
    Example: 25

  - `pagination.page` (integer, required)

  - `sort` (object)

  - `sort.by` (string)
    Field to sort by (e.g. score).
    Example: "score"

  - `sort.order` (string)
    Enum: "asc", "desc"

  - `filters` (object)

  - `filters.scoreBands` (array)
    Restrict to specific score bands.
    Enum: "cold", "warm", "hot"

  - `filters.visitorCountries` (object)
    ISO 3166-1 alpha-2 country code filters.

  - `filters.visitorCountries.include` (array)
    Example: ["US","GB"]

  - `filters.visitorCountries.exclude` (array)
    Example: ["CN"]

  - `filters.score` (object)
    Score range (1–100).

  - `filters.score.min` (integer)

  - `filters.score.max` (integer)

  - `filters.totalSessions` (object)
    Integer range filter (non-negative)

  - `filters.totalSessions.min` (integer)

  - `filters.totalSessions.max` (integer)

  - `filters.avgSessionMinutes` (object)
    Float range filter (non-negative)

  - `filters.avgSessionMinutes.min` (number)

  - `filters.avgSessionMinutes.max` (number)

  - `filters.uniqueVisitors` (object)
    Integer range filter (non-negative)

  - `filters.daysVisited` (object)
    Integer range filter (non-negative)

  - `filters.highIntentPageviews` (object)
    Integer range filter (non-negative)

  - `filters.daysSinceLastVisit` (object)
    Integer range filter (non-negative)

## Response 200 fields (application/json):

  - `requestId` (string)
    Example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"

  - `results` (array)

  - `results.clientReferenceId` (string)
    Example: "comp-ref-1"

  - `results.id` (string)
    Example: "16303253"

  - `results.name` (string)
    Example: "Lusha"

  - `results.domain` (string)
    Example: "www.lusha.com"

  - `results.employeeCount` (object)

  - `results.employeeCount.exact` (integer)
    Example: 364

  - `results.employeeCount.min` (integer)
    Example: 201

  - `results.employeeCount.max` (integer)
    Example: 500

  - `results.industry` (string)
    Example: "Technology, Information & Media"

  - `results.location` (object)

  - `results.location.city` (string)
    Example: "London"

  - `results.location.state` (string)
    Example: "England"

  - `results.location.stateCode` (string)
    Free field. ISO/postal state or region code, when available.
    Example: "MA"

  - `results.location.country` (string)
    Example: "United Kingdom"

  - `results.location.countryIso2` (string)
    Example: "GB"

  - `results.location.continent` (string)
    Example: "Europe"

  - `results.socialLinks` (object)

  - `results.socialLinks.linkedin` (string)
    Example: "https://www.linkedin.com/company/lushadata"

  - `results.has` (array)
    Available data points that can be revealed via Enrich Companies. Includes base firmographic fields plus new revealable fields: employeesByDepartment, employeesByLocation, employeesBySeniority, competitors, businessModel, phones, emails, keywords, socialLinks, estimatedAnnualItSpend, monthlyWebsiteTraffic.
    Example: ["alternativeName","alternativeDomains","description","companyType","yearFounded","subIndustry","specialities","sicCodes","naicsCodes","additionalLocations","linkedinFollowers","popularityTier","logoUrl","employeesByDepartment","employeesByLocation","employeesBySeniority","competitors","businessModel","phones","emails","keywords","socialLinks","estimatedAnnualItSpend","monthlyWebsiteTraffic"]

  - `results.canReveal` (array)
    Data fields that can be revealed via Enrich Companies, with the credit cost per field. A cost of 0 means the field has already been revealed for this account.
    Example: [{"field":"employeesByDepartment","credits":1},{"field":"employeesByLocation","credits":1},{"field":"employeesBySeniority","credits":1},{"field":"competitors","credits":1},{"field":"intent","credits":0},{"field":"estimatedAnnualItSpend","credits":1},{"field":"monthlyWebsiteTraffic","credits":1}]

  - `results.canReveal.field` (string)
    Enum: "emails", "phones"

  - `results.canReveal.credits` (integer)
    Credit cost (0 when already revealed for this account)
    Example: 1

  - `results.signalTypes` (array)
    Example: ["headcountIncrease3m"]

  - `results.error` (object)
    Per-item error in a batch response

  - `results.error.code` (string)
    Enum: "NOT_FOUND", "COMPLIANCE_RESTRICTED", "ENRICH_FAILED"

  - `results.error.message` (string)
    Example: "Contact not found"

  - `results.score` (number)
    Display score (0–100).
    Example: 87

  - `results.scoreBand` (string)
    Qualitative score band.
    Enum: "cold", "warm", "hot"

  - `results.totalSessions` (number)
    Total sessions in the window.
    Example: 12

  - `results.uniqueVisitors` (number)
    Distinct visitors in the window.
    Example: 5

  - `results.avgSessionMinutes` (number)
    Average session length in minutes.
    Example: 4.2

  - `results.daysVisited` (number)
    Distinct days with activity.
    Example: 8

  - `results.highIntentPageviews` (number)
    High-intent pageviews in the window.
    Example: 10

  - `results.daysSinceLastVisit` (number)
    Days since the most recent visit.
    Example: 6

  - `results.lastVisit` (string)
    Date of the last visit in the window.
    Example: "2026-03-20"

  - `results.visitorCountry` (string)
    Primary visitor country (ISO 3166-1 alpha-2). Omitted if unavailable.
    Example: "US"

  - `pagination` (object)

  - `pagination.size` (integer, required)
    Example: 25

  - `pagination.page` (integer, required)

  - `pagination.total` (integer, required)
    Total results across all pages.
    Example: 142

  - `billing` (object)
    Credit usage summary for a V3 API request

  - `billing.creditsCharged` (integer)
    Total credits charged for this request
    Example: 3

  - `billing.resultsReturned` (integer)
    Number of successful results returned
    Example: 1

## Response 400 fields (application/json):

  - `statusCode` (integer, required)
    HTTP status code
    Example: 400

  - `message` (string, required)
    Error message
    Example: "Validation failed"

  - `errors` (array)
    Detailed error messages (optional, only for validation errors)
    Example: ["entityType must be one of: contact, company"]


