Skip to main content

Search Companies

Coming soon

The v2 MCP API is in preview and not yet generally available. These pages document its tools and request/response shapes; live data access is limited to enrolled organizations until v2 is released.

Search and discover companies using the HG Insights v2 search API. Each filter group is a separate, optional parameter; groups combine with AND semantics.

Use this when:

  • Building a prospect or ICP list (e.g. "US corporate parents with 1K+ employees using Oracle").
  • Filtering by technology installs, intent, or AI/GenAI maturity.
  • Whitespace analysis — exclude known CRM accounts (company_identifiers.company_ids with NONE_PRESENT). Do NOT use this when you already know the company domain or hg_id — call company_firmographic instead.

To find companies by name use company_identifiers.name (case-insensitive token substring match); with an exact domain, company_identifiers.domains is more precise. Resolve product/vendor/category IDs first: invalid IDs are NOT rejected — they match nothing and return total_count 0, indistinguishable from a genuine zero-match.

GUARDRAIL: broad firmographic-only filters (e.g. countries=["US"], or revenue/employee alone) match hundreds of thousands to millions of records. Always pair a firmographic-only filter with a meaningful installs, intent, industry, or geography filter (≥2 filter groups).

⚠ TOKEN BUDGET: rows are lean (four identity columns), but limit is capped at 100 (default 10). Use 10–50 for exploration and paginate with offset for bulk workflows; total_count reports matches across all pages.

NOTE: sorting on a ranking signal (e.g. ai_maturity_score) orders results but never adds a column — the four returnable fields are unchanged, so a sort is a no-op for the payload shape.

Response: companies[]{hg_id, name, domain, domain_normalized} + total_count. AI-maturity/GenAI scores, revenue, employees, country, and industry are filterable/sortable but NOT returned — call company_firmographic with hg_id for those.

Parameters

