Skip to Content
CompanySpec
Concepts

Search & filters

Every filter, its values, and how filters combine.

POST /companies/search and POST /companies/count take these filters directly. POST /companies/similar takes them too, except query and semantic_query (the seed companies describe what you want). POST /pages/search, POST /job-postings/search and POST /vendors/{vendor}/customers take them inside a company object.

How filters combine

  • Different filters are combined with AND. countries: ["US"] plus employees: ["11-50"] means US companies with 11–50 employees.
  • Values inside one list match if the company has any of them. countries: ["US", "CA"] means US or Canada.
  • Lists with an *_operator (keywords, customer_types, customer_segments, compliance, technologies, vendors) default to all: compliance: ["SOC 2", "HIPAA"] means companies that claim both. Set compliance_operator: "or" for either.
  • page_types always means the company has all of the listed pages.

Filters

Get the valid values for most filters from GET /values/{field} (free), using the field name in the right-hand column.

FilterWhat it matchesValues
queryCompany name or domain contains this textAny text
semantic_queryPlain-language description of what they do and who they sell to. See Semantic searchAny text, up to 500 characters
countriesHQ countryISO codes, e.g. US, GB (/values/countries)
states, citiesHQ state or city/values/states, /values/cities
regionsHQ regionSee /values/regions
office_locationsAny office, not just HQCities or country codes
typeOwnership typeprivate, public, nonprofit, government, educational, partnership, self-employed, self-owned
employeesEmployee range1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K
revenueAnnual revenue (USD)under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b
founded_yearYear founded{ "min": 2015, "max": 2022 }
industriesIndustry/values/industries
naics_codes, sic_codesIndustry codes; shorter NAICS codes include everything beneath them/values/naics_codes, /values/sic_codes
keywordsKeywords on the company profileAny text
customer_typesWho they sell toe.g. B2B, B2C, B2G (all values: /values/customer_types)
customer_segmentsKinds of customers they sell toe.g. enterprise, smb, government (all values: /values/customer_segments)
complianceCertifications they claim on their websitee.g. SOC 2, HIPAA, ISO 27001 (all values: /values/compliance)
technologiesTechnologies they use; technology_source sets where it was found (website, jobs, any)Slugs from /technologies
vendorsService providers named in their subprocessor listSlugs from /technologies, e.g. aws
page_typesHas these pages on their websitehome, pricing, about, careers, blog, legal, integrations, case_studies, login, status, engineering, support, cart, compliance (what each is)
funding_roundsHas raised these round typesseed, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, debt_financing, other
funding_amountTotal funding (USD){ "min": 1000000 }
funding_yearYear of most recent round{ "min": 2024 }
investorsBacked by these investorsNames or domains
workforce_sizeHeadcount in a department[{ "department": "engineering", "min": 20 }]. Departments: e.g. engineering, sales (all values: /values/workforce_departments)
workforce_growthHeadcount growth{ "period": "y1", "min_percent": 20 }. Periods: m6, y1, y2 (6 months, 1 year, 2 years)
recent_hiresRecently hired people. See Recent hires{ "departments": ["sales"], "within_days": 90, "min_count": 2 }. Departments: e.g. sales, engineering, marketing, finance, operations, product (all values: /values/hire_departments). Seniorities: e.g. entry, mid, senior, director, executive (all values: /values/hire_seniorities)
hiringHas open job postings{ "job_functions": ["sales"], "posted_within_days": 30 }. Functions: e.g. engineering, sales (all values: /values/job_functions). Seniorities: e.g. mid, senior (all values: /values/job_seniorities)
newsHas recent news{ "categories": ["launches"], "within_days": 90 }. Categories: e.g. launches (all values: /values/news_categories)
requireHas this datalinkedin, twitter, icp, pricing_page, funding, revenue, founded_year, hq_city, open_jobs
excludeRemove companies matching any of these{ "domains": ["acme.com"], "employees": ["1-10"] }

Example

{
  "semantic_query": "practice management software for independent dental practices",
  "countries": ["US"],
  "employees": ["11-50", "51-200"],
  "customer_types": ["B2B"],
  "compliance": ["HIPAA"],
  "recent_hires": { "departments": ["sales"], "within_days": 90 },
  "exclude": { "domains": ["acmedental.io"] },
  "limit": 25
}

Order of results

  • With semantic_query: by match.score, highest first. semantic_weight (0–1, default 0.7) sets how much relevance counts against company size and web traffic.
  • Without it: larger companies with more web traffic first.

Pagination

limit is 1–100 per page (default 25). Responses include next_cursor; pass it as cursor to get the next page. A cursor is valid for 24 hours. A search returns at most 1,000 results in total; narrow your filters if you need different ones. Each new company on a later page is charged like the first page.

Pricing information

Pricing is stored as a paragraph, so there is no price filter. To find companies by pricing details, search inside pricing pages with POST /pages/search and page_types: ["pricing"].

On this page