Skip to main content
GET
Segment technology stats API

Frequently asked questions

live_active_domains is every domain currently running the technology. matched_domains is the subset with a matched company record. segment_domains is the subset of those that pass your predicates. They come from a single pass, so segment_domains ≤ matched_domains ≤ live_active_domains always holds and the ratios are internally consistent.
A request with a technology but no predicate is rejected with MISSING_SEGMENT. Without a predicate this endpoint would just re-derive global technology stats at much greater cost — use the technology stats endpoint for that.
Yes. Results are cached for 24 hours, and a cache hit still costs 1 credit — the response tells you with cache.hit and cache.age_seconds. This is deliberate: a change to our caching should never become a silent change to your price.
Yes, pass segment_id. It is mutually exclusive with inline firmographic parameters. Note that only firmographic audiences replay here — other kinds are rejected with a pointer to the technology report, which is the right endpoint for their per-technology numbers.
A broad segment over a very large technology can exceed the 30-second query limit. It is surfaced as SEGMENT_QUERY_TIMEOUT and is never retried server-side. Narrow the segment — add an employee band, an industry or a city.

Authorizations

Authorization
string
header
required

API key in format tapi_live_[32-char] (live) or tapi_test_[32-char] (test)

Query Parameters

technology_id
integer

The technology to measure. Provide this or technology.

technology
string

The technology to measure, by exact name.

country
string

Filter to companies in this country (case-insensitive).

city
string

Filter to companies in this city (case-insensitive).

state
string

Filter to companies in this state or region (case-insensitive).

industry
string

Filter to companies in this industry (case-insensitive).

industry_code
integer

Filter by exact LinkedIn industry code.

employees
string

Filter by exact LinkedIn employee band. Unknown bands are rejected with INVALID_EMPLOYEE_BAND and the allowed list.

company_type
string

Filter by exact company type.

founded_min
integer

Only companies founded in or after this year.

Required range: 1800 <= x <= 2025
founded_max
integer

Only companies founded in or before this year.

Required range: 1800 <= x <= 2025
has_email
boolean

Filter to domains where the crawler found (or did not find) an email address. false is a real filter, not a no-op.

has_phone
boolean

Filter to domains where the crawler found (or did not find) a phone number.

social
enum<string>

Filter to domains publishing a profile on this platform.

Available options:
linkedin,
x,
facebook,
instagram,
youtube,
github,
tiktok,
discord,
reddit,
crunchbase,
slack
language
string

Filter by the site's primary language.

web_country
string

Filter by the country the site declares in its schema.org markup. Accepts ISO-2, English name or common variants.

segment_id
string

Apply a saved audience instead of inline filters. Filter audiences replay their firmographic predicates; list audiences restrict rows to their member domains. Mutually exclusive with inline firmographic parameters.

Response

Three self-consistent counts plus the share of matched companies

success
boolean
Example:

true

data
object