NameTypeRequiredDefaultDescription
company_identifiersobject❌ No-Filters by known company identifiers (HG IDs, domains, or name).
company_identifiers.company_idsobject❌ No-HG company hex IDs (32-char). Use ANY_PRESENT to include; NONE_PRESENT to exclude known accounts (whitespace analysis).
company_identifiers.company_ids.idsarray✅ Yes-Hex-encoded IDs
company_identifiers.company_ids.inclusion_methodstring✅ Yes-
company_identifiers.company_ids_including_corporate_relativesobject❌ No-Like company_ids but also matches the entire corporate family of each provided ID.
company_identifiers.company_ids_including_corporate_relatives.idsarray✅ Yes-Hex-encoded IDs
company_identifiers.company_ids_including_corporate_relatives.inclusion_methodstring✅ Yes-
company_identifiers.domainsobject❌ No-Filter by normalized company domain. NONE_PRESENT excludes those domains.
company_identifiers.domains.idsarray✅ Yes-Company domains (e.g. "cisco.com")
company_identifiers.domains.inclusion_methodstring✅ Yes-
company_identifiers.namestring❌ No-Free-text company-name search. Case-insensitive substring match — every space-separated token must appear in the company name (e.g. "acme corp" matches "Acme Corporation"). Use when you have a name but not a domain or hg_id.
firmographicsobject❌ No-Firmographic-based filters: company hierarchy, geography, size, and industry.
firmographics.company_levelstring❌ No-Hierarchy level. CORPORATE_PARENT = brand-level; GLOBAL_HEADQUARTER = ultimate parent. Omit for all entities.
firmographics.country_codesarray❌ No-HQ country filter. Multiple clauses combine. NONE_PRESENT to exclude countries.
firmographics.country_codes[].idsarray✅ Yes-ISO-2 country codes, e.g. ["US","DE"]
firmographics.country_codes[].inclusion_methodstring✅ Yes-
firmographics.region_namesobject❌ No-Geographic region — ids accepts "AMER", "APAC", "EMEA", "LATAM", etc. Only ANY_PRESENT supported.
firmographics.region_names.idsarray✅ Yes-Literal region code strings, e.g. "AMER", "APAC", "EMEA", "LATAM" — NOT hex IDs.
firmographics.region_names.inclusion_methodstring✅ Yes-
firmographics.state_idsobject❌ No-US state hex IDs. Only ANY_PRESENT supported.
firmographics.state_ids.idsarray✅ Yes-US state hex IDs (32-char) — resolve via search_industries_naics_sic or company_firmographic, NOT literal state names/abbreviations.
firmographics.state_ids.inclusion_methodstring✅ Yes-
firmographics.employeesobject❌ No-Employee count filter.
firmographics.employees.mininteger❌ No-Minimum employee count
firmographics.employees.maxinteger❌ No-Maximum employee count
firmographics.employees.has_fixed_employeesboolean❌ No-true = only companies with a fixed headcount (exclude ranged records)
firmographics.revenueobject❌ No-Annual revenue filter in USD (HG proprietary estimate).
firmographics.revenue.minnumber❌ No-Minimum annual revenue in USD
firmographics.revenue.maxnumber❌ No-Maximum annual revenue in USD
firmographics.revenue.has_fixed_revenueboolean❌ No-true = only companies with a fixed revenue value (exclude ranged records)
firmographics.industriesarray❌ No-HG industry filter. Multiple clauses combine.
firmographics.industries[].idsarray✅ Yes-HG industry integer IDs — resolve via search_industries_naics_sic
firmographics.industries[].inclusion_methodstring✅ Yes-
firmographics.naics_codesarray❌ No-NAICS filter. Array of clauses; each clause carries EITHER hex ids OR raw codes (exactly one). Multiple clauses combine.
firmographics.naics_codes[].idsarray❌ No-HG internal NAICS hex IDs (32-char) — NOT raw code strings
firmographics.naics_codes[].codesarray❌ No-Raw NAICS code strings, e.g. ["5221"]
firmographics.naics_codes[].inclusion_methodstring✅ Yes-
firmographics.sic_codesarray❌ No-SIC filter. Array of clauses; each clause carries EITHER hex ids OR raw codes (exactly one). Multiple clauses combine.
firmographics.sic_codes[].idsarray❌ No-HG internal SIC hex IDs (32-char) — NOT raw code strings
firmographics.sic_codes[].codesarray❌ No-Raw SIC code strings, e.g. ["5912"]
firmographics.sic_codes[].inclusion_methodstring✅ Yes-
installsobject❌ No-Filters on detected technology installs (technographics).
installs.productsarray❌ No-Filter by installed products. Array allows combining multiple inclusion methods (e.g. must have A, must not have B).
installs.products[].idsarray✅ Yes-HG product IDs — resolve via get_vendor_information or product_search_and_enrich. Invalid IDs are not rejected: they match nothing and return total_count 0.
installs.products[].inclusion_methodstring✅ Yes-ANY_PRESENT = has at least one; ALL_PRESENT = has all; NONE_PRESENT = has none
installs.products[].faiobject❌ No-Functional Area Intelligence — narrow installs by associated buying-committee departments and/or roles. At least one of departments/roles required.
installs.products[].fai.departmentsobject❌ No-Buying-committee departments (hex IDs).
installs.products[].fai.departments.idsarray✅ Yes-Functional-area hex IDs
installs.products[].fai.departments.inclusion_methodstring✅ Yes-
installs.products[].fai.rolesobject❌ No-Buying-committee roles (hex IDs).
installs.products[].fai.roles.idsarray✅ Yes-Functional-area hex IDs
installs.products[].fai.roles.inclusion_methodstring✅ Yes-
installs.products[].install_ageobject❌ No-Install age in years
installs.products[].install_age.mininteger❌ No-
installs.products[].install_age.maxinteger❌ No-
installs.products[].install_age_monthsobject❌ No-Install age in months
installs.products[].install_age_months.mininteger❌ No-
installs.products[].install_age_months.maxinteger❌ No-
installs.products[].intensityobject❌ No-Install intensity score
installs.products[].intensity.mininteger❌ No-
installs.products[].intensity.maxinteger❌ No-
installs.vendorsarray❌ No-Filter by vendor installs. Array allows combining multiple inclusion methods.
installs.vendors[].idsarray✅ Yes-HG vendor IDs — resolve via get_vendor_information. Invalid IDs are not rejected: they match nothing and return total_count 0.
installs.vendors[].inclusion_methodstring✅ Yes-
installs.vendors[].faiobject❌ No-Functional Area Intelligence — narrow installs by associated buying-committee departments and/or roles. At least one of departments/roles required.
installs.vendors[].fai.departmentsobject❌ No-Buying-committee departments (hex IDs).
installs.vendors[].fai.departments.idsarray✅ Yes-Functional-area hex IDs
installs.vendors[].fai.departments.inclusion_methodstring✅ Yes-
installs.vendors[].fai.rolesobject❌ No-Buying-committee roles (hex IDs).
installs.vendors[].fai.roles.idsarray✅ Yes-Functional-area hex IDs
installs.vendors[].fai.roles.inclusion_methodstring✅ Yes-
installs.vendors[].product_countobject❌ No-Number of products from this vendor installed
installs.vendors[].product_count.mininteger❌ No-
installs.vendors[].product_count.maxinteger❌ No-
installs.vendors[].install_ageobject❌ No-
installs.vendors[].install_age.mininteger❌ No-
installs.vendors[].install_age.maxinteger❌ No-
installs.vendors[].install_age_monthsobject❌ No-
installs.vendors[].install_age_months.mininteger❌ No-
installs.vendors[].install_age_months.maxinteger❌ No-
installs.product_categoriesobject❌ No-Filter by product category.
installs.product_categories.idsarray✅ Yes-Product category hex IDs (32-char) — resolve via get_product_category. Invalid IDs are not rejected: they match nothing and return total_count 0.
installs.product_categories.inclusion_methodstring✅ Yes-
installs.product_categories.faiobject❌ No-Functional Area Intelligence — narrow installs by associated buying-committee departments and/or roles. At least one of departments/roles required.
installs.product_categories.fai.departmentsobject❌ No-Buying-committee departments (hex IDs).
installs.product_categories.fai.departments.idsarray✅ Yes-Functional-area hex IDs
installs.product_categories.fai.departments.inclusion_methodstring✅ Yes-
installs.product_categories.fai.rolesobject❌ No-Buying-committee roles (hex IDs).
installs.product_categories.fai.roles.idsarray✅ Yes-Functional-area hex IDs
installs.product_categories.fai.roles.inclusion_methodstring✅ Yes-
installs.product_categories.install_ageobject❌ No-
installs.product_categories.install_age.mininteger❌ No-
installs.product_categories.install_age.maxinteger❌ No-
installs.product_categories.install_age_monthsobject❌ No-
installs.product_categories.install_age_months.mininteger❌ No-
installs.product_categories.install_age_months.maxinteger❌ No-
installs.product_attributesobject❌ No-Filter by product attributes.
installs.product_attributes.idsarray✅ Yes-Product attribute integer IDs
installs.product_attributes.inclusion_methodstring✅ Yes-
installs.product_attributes.install_ageobject❌ No-
installs.product_attributes.install_age.mininteger❌ No-
installs.product_attributes.install_age.maxinteger❌ No-
installs.product_attributes.install_age_monthsobject❌ No-
installs.product_attributes.install_age_months.mininteger❌ No-
installs.product_attributes.install_age_months.maxinteger❌ No-
installs.countryobject❌ No-Filter by the install's own country (where the technology is deployed) — NOT the company HQ country.
installs.country.codesarray✅ Yes-ISO 3166-1 alpha-2 codes, e.g. ["US","GB"]
installs.product_last_verified_dateobject❌ No-Filter installs by their last-verified date (inclusive YYYY-MM-DD range). At least one of min/max required.
installs.product_last_verified_date.minstring❌ No-Earliest date, inclusive (YYYY-MM-DD).
installs.product_last_verified_date.maxstring❌ No-Latest date, inclusive (YYYY-MM-DD).
intentobject❌ No-Intent signal filters — companies showing buying interest on topics or in locations.
intent.topicsobject❌ No-Intent topics (buying signal). ALL_PRESENT = company shows signal on all listed topics.
intent.topics.idsarray✅ Yes-Intent topic hex IDs — resolve via list_intent_topics
intent.topics.inclusion_methodstring✅ Yes-
intent.signal_scorestring❌ No-Minimum signal intensity: MEDIUM (score 65–84) or HIGH (score 85–100).
intent.context_type_idsobject❌ No-Intent context type hex IDs.
intent.context_type_ids.idsarray✅ Yes-Hex-encoded IDs
intent.context_type_ids.inclusion_methodstring✅ Yes-
intent.buyers_journey_idsobject❌ No-Buyer's journey stage hex IDs.
intent.buyers_journey_ids.idsarray✅ Yes-Hex-encoded IDs
intent.buyers_journey_ids.inclusion_methodstring✅ Yes-
intent.number_of_cadencesinteger❌ No-Number of cadences showing intent.
intent.locationobject❌ No-Filter by where the intent signal was detected (not company HQ). At least one sub-field required.
intent.location.country_alpha2sarray❌ No-
intent.location.country_alpha2s[].idsarray✅ Yes-ISO-2 country codes
intent.location.country_alpha2s[].inclusion_methodstring✅ Yes-
intent.location.region_namesobject❌ No-
intent.location.region_names.idsarray✅ Yes-Hex-encoded IDs
intent.location.region_names.inclusion_methodstring✅ Yes-
intent.location.state_idsobject❌ No-
intent.location.state_ids.idsarray✅ Yes-Hex-encoded IDs
intent.location.state_ids.inclusion_methodstring✅ Yes-
ai_maturityobject❌ No-AI and data maturity filters.
ai_maturity.ai_maturity_scoreobject❌ No-Composite AI maturity score (0–100).
ai_maturity.ai_maturity_score.minnumber❌ No-
ai_maturity.ai_maturity_score.maxnumber❌ No-
ai_maturity.ai_maturity_rankobject❌ No-AI maturity rank (1 = highest).
ai_maturity.ai_maturity_rank.mininteger❌ No-
ai_maturity.ai_maturity_rank.maxinteger❌ No-
ai_maturity.ai_maturity_6m_deltaobject❌ No-6-month change in AI maturity score.
ai_maturity.ai_maturity_6m_delta.minnumber❌ No-
ai_maturity.ai_maturity_6m_delta.maxnumber❌ No-
ai_maturity.genai_intent_scoreobject❌ No-GenAI buying-intent score (0–100).
ai_maturity.genai_intent_score.mininteger❌ No-
ai_maturity.genai_intent_score.maxinteger❌ No-
ai_maturity.ai_product_useboolean❌ No-true = only companies with an AI product installed.
ai_maturity.data_maturity_levelarray❌ No-Data maturity tier.
ai_maturity.dominant_cloud_providerarray❌ No-Dominant cloud provider name(s).
cloud_maturityobject❌ No-Cloud adoption/maturity filters (integer ranges).
cloud_maturity.aws_products_countobject❌ No-Count of AWS products in the stack.
cloud_maturity.aws_products_count.mininteger❌ No-
cloud_maturity.aws_products_count.maxinteger❌ No-
cloud_maturity.azure_products_countobject❌ No-Count of Azure products in the stack.
cloud_maturity.azure_products_count.mininteger❌ No-
cloud_maturity.azure_products_count.maxinteger❌ No-
cloud_maturity.gcp_products_countobject❌ No-Count of GCP products in the stack.
cloud_maturity.gcp_products_count.mininteger❌ No-
cloud_maturity.gcp_products_count.maxinteger❌ No-
cloud_maturity.cloud_stack_percent_changeobject❌ No-Change in cloud stack size — may be negative (min/max accept negative bounds).
cloud_maturity.cloud_stack_percent_change.mininteger❌ No-
cloud_maturity.cloud_stack_percent_change.maxinteger❌ No-
cloud_maturity.current_products_used_cloud_percentobject❌ No-Cloud share (%) of current products used.
cloud_maturity.current_products_used_cloud_percent.mininteger❌ No-
cloud_maturity.current_products_used_cloud_percent.maxinteger❌ No-
cloud_maturity.current_products_used_total_countobject❌ No-Total count of current products used.
cloud_maturity.current_products_used_total_count.mininteger❌ No-
cloud_maturity.current_products_used_total_count.maxinteger❌ No-
cloud_maturity.new_products_used_cloud_percentobject❌ No-Cloud share (%) of newly-adopted products.
cloud_maturity.new_products_used_cloud_percent.mininteger❌ No-
cloud_maturity.new_products_used_cloud_percent.maxinteger❌ No-
corporate_hierarchyobject❌ No-DEPRECATED — prefer firmographics.company_level, which takes precedence when both are set. Boolean corporate-hierarchy flags.
corporate_hierarchy.is_corporate_parentboolean❌ No-true = only corporate parents.
corporate_hierarchy.is_domestic_parentboolean❌ No-true = only domestic parents.
corporate_hierarchy.is_global_headquartersboolean❌ No-true = only global headquarters.
spendarray❌ No-Filter by IT spend in a category. Array of clauses — each requires categories + range.
spend[].categoriesobject✅ Yes-Required. Spend category to filter on.
spend[].categories.idsarray✅ Yes-Spend category hex IDs
spend[].categories.inclusion_methodstring✅ Yes-
spend[].rangeobject✅ Yes-Required. Spend range in USD (min and/or max).
spend[].range.minnumber❌ No-
spend[].range.maxnumber❌ No-
limitinteger❌ No-Maximum companies to return per page (default: 10, hard max: 100). Use 10–50 for exploration; paginate with offset for bulk workflows. total_count reports the full match count regardless of limit.
offsetinteger❌ No-Pagination offset (0–24999). total_count gives total matches across all pages.
sortsarray❌ No-Sort order — array of {direction, field}. Sortable: id, name, domain, domain_normalized, plus ranking signals (ai_maturity_score, ai_maturity_rank, ai_maturity_6m_delta, genai_intent_score, current_products_used_cloud_percent, cloud_stack_percent_change) — the ranking signals can be sorted/filtered but are not returned as result columns.
sorts[].directionstring✅ Yes-
sorts[].fieldstring✅ Yes-

