> **Building with AI coding agents?** Install the authstack plugin with one command. This equips your agent with accurate Scalekit implementation patterns.
>
> **Recommended** (the `-y` flags skip prompts, so the command runs without an interactive terminal):
> ```bash
> npx -y @scalekit-inc/cli setup -y
> ```
>
> Global:
> ```bash
> npm install -g @scalekit-inc/cli
> scalekit setup -y
> ```
>
> Supports Claude Code, Cursor, GitHub Copilot, Codex + skills for other Agent Skills-compatible agents in `~/.agents/skills`.
> Skills: integrate-agentkit, implement-saaskit, add-mcp-oauth, implement-sso, implement-scim.
> [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Connect AI agents to CompanyEnrich

The CompanyEnrich connector lets your AI agent act in each user's CompanyEnrich account. Each user connects their own CompanyEnrich access token once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 31 tools.

**Authentication:** Bearer Token
**Categories:** CRM & Sales, Marketing, Search
**Tools:** 31: 31 read, 0 write, 0 destructive
**Users sign in with:** Access token
**Built by:** Scalekit connector
**Try it:** [Playground in the Scalekit dashboard](https://app.scalekit.com/ws/signup?sk_intent=playground&provider=COMPANYENRICH)

## Setup

1. ### Install the SDK

   **Node.js**

   ```bash
   npm install @scalekit-sdk/node dotenv
   ```

   **Python**

   ```bash
   pip install scalekit-sdk-python python-dotenv
   ```

2. ### Set your credentials

   Add your Scalekit credentials to your `.env` file. Find values in **[app.scalekit.com](https://app.scalekit.com)** > **Developers** > **API Credentials**.

   ```sh title=".env"
   SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
   SCALEKIT_CLIENT_ID=<your-client-id>
   SCALEKIT_CLIENT_SECRET=<your-client-secret>
   ```

3. ### Create the CompanyEnrich connection

   In **AgentKit > Connections**, create a CompanyEnrich connection. The name you give it is the `connection_name` your code passes. See [Configure connections](/agentkit/connections/).

4. ### Authorize a user and make your first call

   **Node.js** (`quickstart.mts`)

   ```typescript
   import { ScalekitClient } from '@scalekit-sdk/node'
   import 'dotenv/config'
   import { createInterface } from 'node:readline/promises'

   const scalekit = new ScalekitClient(
     process.env.SCALEKIT_ENVIRONMENT_URL,
     process.env.SCALEKIT_CLIENT_ID,
     process.env.SCALEKIT_CLIENT_SECRET,
   )
   const actions = scalekit.actions

   const connector = 'companyenrich'
   const identifier = 'user_123'

   // Generate an authorization link for the user
   const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
   console.log('Authorize CompanyEnrich:', link)
   const rl = createInterface({ input: process.stdin, output: process.stdout })
   await rl.question('Press Enter after authorizing...')
   rl.close()

   // Make your first call
   const result = await actions.executeTool({
     connector,
     identifier,
     toolName: 'companyenrich_get_account',
     toolInput: {},
   })
   console.log(result)
   ```

   ```bash
   npx tsx quickstart.mts
   ```

   **Python** (`quickstart.py`)

   ```python
   import os
   from scalekit import ScalekitClient
   from dotenv import load_dotenv
   load_dotenv()

   scalekit_client = ScalekitClient(
       env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),
       client_id=os.getenv("SCALEKIT_CLIENT_ID"),
       client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
   )
   actions = scalekit_client.actions

   connection_name = "companyenrich"
   identifier = "user_123"

   # Generate an authorization link for the user
   link_response = actions.get_authorization_link(
       connection_name=connection_name,
       identifier=identifier,
   )
   print("Authorize CompanyEnrich:", link_response.link)
   input("Press Enter after authorizing...")

   # Make your first call
   result = actions.execute_tool(
       tool_input={},
       tool_name="companyenrich_get_account",
       connection_name=connection_name,
       identifier=identifier,
   )
   print(result)
   ```

   ```bash
   python quickstart.py
   ```

   Each user opens the link once and enters their CompanyEnrich credentials there. See [Authorize a user](/agentkit/tools/authorize/) for the full flow and statuses.

## Tools

Pass the exact name to `execute_tool`, with an input like each tool's example. To ask for a tool that's missing, use the [request form](https://scalekitsupport.portal.usepylon.com/forms/request-a-connector-tool).

**Node.js**

```typescript
const result = await actions.executeTool({
  toolName: 'companyenrich_autocomplete_companies',
  toolInput: {
    query: '<query>',
  },
  connector: 'companyenrich',
  identifier: 'user_123',
})
```

**Python**

```python
result = actions.execute_tool(
    tool_name="companyenrich_autocomplete_companies",
    tool_input={
        "query": "<query>",
    },
    connection_name="companyenrich",
    identifier="user_123",
)
```

`result.data` is the app's response as JSON, and `result.execution_id` (`executionId` in Node.js) is the ID of the call.

### `companyenrich_autocomplete_companies`

Autocomplete Companies · Read-only

Suggest companies whose domain matches partial text. Free.
Returns up to 10 companies, each with domain, name and logoUrl.
Use this to turn a partial or misspelt company name into a domain before enriching it. Use companyenrich_search_companies for filtered search.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `query` (`string`, required): Partial company domain or name to complete. Example: strip

Example input: `{"query":"<query>"}`

### `companyenrich_autocomplete_keywords`

Autocomplete Keywords · Read-only

Suggest business keywords that match partial text. Free.
Returns an array of matching business keywords as strings.
Use this to get exact values for the keywords filter of companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `query` (`string`, required): Partial text to complete. Example: fintech

Example input: `{"query":"<query>"}`

### `companyenrich_autocomplete_positions`

Autocomplete Positions · Read-only

Suggest job titles that match partial text. Free.
Returns an array of matching job titles as strings.
Use this to get exact values for the position_query filter of companyenrich_search_people.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `query` (`string`, required): Partial text to complete. Example: head of sa

Example input: `{"query":"<query>"}`

### `companyenrich_autocomplete_technologies`

Autocomplete Technologies · Read-only

Suggest technology names that match partial text. Free.
Returns an array of matching technology names as strings.
Use this to get exact values for the technologies filter of companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `query` (`string`, required): Partial text to complete. Example: salesfor

Example input: `{"query":"<query>"}`

### `companyenrich_batch_enrich_companies`

Batch Enrich Companies · Read-only

Enrich up to 50 companies from their domains in one call. Costs 1 credit per company enriched.
Returns an array of company profiles, in the same shape as companyenrich_enrich_company_by_domain; domains that cannot be enriched are left out.
Use this for a list of domains. Use companyenrich_enrich_company_by_domain for a single domain.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `domains` (`array`, required): Company domains to enrich, 1 to 50. Example: ["stripe.com", "notion.so"]
- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]

Example input: `{"domains":["stripe.com","notion.so"]}`

### `companyenrich_count_companies`

Count Companies · Read-only

Count the companies that match a set of search filters, without returning them. Free.
Returns the number of matching companies as a plain number.
Use this to check or narrow filters before companyenrich_search_companies, which charges per result.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `lists` (`array`, optional): Only return companies saved in these CompanyEnrich company lists, by list ID (UUID). companyenrich_list_company_lists returns the IDs. Example: ["3fa85f64-5717-4562-b3fc-2c963f66afa6"]
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `semantic_query` (`string`, optional): Natural-language description of the companies to find, up to 500 characters. Ranked by meaning rather than exact words. Example: developer tools for payments infrastructure
- `semantic_weight` (`number`, optional): How much the semantic query counts against the other ranking factors, from 0 to 1. Defaults to 0.7; higher values favour semantic similarity. Only used with semantic_query. Example: 0.7
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{}`

### `companyenrich_count_similar_companies`

Count Similar Companies · Read-only

Count the lookalike companies for 1 to 10 seed domains and optional filters, without returning them. Free.
Returns the number of matching companies as a plain number.
Use this before companyenrich_find_similar_companies, which charges 5 credits per result.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `domains` (`array`, required): Domains of 1 to 10 seed companies to find lookalikes for. Example: ["stripe.com"]
- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `min_score` (`number`, optional): Minimum similarity score a result must reach, from 0 to 1. Omit to use the default cutoff. Example: 0.6
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `similarity_weight` (`number`, optional): From -1 to 1, default 0. Higher values favour the most similar companies; lower values favour larger, more established companies. Example: 0.5
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `wait_for_enrichment` (`boolean`, optional): Whether to wait when a seed domain is not in CompanyEnrich's database yet. Defaults to true. Set false to return 404 straight away when any seed company is missing; the missing domains are then enriched in the background so a later retry succeeds.
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{"domains":["stripe.com"]}`

### `companyenrich_enrich_company_by_domain`

Enrich Company by Domain · Read-only

Enrich one company from its website domain. Costs 1 credit.
Returns the company profile: id, name, website, type, industry and industries, categories, employee and revenue ranges, description, keywords, technologies, founded year, NAICS codes, location, funding and stock details, social profile URLs and logo URL.
Use this when you know the domain; it is the most reliable lookup. Use companyenrich_enrich_company_by_properties when you only have a name or social profile URL, companyenrich_batch_enrich_companies for up to 50 domains at once, and companyenrich_get_company for a CompanyEnrich ID.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `domain` (`string`, required): Company website domain, without protocol or path. Example: stripe.com
- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]
- `wait_for_enrichment` (`boolean`, optional): Whether to wait for on-demand enrichment when the company is not in CompanyEnrich's database yet. Defaults to true. Set false to return stored data immediately; an unknown company then returns 404 without using credits and is enriched in the background so a later call can find it.

Example input: `{"domain":"<domain>"}`

### `companyenrich_enrich_company_by_properties`

Enrich Company by Properties · Read-only

Enrich one company from its name or a social profile, when the domain is unknown. Costs 1 credit.
Returns the best-matching company profile, in the same shape as companyenrich_enrich_company_by_domain; 404 when nothing matches.
Use this with a company name, LinkedIn URL or ID, or X/Twitter, Facebook, Instagram or YouTube URL. Use companyenrich_enrich_company_by_domain when you have the domain, since domain lookups are more reliable.
Provide at least one of the inputs; more inputs give a more precise match.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]
- `facebook_url` (`string`, optional): Company Facebook page URL. Example: https://www.facebook.com/StripeHQ
- `instagram_url` (`string`, optional): Company Instagram profile URL. Example: https://www.instagram.com/stripehq
- `linkedin_id` (`string`, optional): Numeric LinkedIn company ID. Example: 2135371
- `linkedin_url` (`string`, optional): Company LinkedIn page URL. Example: https://www.linkedin.com/company/stripe
- `name` (`string`, optional): Company name. Example: Stripe
- `twitter_url` (`string`, optional): Company X (Twitter) profile URL. Example: https://twitter.com/stripe
- `youtube_url` (`string`, optional): Company YouTube channel URL. Example: https://www.youtube.com/@stripe

Example input: `{}`

### `companyenrich_find_person_email`

Find Person Email · Read-only

Find the work email address of one person by CompanyEnrich person ID (beta). Costs 10 credits for each newly found email.
Returns a person summary, the domain used, a status (pending, found, not-found or unavailable) and, when found, the email and a certainty of unknown, medium, high or very-high.
Use this after companyenrich_search_people to get contact details. A pending status means the lookup is still running; call again later.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `id` (`integer`, required): CompanyEnrich person ID, from the id field of a person result. Example: 123456789
- `domain` (`string`, optional): Company domain to resolve the email on. It must be one of the person's employers. Omit to try their current employers in seniority order. Example: stripe.com

Example input: `{"id":123456789}`

### `companyenrich_find_similar_companies`

Find Similar Companies · Read-only

Find lookalike companies for 1 to 10 seed domains, optionally narrowed by the same filters as company search. Costs 5 credits per company returned (minimum 5).
Returns items (full company profiles), metadata.scores (similarity score per result), page, totalPages and totalItems; at most 100 companies per page.
Use this to expand a target account list from your best customers. Use companyenrich_count_similar_companies to size it for free first, and companyenrich_search_companies to search by filters without seed companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `domains` (`array`, required): Domains of 1 to 10 seed companies to find lookalikes for. Example: ["stripe.com"]
- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `min_score` (`number`, optional): Minimum similarity score a result must reach, from 0 to 1. Omit to use the default cutoff. Example: 0.6
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `page` (`integer`, optional): Page number to return, starting at 1. page times page_size cannot exceed 10,000. Example: 2
- `page_size` (`integer`, optional): Results per page, 1 to 100. Example: 25
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `similarity_weight` (`number`, optional): From -1 to 1, default 0. Higher values favour the most similar companies; lower values favour larger, more established companies. Example: 0.5
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `wait_for_enrichment` (`boolean`, optional): Whether to wait when a seed domain is not in CompanyEnrich's database yet. Defaults to true. Set false to return 404 straight away when any seed company is missing; the missing domains are then enriched in the background so a later retry succeeds.
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{"domains":["stripe.com"]}`

### `companyenrich_get_account`

Get Account · Read-only

Get the CompanyEnrich account's credit balance and plan capabilities. Free.
Returns userId, credits (used and total) and capabilities: whether lists and preview endpoints are available, and the result limits for company search, async company search, people search and search terms.
Use this to check remaining credits before a large search, or to check whether the plan includes the preview tools.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `companyenrich_get_company`

Get Company · Read-only

Get one company by its CompanyEnrich ID. Costs 1 credit.
Returns the company profile, in the same shape as companyenrich_enrich_company_by_domain.
Use this for an id returned by another CompanyEnrich tool. Use companyenrich_enrich_company_by_domain when you have a domain instead.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `id` (`string`, required): CompanyEnrich company ID (UUID), from the id field of any company result. Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]

Example input: `{"id":"<id>"}`

### `companyenrich_get_company_workforce`

Get Company Workforce · Read-only

Get workforce insights for one company, by CompanyEnrich ID or domain. Costs 5 credits.
Returns the observed employee count, the employee range, headcount by department (engineering, sales, marketing and others) and monthly history of those counts.
Use this to size teams or track hiring at one company. Use the workforce_size and workforce_growth filters of companyenrich_search_companies to find companies by headcount.
Provide exactly one of id or domain.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `domain` (`string`, optional): Company website domain. Provide this or id, not both. Example: stripe.com
- `id` (`string`, optional): CompanyEnrich company ID (UUID). Provide this or domain, not both. Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6

Example input: `{}`

### `companyenrich_get_country`

Get Country · Read-only

Get one country by its two-letter ISO code. Free.
Returns the country code, name, latitude and longitude; 404 for an unknown code.
Use this to check a country code. Use companyenrich_search_countries to find a code by name.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `country_code` (`string`, required): Two-letter ISO 3166-1 alpha-2 country code. Example: DE

Example input: `{"country_code":"<country_code>"}`

### `companyenrich_get_person`

Get Person · Read-only

Get one person by their CompanyEnrich person ID. Costs 2 credits.
Returns the person profile: name, position, seniority, department, location, social URLs, image URL and work experience.
Use this for an id returned by companyenrich_search_people or companyenrich_lookup_person_by_email.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `id` (`integer`, required): CompanyEnrich person ID, a number from the id field of a person result. Example: 123456789
- `expand` (`array`, optional): Extra response fields to include. The only value is education, which adds the education history to each person and costs 1 extra credit per person. Omit to skip it. Example: ["education"]

Example input: `{"id":123456789}`

### `companyenrich_get_person_education`

Get Person Education · Read-only

Get the education history of one person by CompanyEnrich person ID. Costs 1 credit.
Returns an array of schools with institution name, LinkedIn handle, degree, start year and end year; empty when none is known.
Use this when you need only education. companyenrich_get_person with expand ["education"] returns the full profile plus education.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `id` (`integer`, required): CompanyEnrich person ID, from the id field of a person result. Example: 123456789

Example input: `{"id":123456789}`

### `companyenrich_list_company_lists`

List Company Lists · Read-only

List the saved company lists in the CompanyEnrich account. Free.
Returns items, each with id, name, createdAt, originalCount and type (Manual or Export).
Use this to get list IDs for the lists filter of companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `companyenrich_list_industries`

List Industries · Read-only

List every industry CompanyEnrich uses to classify companies. Free.
Returns an array of industries, each with a name and its NAICS codes.
Use this to find NAICS codes for the naics_codes filter of companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `companyenrich_list_regions`

List Regions · Read-only

List the world regions CompanyEnrich uses for location filters. Free.
Returns items, each with id, parentId, name and the country codes in the region.
Use this to get region IDs for the regions filter of companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `companyenrich_lookup_person_by_email`

Look Up Person by Email · Read-only

Find the person behind a work email address. Costs 5 credits when a match is found.
Returns the best-matching person profile: id, name, position, seniority, department, location, social URLs and work experience; 404 when there is no match.
Use this to identify who an inbound email or lead belongs to. Use companyenrich_get_person when you have a CompanyEnrich person ID, and companyenrich_search_people to find people by role.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `email` (`string`, required): Work email address of the person. Example: jane.doe@stripe.com
- `expand` (`array`, optional): Extra response fields to include. The only value is education, which adds the education history to each person and costs 1 extra credit per person. Omit to skip it. Example: ["education"]

Example input: `{"email":"<email>"}`

### `companyenrich_preview_companies`

Preview Companies · Read-only

Preview the top 25 companies for a set of search filters. Free, but needs a CompanyEnrich Scale plan.
Returns items (company summaries with id, name, domain, website, industry, description, keywords and logo URL), page, totalPages and totalItems.
Use this to check that filters return the right kind of company before paying for companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `lists` (`array`, optional): Only return companies saved in these CompanyEnrich company lists, by list ID (UUID). companyenrich_list_company_lists returns the IDs. Example: ["3fa85f64-5717-4562-b3fc-2c963f66afa6"]
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `semantic_query` (`string`, optional): Natural-language description of the companies to find, up to 500 characters. Ranked by meaning rather than exact words. Example: developer tools for payments infrastructure
- `semantic_weight` (`number`, optional): How much the semantic query counts against the other ranking factors, from 0 to 1. Defaults to 0.7; higher values favour semantic similarity. Only used with semantic_query. Example: 0.7
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{}`

### `companyenrich_preview_similar_companies`

Preview Similar Companies · Read-only

Preview the top 25 lookalike companies for 1 to 10 seed domains. Free, but needs a CompanyEnrich Scale plan.
Returns items (company summaries), metadata.scores, page, totalPages and totalItems.
Use this to check lookalike quality before paying for companyenrich_find_similar_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `domains` (`array`, required): Domains of 1 to 10 seed companies to find lookalikes for. Example: ["stripe.com"]
- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `min_score` (`number`, optional): Minimum similarity score a result must reach, from 0 to 1. Omit to use the default cutoff. Example: 0.6
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `similarity_weight` (`number`, optional): From -1 to 1, default 0. Higher values favour the most similar companies; lower values favour larger, more established companies. Example: 0.5
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `wait_for_enrichment` (`boolean`, optional): Whether to wait when a seed domain is not in CompanyEnrich's database yet. Defaults to true. Set false to return 404 straight away when any seed company is missing; the missing domains are then enriched in the background so a later retry succeeds.
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{"domains":["stripe.com"]}`

### `companyenrich_scroll_companies`

Scroll Companies · Read-only

Page through company search results with a cursor, with no 10,000-result cap. Costs 1 credit per company returned (minimum 1).
Returns items (full company profiles), nextCursor, previousCursor, totalItems, startIndex and metadata.totalMatching.
Use this to walk a large result set. Use companyenrich_search_companies for numbered pages within the first 10,000 results.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `cursor` (`string`, optional): Cursor from the nextCursor field of the previous response. Omit for the first page. Send the same filters with every page. Example: eyJzIjpbMC45MiwiMTIzIl19
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `lists` (`array`, optional): Only return companies saved in these CompanyEnrich company lists, by list ID (UUID). companyenrich_list_company_lists returns the IDs. Example: ["3fa85f64-5717-4562-b3fc-2c963f66afa6"]
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `page_size` (`integer`, optional): Results per page, 1 to 100. Example: 50
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `semantic_query` (`string`, optional): Natural-language description of the companies to find, up to 500 characters. Ranked by meaning rather than exact words. Example: developer tools for payments infrastructure
- `semantic_weight` (`number`, optional): How much the semantic query counts against the other ranking factors, from 0 to 1. Defaults to 0.7; higher values favour semantic similarity. Only used with semantic_query. Example: 0.7
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{}`

### `companyenrich_scroll_people`

Scroll People · Read-only

Page through people search results with a cursor, with no 10,000-result cap. Costs 2 credits per person returned (minimum 2).
Returns items (person profiles), nextCursor, previousCursor, totalItems, startIndex and metadata.totalMatching.
Use this to walk a large result set. Use companyenrich_search_people for numbered pages within the first 10,000 results.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `at_current_company_after` (`string`, optional): Only include people who joined their current company after this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `at_current_company_before` (`string`, optional): Only include people who joined their current company before this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `at_current_position_after` (`string`, optional): Only include people who started their current position after this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `at_current_position_before` (`string`, optional): Only include people who started their current position before this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `company_filter` (`object`, optional): Find people at companies that match a company search or a lookalike search instead of listing domains. Set search to an object of company filters in the API's camelCase form (for example countries, employees, keywords, technologies), or similar to {"domains": [...]} to target lookalikes of those companies. Example: {"search": {"countries": ["US"], "employees": ["51-200"], "keywords": ["fintech"]}}
- `countries` (`array`, optional): Two-letter ISO country codes of where the person is located. Example: ["US"]
- `cursor` (`string`, optional): Cursor from the nextCursor field of the previous response. Omit for the first page. Send the same filters with every page. Example: eyJzIjpbMC45MiwiMTIzIl19
- `department` (`array`, optional): Departments to include. Use a top-level department (c-suite, product-management, engineering-technical, design, education, finance, human-resources, information-technology, legal, marketing, medical-health, operations, sales, consulting) or a sub-department written as parent/child, such as sales/inside-sales or engineering-technical/software-development. Example: ["sales", "marketing/demand-generation"]
- `domains` (`array`, optional): Domains of the companies the people currently work at, up to 2,500. Example: ["stripe.com"]
- `education` (`object`, optional): Filter on schools attended: institutionNameQuery takes school name search terms and institutionLinkedinHandles takes the schools' LinkedIn handles. Example: {"institutionNameQuery": ["Stanford"]}
- `exclude` (`object`, optional): People to leave out. A person matching any of these is excluded. Supports positionQuery, countries, domains, seniority, department and education, in the same form as the include filters. Example: {"seniority": ["intern", "entry"], "domains": ["example.com"]}
- `expand` (`array`, optional): Extra response fields to include. The only value is education, which adds the education history to each person and costs 1 extra credit per person. Omit to skip it. Example: ["education"]
- `page_size` (`integer`, optional): Results per page, 1 to 100. Example: 50
- `position_query` (`array`, optional): Job title search terms matched against each person's current position. A person matches if any term matches. companyenrich_autocomplete_positions suggests titles. Example: ["head of sales", "vp sales"]
- `query` (`string`, optional): Free-text query, up to 250 characters. CompanyEnrich documents it as matching the company name and domain. Example: stripe
- `seniority` (`array`, optional): Seniority levels to include: owner, founder, c-suite, partner, vp, head, director, manager, senior, entry, intern. Example: ["vp", "director"]

Example input: `{}`

### `companyenrich_scroll_similar_companies`

Scroll Similar Companies · Read-only

Page through lookalike companies for 1 to 10 seed domains with a cursor. Costs 5 credits per company returned (minimum 5).
Returns items (full company profiles), nextCursor, previousCursor, totalItems, startIndex and metadata (similarity scores and totalMatching).
Use this to walk a long lookalike list. Use companyenrich_find_similar_companies for numbered pages.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `domains` (`array`, required): Domains of 1 to 10 seed companies to find lookalikes for. Example: ["stripe.com"]
- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `cursor` (`string`, optional): Cursor from the nextCursor field of the previous response. Omit for the first page. Send the same filters with every page. Example: eyJzIjpbMC45MiwiMTIzIl19
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `min_score` (`number`, optional): Minimum similarity score a result must reach, from 0 to 1. Omit to use the default cutoff. Example: 0.6
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `page_size` (`integer`, optional): Results per page, 1 to 100. Example: 50
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `similarity_weight` (`number`, optional): From -1 to 1, default 0. Higher values favour the most similar companies; lower values favour larger, more established companies. Example: 0.5
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `wait_for_enrichment` (`boolean`, optional): Whether to wait when a seed domain is not in CompanyEnrich's database yet. Defaults to true. Set false to return 404 straight away when any seed company is missing; the missing domains are then enriched in the background so a later retry succeeds.
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{"domains":["stripe.com"]}`

### `companyenrich_search_cities`

Search Cities · Read-only

Search cities by name, optionally within given countries. Free.
Returns items (id, name, latitude, longitude), page, totalPages and totalItems; up to 100 per page.
Use this to get the numeric IDs for the cities filter of companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `country_codes` (`array`, optional): Two-letter country codes to search within. Example: ["US"]
- `page` (`integer`, optional): Page number, starting at 1. Each page holds up to 100 results. Example: 1
- `query` (`string`, optional): Name or part of a name, up to 30 characters. Example: san fran

Example input: `{}`

### `companyenrich_search_companies`

Search Companies · Read-only

Search CompanyEnrich's company database by text, meaning or filters such as location, size, revenue, industry, keywords, technologies and funding. Costs 1 credit per company returned (minimum 1).
Returns items (full company profiles), page, totalPages and totalItems.
Use this to build a list of target accounts; pages reach at most 10,000 results. Use companyenrich_count_companies to size a search for free first, companyenrich_scroll_companies to go past 10,000 results, and companyenrich_find_similar_companies to find lookalikes of known companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `category` (`array`, optional): Business model categories to include: b2b, b2c, b2g, e-commerce, media, service-provider, mobile, saas. Combine several with category_operator. Example: ["b2b", "saas"]
- `category_operator` (`string`, optional): How multiple categories combine: And (company must match all, the default) or Or (any). One of: `And`, `Or`.
- `cities` (`array`, optional): Numeric city IDs to filter by, from companyenrich_search_cities. Example: [111182]
- `countries` (`array`, optional): Two-letter ISO country codes of the company's headquarters. Example: ["US", "GB"]
- `employees` (`array`, optional): Employee count ranges from CompanyEnrich's own data: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K. Example: ["51-200", "201-500"]
- `exclude` (`object`, optional): Companies to leave out. A company matching any of these is excluded. Accepts the same filters as the include side, in the API's camelCase form (domains, countries, regions, states, cities, type, category, employees, reportedEmployees, revenue, naicsCode, keywords, technologies, fundingRounds). Example: {"domains": ["stripe.com"], "countries": ["CN"]}
- `expand` (`array`, optional): Extra response fields to include. The only value is workforce, which adds a workforce object (observed employee count, employee range and headcount by department) to each company and costs 5 extra credits per company. Omit to skip it. Example: ["workforce"]
- `founded_year` (`object`, optional): Range of founding years, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `funding_amount` (`object`, optional): Range of total funding raised in USD, inclusive, as an object with min and/or max. Example: {"min": 1000000, "max": 50000000}
- `funding_rounds` (`array`, optional): Funding round types the company has raised: seed, debt_financing, angel, venture, series_a, series_b, series_c, series_d, series_e, series_f, series_g, series_h, other. Example: ["series_a", "series_b"]
- `funding_year` (`object`, optional): Range of years of the latest funding round, inclusive, as an object with min and/or max. Example: {"min": 2015, "max": 2022}
- `keywords` (`array`, optional): Keywords describing what the company does. companyenrich_autocomplete_keywords suggests valid keywords. Example: ["payments", "fintech"]
- `keywords_operator` (`string`, optional): How multiple keywords combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `lists` (`array`, optional): Only return companies saved in these CompanyEnrich company lists, by list ID (UUID). companyenrich_list_company_lists returns the IDs. Example: ["3fa85f64-5717-4562-b3fc-2c963f66afa6"]
- `naics_codes` (`array`, optional): NAICS industry codes, 2 to 6 digits. A shorter code includes every 6-digit code under it. companyenrich_list_industries maps industries to codes. Example: [5112, 541511]
- `page` (`integer`, optional): Page number to return, starting at 1. page times page_size cannot exceed 10,000. Example: 2
- `page_size` (`integer`, optional): Results per page, 1 to 100. Example: 25
- `query` (`string`, optional): Text matched against company names and domains, up to 250 characters. Example: stripe
- `regions` (`array`, optional): Region IDs to filter by, from companyenrich_list_regions. Example: ["europe"]
- `reported_employees` (`array`, optional): Employee count ranges as reported by external data providers, same values as employees. Example: ["1K-5K"]
- `require` (`array`, optional): Data the company record must have: linkedin, twitter, facebook, instagram, angellist, crunchbase, youtube, country, city, state, revenue, foundedYear, anyFunding. Example: ["linkedin", "revenue"]
- `revenue` (`array`, optional): Annual revenue ranges in USD: under-1m, 1m-10m, 10m-50m, 50m-100m, 100m-200m, 200m-1b, over-1b. Example: ["10m-50m"]
- `semantic_query` (`string`, optional): Natural-language description of the companies to find, up to 500 characters. Ranked by meaning rather than exact words. Example: developer tools for payments infrastructure
- `semantic_weight` (`number`, optional): How much the semantic query counts against the other ranking factors, from 0 to 1. Defaults to 0.7; higher values favour semantic similarity. Only used with semantic_query. Example: 0.7
- `states` (`array`, optional): Numeric state IDs to filter by, from companyenrich_search_states. Example: [1416]
- `technologies` (`array`, optional): Technologies the company uses. companyenrich_autocomplete_technologies suggests valid names. Example: ["Salesforce", "HubSpot"]
- `technologies_operator` (`string`, optional): How multiple technologies combine: And (all, the default) or Or (any). One of: `And`, `Or`.
- `type` (`array`, optional): Company ownership types to include: private, public, self-employed, self-owned, partnership, nonprofit, educational, government. Example: ["private", "public"]
- `workforce_growth` (`object`, optional): Filter on headcount growth over a period. period is m6 (6 months), y1 or y2; department is overall (the default) or one of c_suite, product_management, engineering_technical, design, education, finance, human_resources, information_technology, legal, marketing, medical_health, operations, sales, consulting; minPercent and maxPercent bound the change in percent (15 means 15% growth, -10 means 10% decline). Example: {"period": "y1", "department": "engineering_technical", "minPercent": 20}
- `workforce_size` (`array`, optional): Filter on absolute headcount, one entry per department. Each entry has a department (overall by default, or a department such as engineering_technical or sales) and a min and/or max headcount. Example: [{"department": "engineering_technical", "min": 50}]

Example input: `{}`

### `companyenrich_search_countries`

Search Countries · Read-only

Search countries by name. Free.
Returns items (code, name, latitude, longitude), page, totalPages and totalItems; up to 100 per page.
Use this to find the two-letter codes for the countries filter of the search tools.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `page` (`integer`, optional): Page number, starting at 1. Each page holds up to 100 results. Example: 1
- `query` (`string`, optional): Country name or part of it, up to 30 characters. Example: germ

Example input: `{}`

### `companyenrich_search_people`

Search People · Read-only

Search for professionals by employer, job title, seniority, department, location or education. Costs 2 credits per person returned (minimum 2).
Returns items (person profiles with id, name, position, seniority, department, location, social URLs and work experience), page, totalPages and totalItems; pages reach at most 10,000 results.
Use this to find decision makers at target accounts. Use companyenrich_scroll_people to go past 10,000 results, companyenrich_lookup_person_by_email when you already have an email address, and companyenrich_find_person_email to get a found person's work email.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `at_current_company_after` (`string`, optional): Only include people who joined their current company after this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `at_current_company_before` (`string`, optional): Only include people who joined their current company before this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `at_current_position_after` (`string`, optional): Only include people who started their current position after this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `at_current_position_before` (`string`, optional): Only include people who started their current position before this UTC date-time (ISO 8601). Example: 2025-01-01T00:00:00Z
- `company_filter` (`object`, optional): Find people at companies that match a company search or a lookalike search instead of listing domains. Set search to an object of company filters in the API's camelCase form (for example countries, employees, keywords, technologies), or similar to {"domains": [...]} to target lookalikes of those companies. Example: {"search": {"countries": ["US"], "employees": ["51-200"], "keywords": ["fintech"]}}
- `countries` (`array`, optional): Two-letter ISO country codes of where the person is located. Example: ["US"]
- `department` (`array`, optional): Departments to include. Use a top-level department (c-suite, product-management, engineering-technical, design, education, finance, human-resources, information-technology, legal, marketing, medical-health, operations, sales, consulting) or a sub-department written as parent/child, such as sales/inside-sales or engineering-technical/software-development. Example: ["sales", "marketing/demand-generation"]
- `domains` (`array`, optional): Domains of the companies the people currently work at, up to 2,500. Example: ["stripe.com"]
- `education` (`object`, optional): Filter on schools attended: institutionNameQuery takes school name search terms and institutionLinkedinHandles takes the schools' LinkedIn handles. Example: {"institutionNameQuery": ["Stanford"]}
- `exclude` (`object`, optional): People to leave out. A person matching any of these is excluded. Supports positionQuery, countries, domains, seniority, department and education, in the same form as the include filters. Example: {"seniority": ["intern", "entry"], "domains": ["example.com"]}
- `expand` (`array`, optional): Extra response fields to include. The only value is education, which adds the education history to each person and costs 1 extra credit per person. Omit to skip it. Example: ["education"]
- `page` (`integer`, optional): Page number to return, starting at 1. page times page_size cannot exceed 10,000. Example: 2
- `page_size` (`integer`, optional): Results per page, 1 to 100. Example: 25
- `position_query` (`array`, optional): Job title search terms matched against each person's current position. A person matches if any term matches. companyenrich_autocomplete_positions suggests titles. Example: ["head of sales", "vp sales"]
- `query` (`string`, optional): Free-text query, up to 250 characters. CompanyEnrich documents it as matching the company name and domain. Example: stripe
- `seniority` (`array`, optional): Seniority levels to include: owner, founder, c-suite, partner, vp, head, director, manager, senior, entry, intern. Example: ["vp", "director"]

Example input: `{}`

### `companyenrich_search_states`

Search States · Read-only

Search states or provinces by name, optionally within given countries. Free.
Returns items (id, name, code, latitude, longitude), page, totalPages and totalItems; up to 100 per page.
Use this to get the numeric IDs for the states filter of companyenrich_search_companies.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `country_codes` (`array`, optional): Two-letter country codes to search within. Example: ["US"]
- `page` (`integer`, optional): Page number, starting at 1. Each page holds up to 100 results. Example: 1
- `query` (`string`, optional): Name or part of a name, up to 30 characters. Example: calif

Example input: `{}`

## Related

Other CRM & Sales connectors ([all 103](/agentkit/connectors/?category=crm-sales)):

- [Insightly](/agentkit/connectors/insightly/): Scalekit connector, API key, 108 tools
- [HubSpot](/agentkit/connectors/hubspot/): Scalekit connector, OAuth, 457 tools
- [Salesforce](/agentkit/connectors/salesforce/): Scalekit connector, OAuth, 74 tools


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
