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.

Credits

1 — 1 per 100 companies returned. See the full credit table for how AI Credits work.

Parameters

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

Required Integrations

This tool is only available when your organization has the following integration configured in the Phoenix Integrations settings:

  • HG Insights (Data API) (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
}
}

Response Format

FieldTypeDescription
companiesarrayArray of matching company results.
companies[].hg_idstringHG Insights company ID (31-32-char hex; leading zeros may be truncated). Pass to enrichment tools (company_firmographic, company_technographic, company_enrich, etc.).
companies[].namestring | null
companies[].domainstring | null
companies[].domain_normalizedstring | null
total_countnumberTotal matching companies across all pages.

company_firmographic, company_technographic, search_industries_naics_sic, get_vendor_information, get_product_category, list_intent_topics