Required Integrations

  • hginsights_v2__data_api

Use Cases

  • Build a prospect/ICP list by combining firmographics (size, geography) with an installs filter for a specific product or vendor
  • Find companies with high AI maturity or GenAI buying intent (ai_maturity filter + sorts on genai_intent_score)
  • Whitespace analysis — exclude known CRM accounts via company_identifiers.company_ids with NONE_PRESENT, then keep only in-market segments
  • Segment an industry (firmographics.industries / naics_codes) by which companies have adopted a given technology (installs.products)
  • Surface intent-showing accounts in a region (intent.topics + intent.location) for targeted outreach

Example Usage

US corporate parents (1K+ employees) running a product

{
"tool": "search_companies",
"arguments": {
"firmographics": {
"company_level": "CORPORATE_PARENT",
"country_codes": [
{
"ids": [
"US"
],
"inclusion_method": "ANY_PRESENT"
}
],
"employees": {
"min": 1000
}
},
"installs": {
"products": [
{
"ids": [
12345
],
"inclusion_method": "ANY_PRESENT"
}
]
},
"limit": 25
}
}

High GenAI-intent companies, sorted by intent score

{
"tool": "search_companies",
"arguments": {
"ai_maturity": {
"genai_intent_score": {
"min": 85
}
},
"sorts": [
{
"field": "genai_intent_score",
"direction": "DESC"
}
],
"limit": 50
}
}

Whitespace — exclude known accounts, keep a tech segment

{
"tool": "search_companies",
"arguments": {
"company_identifiers": {
"company_ids": {
"ids": [
"00000000000000000000000000000001"
],
"inclusion_method": "NONE_PRESENT"
}
},
"installs": {
"vendors": [
{
"ids": [
67890
],
"inclusion_method": "ANY_PRESENT"
}
]
},
"limit": 25
}
}

company_firmographic, company_technographic, search_industries_naics_sic, get_vendor_information, get_product_category, list_intent_topics