---
title: "Discover similar businesses"
method: GET
path: "/discover"
---

# Discover similar businesses

`GET /discover`

Search firmographic data using domain matching, ICP text matching, or phrase matching. Returns business profiles ranked by relevance with optional AI enhancement.

## Query parameters

- `phrase_match` string[], nullable — Exact text fragments to search for in site content. Up to 20 fragments allowed.
- `negate_phrase_match` string[], nullable — Exact text fragments to exclude from results. Up to 20 fragments allowed.
- `subdomain` string[], nullable — Limit results to specified subdomains. Maximum 10 allowed.
- `negate_subdomain` string[], nullable — Exclude specified subdomains from results. Maximum 10 allowed.
- `tech_stack` string[], nullable — Filter to companies using specified vendor domains (up to 20).
- `negate_tech_stack` string[], nullable — Exclude companies using specified vendor domains (up to 20).
- `category` string[], nullable — Filter by industry category. Valid values: ACCOUNTING, ADVERTISING_AND_MARKETING, AGRICULTURE_AND_NATURAL_RESOURCES, ALCOHOL_AND_TOBACCO, AUTOMOTIVE, BIG_DATA_AND_ANALYTICS, BIOTECHNOLOGY, BLOCKCHAIN_AND_CRYPTOCURRENCY, BUSINESS_PRODUCTS_AND_SERVICES, CLOUD_COMPUTING, COMPUTER_HARDWARE_AND_SEMICONDUCTORS, CONGLOMERATES_SHELL_AND_HOLDING_COMPANIES, CONSTRUCTION, CONSUMER_PRODUCTS, CONSUMER_SERVICES, CYBERSECURITY, DEFENSE_AND_AEROSPACE, E-COMMERCE, EDUCATION, ENERGY, ENGINEERING, ENTERTAINMENT, ENVIRONMENTAL_SERVICES, FASHION_TEXTILE_AND_APPAREL, FINANCIAL_SERVICES, FOOD_AND_BEVERAGE, GAMING_AND_ESPORTS, GOVERNMENT_SERVICES, HEALTHCARE, HOSPITALITY, HUMAN_RESOURCES, INSURANCE, IT_SERVICES, LEGAL, MANUFACTURING, MEDIA, MINING_AND_METALS, NONPROFIT_AND_PHILANTHROPY, OIL_AND_GAS, PHARMACEUTICALS, PRIVATE_EQUITY_AND_VENTURE_CAPITAL, REAL_ESTATE, RENEWABLE_ENERGY, RESTAURANTS, RETAIL, SAAS, SECURITY, SOFTWARE, SPORTS_AND_RECREATION, SUPPLY_CHAIN_AND_PROCUREMENT, TELECOMMUNICATIONS, TRAVEL, WELLNESS_AND_LIFESTYLE.
- `negate_category` string[], nullable — Exclude specified industry categories. Valid values: ACCOUNTING, ADVERTISING_AND_MARKETING, AGRICULTURE_AND_NATURAL_RESOURCES, ALCOHOL_AND_TOBACCO, AUTOMOTIVE, BIG_DATA_AND_ANALYTICS, BIOTECHNOLOGY, BLOCKCHAIN_AND_CRYPTOCURRENCY, BUSINESS_PRODUCTS_AND_SERVICES, CLOUD_COMPUTING, COMPUTER_HARDWARE_AND_SEMICONDUCTORS, CONGLOMERATES_SHELL_AND_HOLDING_COMPANIES, CONSTRUCTION, CONSUMER_PRODUCTS, CONSUMER_SERVICES, CYBERSECURITY, DEFENSE_AND_AEROSPACE, E-COMMERCE, EDUCATION, ENERGY, ENGINEERING, ENTERTAINMENT, ENVIRONMENTAL_SERVICES, FASHION_TEXTILE_AND_APPAREL, FINANCIAL_SERVICES, FOOD_AND_BEVERAGE, GAMING_AND_ESPORTS, GOVERNMENT_SERVICES, HEALTHCARE, HOSPITALITY, HUMAN_RESOURCES, INSURANCE, IT_SERVICES, LEGAL, MANUFACTURING, MEDIA, MINING_AND_METALS, NONPROFIT_AND_PHILANTHROPY, OIL_AND_GAS, PHARMACEUTICALS, PRIVATE_EQUITY_AND_VENTURE_CAPITAL, REAL_ESTATE, RENEWABLE_ENERGY, RESTAURANTS, RETAIL, SAAS, SECURITY, SOFTWARE, SPORTS_AND_RECREATION, SUPPLY_CHAIN_AND_PROCUREMENT, TELECOMMUNICATIONS, TRAVEL, WELLNESS_AND_LIFESTYLE.
- `min_digital_footprint` integer, nullable — Minimum digital footprint score (0-800). Default 50.
- `max_digital_footprint` integer, nullable — Maximum digital footprint score (0-800). Default 800.
- `state` string[], nullable — Filter by state codes (up to 100). Not supported with multiple countries.
- `negate_state` string[], nullable — Exclude specified states from results (up to 100).
- `country` string[], nullable — Filter by ISO-3166-1 alpha-2 country codes (e.g., US, GB, DE). Also accepts region aliases: EU, LATAM, MENA, APAC, NORDICS, DACH, BENELUX, GCC, ASEAN, CEE, ANZ.
- `negate_country` string[], nullable — Exclude specified countries from results. Accepts same codes and region aliases as country.
- `start_date` string, nullable — Minimum company start date (YYYY-MM-DD) or range (YYYY-MM-DD,YYYY-MM-DD).
- `redirect` boolean — Include domains that redirect to another domain.
- `social` string[], nullable — Filter by social platform presence. Valid values: facebook, instagram, linkedin, pinterest, threads, tiktok, twitter, x, yelp, youtube, googleplay, applestore, amazon, vk, bluesky, xing. Note: 'twitter' is an alias for 'x'.
- `negate_social` string[], nullable — Exclude companies with specified social profiles. Filter by social platform presence. Valid values: facebook, instagram, linkedin, pinterest, threads, tiktok, twitter, x, yelp, youtube, googleplay, applestore, amazon, vk, bluesky, xing. Note: 'twitter' is an alias for 'x'.
- `language` string[], nullable — Filter by site language. Valid values: ar (Arabic), az (Azerbaijani), bg (Bulgarian), bn (Bengali), ca (Catalan), cs (Czech), da (Danish), de (German), el (Greek), en (English), eo (Esperanto), es (Spanish), et (Estonian), eu (Basque), fa (Persian), fi (Finnish), fr (French), ga (Irish), gl (Galician), he (Hebrew), hi (Hindi), hu (Hungarian), id (Indonesian), it (Italian), ja (Japanese), ko (Korean), ky (Kyrgyz), lt (Lithuanian), lv (Latvian), ms (Malay), nb (Norwegian Bokmål), nl (Dutch), pb (Portuguese (Brazilian)), pl (Polish), pt (Portuguese), ro (Romanian), ru (Russian), sk (Slovak), sl (Slovenian), sq (Albanian), sv (Swedish), sw (Swahili), th (Thai), tl (Tagalog), tr (Turkish), uk (Ukrainian), ur (Urdu), vi (Vietnamese), zh (Chinese (Simplified)), zt (Chinese (Traditional)).
- `negate_language` string[], nullable — Exclude specified languages from results. Filter by site language. Valid values: ar (Arabic), az (Azerbaijani), bg (Bulgarian), bn (Bengali), ca (Catalan), cs (Czech), da (Danish), de (German), el (Greek), en (English), eo (Esperanto), es (Spanish), et (Estonian), eu (Basque), fa (Persian), fi (Finnish), fr (French), ga (Irish), gl (Galician), he (Hebrew), hi (Hindi), hu (Hungarian), id (Indonesian), it (Italian), ja (Japanese), ko (Korean), ky (Kyrgyz), lt (Lithuanian), lv (Latvian), ms (Malay), nb (Norwegian Bokmål), nl (Dutch), pb (Portuguese (Brazilian)), pl (Polish), pt (Portuguese), ro (Romanian), ru (Russian), sk (Slovak), sl (Slovenian), sq (Albanian), sv (Swedish), sw (Swahili), th (Thai), tl (Tagalog), tr (Turkish), uk (Ukrainian), ur (Urdu), vi (Vietnamese), zh (Chinese (Simplified)), zt (Chinese (Traditional)).
- `employee_range` string, nullable — Filter by employee count range. Format: 'min,max' (e.g., '1,5000'). Maps to buckets: 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+.
- `revenue_range` string, nullable — Filter by company revenue. Format: 'min,max' in raw numbers (e.g., '1000000,10000000' for 1M-10M). Maps to buckets: <1M, 1-10M, 10-100M, 100M-1B, >1B. Unknown-revenue domains (N/A) are included when the range covers the <1M bucket.
- `business_model` string[], nullable — Filter by business model label. Multi-select with OR semantics. Valid values: B2B, B2C, B2G, G2B, G2C, D2C, C2C, C2B.
- `negate_business_model` string[], nullable — Exclude domains with these business model labels. Filter by business model label. Multi-select with OR semantics. Valid values: B2B, B2C, B2G, G2B, G2C, D2C, C2C, C2B.
- `exclude_leadgen` boolean — Exclude suspected lead generation sites. Filters out profiles with score <= 25 that also lack phone, email, and social media presence.
- `exact_match` string[], nullable
- `negate_exact_match` string[], nullable
- `vendor` string[], nullable
- `negate_vendor` string[], nullable
- `min_score` integer, nullable
- `max_score` integer, nullable
- `domain` string[], nullable — Domain(s) for lookalike matching. Up to 10 domains allowed.
- `negate_domain` string[], nullable — Exclude results matching these domain contexts. Up to 10 domains.
- `exclude_domain` string[], nullable — Hard-exclude these exact domains from results without affecting lookalike matching. Accepts comma-separated or repeated params. Up to 100 domains. Requires PRO plan.
- `icp_text` string, nullable — Natural language description of ideal customer profile for semantic matching.
- `negate_icp_text` string, nullable — Description of business concepts to exclude from results.
- `retrieval` boolean — Enable page data retrieval using Extract API.
- `enhanced` boolean — Enable AI-powered result enhancement for improved relevance.
- `include_search_domains` boolean — Include input domains in results (excluded by default).
- `max_records` integer — Maximum records to return (5-10000). Default 100.
- `consensus` integer — Number of top results for consensus search vector (1-20). Higher values reduce specificity.
- `min_similarity` integer — Minimum similarity score to include (0-99).
- `variance` 'LOW' | 'MID_LOW' | 'MEDIUM' | 'MID_HIGH' | 'HIGH' | 'UNRESTRICTED' — Result diversity control: LOW, MID_LOW, MEDIUM, MID_HIGH, HIGH, UNRESTRICTED.
- `offset` integer — Records to skip for pagination.
- `exclusion_query_id` string[], nullable — Exclude domains from saved queries. Requires PRO plan.
- `inclusion_query_id` string[], nullable — Include domains from saved queries. Requires STARTER plan.
- `auto_icp_text` boolean — Auto-generate ICP text from provided domain(s).
- `auto_phrase_match` boolean — Auto-generate phrase matches from ICP text.
- `icp_prompt` string, nullable — Natural language ICP description. Automatically extracts structured filters, generates ICP text, suggests domains, and applies them before running discovery. Overrides auto_icp_text and auto_phrase_match when set.
- `nl_match` string, nullable
- `negate_nl_match` string, nullable

