Enrichment

Search Companies

POST /v1/search/companies

POST/v1/search/companies
POST
/v1/search/companies

Search companies by filters

Authorization

x-api-key<token>

API key for Open API authentication

In: header

Request Body

application/jsonRequired

All filters listed below follow AND logic between different filters - meaning every specified filter must match for a result to qualify. Within a single filter that accepts multiple values (e.g., multiple industries or locations), OR logic is applied - meaning any one of the provided values can match.

For a complete reference of each filter's predefined/accepted values, you can download the filter values CSV here.

#Filter NameKey NameType / StructureSample Value
1
Signal Ids
signalIds
array[number](min: 1, max: 10)
[
  2,
  3,
  4
]
2
News Ids
newsIds
array[number](Reference)
[
  2,
  4,
  7
]
3
Company Name
company_name
object(Include/Exclude)
  • includesarray[string], optional

    Company names to match (OR logic).

  • excludesarray[string], optional

    Company names to exclude.

  • exactMatchnumber, optional, default: 0, enum: 0 | 1

    Set 1 for exact company name match, 0 for partial match. Defaults to 0.

{
  "includes": [
    "Google",
    "Microsoft"
  ],
  "excludes": [
    "Meta"
  ],
  "exactMatch": 0
}
4
Company Hq Location
company_hq_location
object(Include/Exclude)
  • includesarray[string], optional

    HQ locations to match (OR logic). User searches from predefined list for country, state, city.

  • excludesarray[string], optional

    HQ locations to exclude.

  • exactMatchnumber, optional, enum: 0 | 1

    Set 1 for exact location match, 0 for partial.

{
  "includes": [
    "Gujarat, India"
  ],
  "excludes": [
    "California, USA"
  ],
  "exactMatch": 0
}
5
Company Founded Year
company_founded_year
object(Range)
  • minstring, optional

    From year (passed as string).

  • maxstring, optional

    To year (passed as string).

{
  "min": "2021",
  "max": "2026"
}
6
Company Industry
company_industry
object(Include/Exclude)
  • includesarray[string], optional

    Industry keywords to match (OR logic).

  • excludesarray[string], optional

    Industry keywords to exclude.

{
  "includes": [
    "Software Development"
  ],
  "excludes": [
    "Retail"
  ]
}
7
Company Domain
company_domain
object(Include/Exclude)
  • includesarray[string], optional

    Domains to match (OR logic).

  • excludesarray[string], optional

    Domains to exclude.

{
  "includes": [
    "saleshandy.com",
    "google.com"
  ],
  "excludes": [
    "meta.com"
  ]
}
8
Type
type
string(Enum)
"Privately Held"
9
Sic Codes
sic_codes
object(Include Only)
  • includesarray[string], optional

{
  "includes": [
    "7372"
  ]
}
10
Naics Codes
naics_codes
object(Include Only)
  • includesarray[string], optional

{
  "includes": [
    "511210"
  ]
}
11
Product Reviews Score Change
product_reviews_score_change
object
  • durationstring, optional, enum: current | monthly | quarterly | yearly

    Time period for score change.

  • directionstring, optional, enum: up | down | any

    Direction of score change.

  • points_rangeobject, optional

    Score change magnitude.

{
  "duration": "monthly",
  "direction": "down",
  "points_range": {
    "min": "2.0",
    "max": "4.5"
  }
}
12
Is B2b
is_b2b
boolean
true
13
Technologies Used
technologies_used
object(Include Only)
  • includesarray[string], optional

    Technology keywords to match (OR logic).

{
  "includes": [
    "React",
    "AWS",
    "Salesforce CRM"
  ]
}
14
Last Funding Round Name
last_funding_round_name
object(Include Only)
  • includesarray[string], optional

{
  "includes": [
    "Series rounds",
    "Private Equity"
  ]
}
15
Last Funding Round Amount Raised
last_funding_round_amount_raised
object(Range)
  • minstring, optional

    Minimum last round amount in USD.

  • maxstring, optional

    Maximum last round amount in USD.

{
  "min": "1000000",
  "max": "20000000"
}
16
Last Funding Round Announced Date
last_funding_round_announced_date
object(Range)
  • minstring, optional

    Start date in YYYY-MM-DD format.

  • maxstring, optional

    End date in YYYY-MM-DD format.

