Skip to main content
POST
Company Signals
Use this endpoint when you already have Lusha company IDs and want their signal activity - hiring surges, headcount changes, web traffic and IT spend shifts, and categorized news - in one call. Pass up to 100 ids and the signalTypes you want back; there is no separate “search” step in V3 - one call returns all matched signal data for the IDs you send.
Don’t have Lusha company IDs yet? Resolve companies first with Enrich Companies or Search & Enrich Companies, then pass the returned id values here.

Endpoint

Authentication: API key (ApiKeyAuth)

Request body

string[]
required
Lusha company IDs to retrieve signals for. 1–100 items per request.Example: ["16303253"]
string[]
required
Signal types to retrieve.Allowed values: allSignals, websiteTrafficIncrease, websiteTrafficDecrease, itSpendIncrease, itSpendDecrease, surgeInHiring, surgeInHiringByDepartment, surgeInHiringByLocation, headcountIncrease1m, headcountDecrease1m, headcountIncrease3m, headcountDecrease3m, headcountIncrease6m, headcountDecrease6m, headcountIncrease12m, headcountDecrease12m, riskNews, commercialActivityNews, corporateStrategyNews, financialEventsNews, peopleNews, marketIntelligenceNews, productActivityNewsUse allSignals to retrieve every available company signal type in one call.
string
Limit results to signals detected on or after this date, in YYYY-MM-DD format.Example: "2025-01-01"
integer
Maximum number of signal instances to return per signal type per company. Range: 1–100.Example: 10

Example request


Response

200 - Success

object[]
One entry per requested company ID.
Beyond id, companyName, and domain, each result also carries one array per signal type that matched - keyed by the signalTypes value you requested (for example surgeInHiring, financialEventsNews), the same keying pattern the contact signals response uses for promotion and companyChange.
string
The start date used for this request.
string
The end date used for this request (the request date, unless you’re querying historical data).
object
Credit usage summary for this request.
Billing: Charged per matched signal per result via the showSignalsCompany action.

Error codes

Authorizations

api_key
string
header
required

Your Lusha API key. You can find this in your Lusha dashboard under API settings. Include this key in the api_key header for all requests.

Body

application/json
ids
string[]
required
Required array length: 1 - 100 elements
Example:
signalTypes
enum<string>[]
required
Available options:
allSignals,
linkedinActivityIntent,
websiteTrafficDecrease,
websiteTrafficIncrease,
itSpendIncrease,
itSpendDecrease,
surgeInHiring,
headcountIncrease1m,
headcountIncrease3m,
headcountIncrease6m,
headcountIncrease12m,
headcountDecrease1m,
headcountDecrease3m,
headcountDecrease6m,
headcountDecrease12m,
surgeInHiringByDepartment,
surgeInHiringByLocation,
riskNews,
commercialActivityNews,
corporateStrategyNews,
financialEventsNews,
peopleNews,
marketIntelligenceNews,
productActivityNews
Example:
startDate
string<date>

For linkedinActivityIntent, results are limited to a trailing 90-day window regardless of the value passed (legal requirement). Other signal types are unaffected.

Example:

"2025-01-01"

maxResultsPerSignal
integer

For linkedinActivityIntent, results are capped at 50 per company regardless of the value passed. Other signal types use the requested value as-is (1-100).

Required range: 1 <= x <= 100
Example:

10

tableId
string

Optional. If provided, these companies are also added to this table (if not already present) and the Signals column is populated. See the Tables API.

Example:

"583021"

filters
object

Response

Successful response

results
object[]
startDate
string
endDate
string
tableWrite
object

Added to a Prospecting, Enrich, Signals, or Lookalike response when tableId is passed on the request. The primary response is unaffected even if the table write fails.

billing
object

Credit usage summary for a V3 API request