## Response `200`

Successful Response

- DiscoverResult[]
  - `domain` string, required — Company domain and unique record identifier
  - `name` string, nullable — Latest and most accurate company name from certificate or website
  - `status` CompanyStatus — Company operating status with confidence score.
    - `status` string, nullable — Operating status: 'active' or 'closed'
    - `confidence` number, nullable — Confidence score for the status (0.0-1.0)
  - `score` integer, nullable — Company size and buying power computed from certificates history (1-800)
  - `start_date` string, nullable — Company start date, derived from the date of the first certificate (YYYY-MM-DD)
  - `end_date` string, nullable — Company end date if closed (YYYY-MM-DD), empty if still in business
  - `address` CompanyAddress — Company headquarters address from website metatags or content.
    - `street` string, nullable — Street address of HQ, from website metatags or content
    - `city` string, nullable — City, from website metatags or content
    - `state` string, nullable — State code, from website metatags or content
    - `zip` string, nullable — ZIP/postal code, from website metatags or content
    - `country` string, nullable — Two-letter country code (ISO 3166-1 alpha-2), from website metatags or content
  - `phones` string[], nullable — Array of phone numbers listed on the website
  - `public_emails` string[], nullable — Array of contact emails listed on the website
  - `domain_associations` string[] — Associated domains
  - `social_urls` string[], nullable — URLs pointing to the company page on Twitter, LinkedIn, Facebook
  - `redirect_domain` string, nullable — Last domain in the redirect chain, if any
  - `description` string, nullable — Description, from website metatags or content
  - `keywords` object — Keywords generated by Natural Language Models based on site content, as keyword:confidence pairs
  - `industry_groups` object — Top industries (up to 2), as industry:confidence pairs
  - `employees` string, nullable — Employee count bucket (output only). To filter, use employee_range with 'min,max' format (e.g., '51,200')
  - `revenue_range` '<1M' | '1-10M' | '10-100M' | '100M-1B' | '>1B' | 'N/A', nullable — Company revenue bucket: <1M, 1-10M, 10-100M, 100M-1B, >1B, or N/A when unknown
  - `business_model` object — Business model labels as label:confidence pairs (B2B, B2C, B2G, G2B, G2C, D2C, C2C, C2B)
  - `update_date` string, nullable — Date of last record update (YYYY-MM-DD)
  - `mx_provider` string, nullable — Email/MX hosting provider for the domain: a provider domain (e.g. 'google.com', 'microsoft.com'), the sentinel 'no_mx' when the domain was checked and has no mail server, or null when not resolved
  - `linkup` unknown
  - `similarity` number, nullable — Similarity score 0-100 between output domain and query domains or NL text
  - `vendors` string[], nullable — Technology vendors used by company (when tech_stack filter is used)

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/discolike/apis/discolike-api.md) · [All operations](https://skmtc.net/discolike/apis/discolike-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/discolike/discolike-api/versions/3248fc62024c/schema)