{
  "min": "2024-06-01",
  "max": "2025-12-31"
}
17
Funding Rounds Name
funding_rounds_name
object(Include Only)
  • includesarray[string], optional

    Funding round names to match (OR logic).

{
  "includes": [
    "Series rounds",
    "Seed"
  ]
}
18
Company Funding Amount
company_funding_amount
object(Range)
  • minstring, optional

    Minimum funding amount in USD.

  • maxstring, optional

    Maximum funding amount in USD.

{
  "min": "5000000",
  "max": "100000000"
}
19
Company Funding Date
company_funding_date
object(Range)
  • minstring, optional

    Start date in YYYY-MM-DD format.

  • maxstring, optional

    End date in YYYY-MM-DD format.

{
  "min": "2026-02-21",
  "max": "2026-03-23"
}
20
Company Annual Revenue
company_annual_revenue
object(Range)
  • minstring, optional

    Minimum revenue in USD (passed as string).

  • maxstring, optional

    Maximum revenue in USD (passed as string).

{
  "min": "1000000",
  "max": "50000000"
}
21
Company Size
company_size
object(Range)
  • minstring, optional

    Minimum total employee count (passed as string).

  • maxstring, optional

    Maximum total employee count (passed as string).

{
  "min": "50",
  "max": "500"
}
22
Employee Count Seniority
employee_count_seniority
array[object]
  • groupstring, optional, enum: owner | founder | clevel | partner | vp | head | director | manager | senior | mid | junior | intern | specialist | other_management

  • countobject, optional

[
  {
    "group": "owner",
    "count": {
      "min": "1",
      "max": "5"
    }
  },
  {
    "group": "vp",
    "count": {
      "min": "3",
      "max": "15"
    }
  }
]
23
Employee Count Department
employee_count_department
array[object]
  • groupstring, optional, enum: medical | sales | hr | legal | marketing | finance | technical | consulting | operations | product | general_management | administrative | customer_service | project_management | design | research | trades | real_estate | education | other_department

  • countobject, optional

[
  {
    "group": "medical",
    "count": {
      "min": "5",
      "max": "50"
    }
  },
  {
    "group": "sales",
    "count": {
      "min": "10",
      "max": "100"
    }
  }
]
24
Base Salary
base_salary
array[object]
  • titleobject, optional

  • rangeobject, optional

[
  {
    "title": {
      "includes": [
        "utility sales and service manager"
      ],
      "excludes": [],
      "exactMatch": 0
    },
    "range": {
      "min": "30000",
      "max": "50000"
    }
  }
]
25
Ownership Status
ownership_status
string(Enum)
"Private"
26
Website
website
object(Include Only)
  • includesarray[string], optional

{
  "includes": [
    "https://www.hubspot.com"
  ]
}
27
Look Alike Company Name
look_alike_company_name
array[object](max items: 5)
  • valuestring, optional

  • company_idnumber, optional

  • _company_namestring, optional

  • _industrystring, optional

  • _categories_and_keywordsarray[string], optional

  • _technologies_usedarray[string], optional

  • _competitorsarray[string], optional

  • _annual_revenuenumber, optional

  • _followers_count_linkedinnumber, optional

  • _total_website_visits_monthlynumber, optional

  • _ownership_statusstring, optional

[
  {
    "value": "hubspot.com"
  },
  {
    "value": "Salesforce"
  }
]
28
Linkedin Url
linkedin_url
object(Include/Exclude)
  • includesarray[string], optional

    LinkedIn company page URLs to match (OR logic).

  • excludesarray[string], optional

    LinkedIn URLs to exclude.

  • exactMatchnumber, optional, enum: 0 | 1

    Set 1 for exact match, 0 for partial.

{
  "includes": [
    "https://linkedin.com/company/hubspot"
  ],
  "excludes": [
    "https://linkedin.com/company/meta"
  ],
  "exactMatch": 0
}
29
Followers Count Linkedin
followers_count_linkedin
object(Range)
  • minstring, optional

    Minimum follower count (passed as string).

  • maxstring, optional

    Maximum follower count (passed as string).

{
  "min": "5000",
  "max": "100000"
}
30
Active Job Postings Title
active_job_postings_title
object(Include Only)
  • includesarray[string], optional

    Job title keywords to match (OR logic).

{
  "includes": [
    "Software Engineer",
    "Product Manager"
  ]
}
31
Active Job Postings Count
active_job_postings_count
object(Range)
  • minstring, optional

    Minimum job opening count (passed as string).

  • maxstring, optional

    Maximum job opening count (passed as string).

{
  "min": "5",
  "max": "50"
}
32
Total Website Visits Monthly
total_website_visits_monthly
object(Range)
  • minstring, optional

  • maxstring, optional

{
  "min": "10000",
  "max": "500000"
}
33
Rank Global
rank_global
object(Range)
  • minstring, optional

  • maxstring, optional

{
  "min": "1",
  "max": "100000"
}
34
Visits Breakdown By Country
visits_breakdown_by_country
array[object]
  • countrystring, optional

  • percentageobject, optional

[
  {
    "country": "United States",
    "percentage": {
      "min": "20",
      "max": "60"
    }
  }
]
35
Visits Breakdown By Gender
visits_breakdown_by_gender
array[object]
  • genderstring, optional, enum: male | female

  • percentageobject, optional

[
  {
    "gender": "female",
    "percentage": {
      "min": "30",
      "max": "70"
    }
  }
]
36
Product Reviews Aggregate Score
product_reviews_aggregate_score
object(Range)
  • minstring, optional

    Minimum product review score (passed as string).

  • maxstring, optional

    Maximum product review score (passed as string).

{
  "min": "3.5",
  "max": "5.0"
}
37
Product Reviews Count
product_reviews_count
object(Range)
  • minstring, optional

    Minimum product review count (passed as string).

  • maxstring, optional

    Maximum product review count (passed as string).

{
  "min": "1",
  "max": "10"
}
38
Employee Reviews Total Count
employee_reviews_total_count
object(Range)
  • minstring, optional

    Minimum review count (passed as string).

  • maxstring, optional

    Maximum review count (passed as string).

{
  "min": "1",
  "max": "10"
}
39
Employee Reviews Aggregate Score
employee_reviews_aggregate_score
object(Range)
  • minstring, optional

    Minimum rating (passed as string).

  • maxstring, optional

    Maximum rating (passed as string).

{
  "min": "1",
  "max": "2"
}
40
Employee Reviews Business Outlook
employee_reviews_business_outlook
object(Range)
  • minstring, optional

    Minimum rating (passed as string).

  • maxstring, optional

    Maximum rating (passed as string).

{
  "min": "2",
  "max": "3"
}
41
Employee Reviews Ceo Approval
employee_reviews_ceo_approval
object(Range)
  • minstring, optional

    Minimum rating (passed as string).

  • maxstring, optional

    Maximum rating (passed as string).

{
  "min": "2",
  "max": "3"
}
42
Employee Reviews Career Opportunities
employee_reviews_career_opportunities
object(Range)
  • minstring, optional

    Minimum rating (passed as string).

  • maxstring, optional

    Maximum rating (passed as string).

{
  "min": "1",
  "max": "2"
}
43
Employee Reviews Recommend
employee_reviews_recommend
object(Range)
  • minstring, optional

    Minimum rating (passed as string).

  • maxstring, optional

    Maximum rating (passed as string).

{
  "min": "1",
  "max": "2"
}
44
Employee Reviews Work Life Balance
employee_reviews_work_life_balance
object(Range)
  • minstring, optional

    Minimum rating (passed as string).

  • maxstring, optional

    Maximum rating (passed as string).

{
  "min": "1",
  "max": "2"
}
45
Employee Reviews Culture Values
employee_reviews_culture_values
object(Range)
  • minstring, optional

    Minimum rating (passed as string).

  • maxstring, optional

    Maximum rating (passed as string).

{
  "min": "1",
  "max": "2"
}
46
Keywords
keywords
object(Include Only)
  • includesarray[string], optional

    Keyword terms to match (OR logic).

{
  "includes": [
    "artificial intelligence",
    "machine learning"
  ]
}
47
Social Urls
social_urls
object(Include Only)
  • includesarray[string], optional

    Social profile URLs to match (OR logic).

{
  "includes": [
    "https://twitter.com/HubSpot"
  ]
}
48
Page
page
number(default: 1, min: 1, max: 400)
1

Responses

201

Companies searched successfully

{
  "message": "Success",
  "payload": {
    "status": "success",
    "display_limit": 10000,
    "total_results": 2,
    "page": 1,
    "per_page": 25,
    "total_pages": 1,
    "has_next_page": false,
    "has_previous_page": false,
    "company": [
      {
        "id": 2001,
        "name": "Acme Corp",
        "socials": [
          "https://linkedin.com/company/acme-example",
          "https://acme.example.com",
          "https://twitter.com/acmeexample"
        ],
        "location": {
          "city": "San Francisco",
          "state": "California",
          "country": "United States"
        },
        "founded_year": 2014,
        "industry": "Software Development",
        "type": "Privately Held",
        "is_b2b": true,
        "sic_codes": [
          "7372"
        ],
        "naics_codes": [
          "511210"
        ],
        "employee_count": 480
      },
      {
        "id": 2002,
        "name": "Beta Industries",
        "socials": [
          "https://linkedin.com/company/beta-industries-example"
        ],
        "location": {
          "city": "",
          "state": "",
          "country": "United States"
        },
        "founded_year": "",
        "industry": "",
        "type": "Public Company",
        "is_b2b": null,
        "sic_codes": "",
        "naics_codes": "",
        "employee_count": null
      }
    ]
  }
}

Success

KeyTypeDescription
messagestring

payloadobject

└statusstring

Search status string, e.g. "success".

└display_limitnumber

Maximum number of results the account is allowed to retrieve for this search.

└total_resultsnumber

Total number of matching results across all pages.

└pagenumber

Current page number, matching the request's `page` parameter.

└per_pagenumber

Number of results returned on this page.

└total_pagesnumber

Total number of pages available.

└has_next_pageboolean

Whether a page after the current one exists.

└has_previous_pageboolean

Whether a page before the current one exists.

└companyarray[object]

The matching companies for this page. Named `company` (singular), not `companies`. When there are zero matching results, `payload` itself becomes the literal empty array `[]` instead of an object containing this field. Client code reading `payload.company` should confirm `payload` is not itself an array first (e.g. `Array.isArray(payload)`).

└idnumber

Numeric identifier for this company.

└namestring

Company name.

└socialsarray[string]

Social and web presence links for this company — LinkedIn, website, Twitter/X, Facebook, Instagram, Crunchbase, etc. All platforms are mixed together in one array with no per-item label distinguishing which platform each URL belongs to. There is no separate `website` field in the response, even though the request-side filters include one called `website`.

└locationobject

Company's headquarters location.

└citystring

City name. Can be an empty string.

└statestring

State or province name. Can be an empty string.

└countrystring

Country name. Can be an empty string.

└founded_yearnumber

Year the company was founded. Can be returned as an empty string "" instead of a number when unknown.

└industrystring

Company industry. Can be an empty string.

└typestring

Company type, or `null` when unknown. Otherwise one of "Privately Held", "Public Company", "Self-Owned", "Self-Employed", "Partnership", "Nonprofit", "Educational", "Government Agency". These are the same values accepted by the request-side `type` filter. This response field loosely, but not exactly, correlates with the separate `ownership_status` request-side filter.

└is_b2bboolean

Whether the company is flagged as B2B. `null` when unknown.

└sic_codesarray[string]

SIC (Standard Industrial Classification) codes for this company. Returned as the literal empty string "" instead of an empty array [] when the company has none.

└naics_codesarray[string]

NAICS (North American Industry Classification System) codes for this company. Same empty-string-instead-of-empty-array behavior as `sic_codes`.

└employee_countnumber

Total employee count. Occasionally `null`.

No Results

KeyTypeDescription
messagestring

payloadarray

Empty when no results match — `payload` itself becomes a literal empty array instead of an object with an empty `company` array. Client code should check `Array.isArray(payload)` before reading `payload.company`.

Request

curl -X POST \
  "https://open-api.saleshandy.com/v1/search/companies" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "signalIds": [
    2,
    3,
    4
  ],
  "newsIds": [
    2,
    4,
    7
  ],
  "company_name": {
    "includes": [
      "Google",
      "Microsoft"
    ],
    "excludes": [
      "Meta"
    ],
    "exactMatch": 0
  },
  "company_hq_location": {
    "includes": [
      "Gujarat, India"
    ],
    "excludes": [
      "California, USA"
    ],
    "exactMatch": 0
  },
  "company_founded_year": {
    "min": "2021",
    "max": "2026"
  },
  "company_industry": {
    "includes": [
      "Software Development"
    ],
    "excludes": [
      "Retail"
    ]
  },
  "company_domain": {
    "includes": [
      "saleshandy.com",
      "google.com"
    ],
    "excludes": [
      "meta.com"
    ]
  },
  "type": "Privately Held",
  "sic_codes": {
    "includes": [
      "7372"
    ]
  },
  "naics_codes": {
    "includes": [
      "511210"
    ]
  },
  "product_reviews_score_change": {
    "duration": "monthly",
    "direction": "down",
    "points_range": {
      "min": "2.0",
      "max": "4.5"
    }
  },
  "is_b2b": true,
  "technologies_used": {
    "includes": [
      "React",
      "AWS",
      "Salesforce CRM"
    ]
  },
  "last_funding_round_name": {
    "includes": [
      "Series rounds",
      "Private Equity"
    ]
  },
  "last_funding_round_amount_raised": {
    "min": "1000000",
    "max": "20000000"
  },
  "last_funding_round_announced_date": {
    "min": "2024-06-01",
    "max": "2025-12-31"
  },
  "funding_rounds_name": {
    "includes": [
      "Series rounds",
      "Seed"
    ]
  },
  "company_funding_amount": {
    "min": "5000000",
    "max": "100000000"
  },
  "company_funding_date": {
    "min": "2026-02-21",
    "max": "2026-03-23"
  },
  "company_annual_revenue": {
    "min": "1000000",
    "max": "50000000"
  },
  "company_size": {
    "min": "50",
    "max": "500"
  },
  "employee_count_seniority": [
    {
      "group": "owner",
      "count": {
        "min": "1",
        "max": "5"
      }
    },
    {
      "group": "vp",
      "count": {
        "min": "3",
        "max": "15"
      }
    }
  ],
  "employee_count_department": [
    {
      "group": "medical",
      "count": {
        "min": "5",
        "max": "50"
      }
    },
    {
      "group": "sales",
      "count": {
        "min": "10",
        "max": "100"
      }
    }
  ],
  "base_salary": [
    {
      "title": {
        "includes": [
          "utility sales and service manager"
        ],
        "excludes": [],
        "exactMatch": 0
      },
      "range": {
        "min": "30000",
        "max": "50000"
      }
    }
  ],
  "ownership_status": "Private",
  "website": {
    "includes": [
      "https://www.hubspot.com"
    ]
  },
  "look_alike_company_name": [
    {
      "value": "hubspot.com"
    },
    {
      "value": "Salesforce"
    }
  ],
  "linkedin_url": {
    "includes": [
      "https://linkedin.com/company/hubspot"
    ],
    "excludes": [
      "https://linkedin.com/company/meta"
    ],
    "exactMatch": 0
  },
  "followers_count_linkedin": {
    "min": "5000",
    "max": "100000"
  },
  "active_job_postings_title": {
    "includes": [
      "Software Engineer",
      "Product Manager"
    ]
  },
  "active_job_postings_count": {
    "min": "5",
    "max": "50"
  },
  "total_website_visits_monthly": {
    "min": "10000",
    "max": "500000"
  },
  "rank_global": {
    "min": "1",
    "max": "100000"
  },
  "visits_breakdown_by_country": [
    {
      "country": "United States",
      "percentage": {
        "min": "20",
        "max": "60"
      }
    }
  ],
  "visits_breakdown_by_gender": [
    {
      "gender": "female",
      "percentage": {
        "min": "30",
        "max": "70"
      }
    }
  ],
  "product_reviews_aggregate_score": {
    "min": "3.5",
    "max": "5.0"
  },
  "product_reviews_count": {
    "min": "1",
    "max": "10"
  },
  "employee_reviews_total_count": {
    "min": "1",
    "max": "10"
  },
  "employee_reviews_aggregate_score": {
    "min": "1",
    "max": "2"
  },
  "employee_reviews_business_outlook": {
    "min": "2",
    "max": "3"
  },
  "employee_reviews_ceo_approval": {
    "min": "2",
    "max": "3"
  },
  "employee_reviews_career_opportunities": {
    "min": "1",
    "max": "2"
  },
  "employee_reviews_recommend": {
    "min": "1",
    "max": "2"
  },
  "employee_reviews_work_life_balance": {
    "min": "1",
    "max": "2"
  },
  "employee_reviews_culture_values": {
    "min": "1",
    "max": "2"
  },
  "keywords": {
    "includes": [
      "artificial intelligence",
      "machine learning"
    ]
  },
  "social_urls": {
    "includes": [
      "https://twitter.com/HubSpot"
    ]
  },
  "page": 1
}'

Response

No response body