---
title: "Create export job"
method: POST
path: "/companies/search/async"
tags: ["Company / Export"]
---

# Create export job

`POST /companies/search/async`

## Request

- Base URL: `https://api.companyenrich.com`
- URL: `https://api.companyenrich.com/companies/search/async`
- Auth: API key in header `Authorization`

**Cost:** 1 credit per company returned (reserved when the job is created, settled on completion)

Creates an asynchronous search export job for up to 50,000 companies.
Supports both standard company search and similar-company search.
Returns a job ID immediately. The webhook URL will be called with a notification when processing completes.

Use the status endpoint to track progress and retrieve results.

## Query parameters

- `expand` string[]

## Request body

- AsyncSearchRequest
  - `count` integer, required: The number of companies to export.
  - `webhook_url` string, uri, nullable: The webhook URL to receive the notification when processing completes.
  - `search` CompanySearchInput2, nullable: The filters to be applied on the companies
    - `lists` string[], nullable: The list IDs to filter by
    - `semanticQuery` string, nullable: The semantic search query to find companies with. More natural language version of the standard query.
    - `semanticWeight` number, double, nullable: The semantic weight to apply to the results. Must be between 0 and 1. 0.7 is default. Larger values will prioritize semantic similarity, smaller values will prioritize traditional search factors.
    - `exclude` CompanyExcludeFilters, nullable: Exclusion filters to apply on the companies. If a company matches any of the filters here, it will be excluded from the results.
      - `domains` string[], nullable: The domain names of companies to exclude from the results
      - `regions` string[], nullable: The region IDs to filter by
      - `countries` string[], nullable: The 2 letter country codes to filter by
      - `states` integer[], nullable: The state IDs to filter by
      - `cities` integer[], nullable: The city IDs to filter by
      - `type` CompanyType[], nullable: The list of company types to filter by
      - `category` CompanyCategory[], nullable: The list of company categories to filter by
      - `employees` CompanyEmployees[], nullable: The list of employee counts to filter by
      - `reportedEmployees` CompanyEmployees[], nullable: The list of externally reported employee counts to filter by
      - `revenue` CompanyRevenue[], nullable: The list of revenue ranges to filter by
      - `naicsCode` integer[], nullable: The NAICS codes to filter by. Can be 2 to 6 digit codes. In case of a 2-5 digit code, all 6 digit codes under it will be included
      - `keywords` string[], nullable: The keywords to filter by
      - `technologies` string[], nullable: The technologies to filter by
      - `fundingRounds` CompanyFundingRound[], nullable: The funding rounds to filter by
    - `query` string, nullable: The search query to apply on the company name and domain
    - `foundedYear` YearRange, nullable: The range of years
      - `min` integer, nullable: The minimum year (inclusive)
      - `max` integer, nullable: The maximum year (inclusive)
    - `fundingAmount` CompanyFundingAmountRange, nullable: The funding amount range to filter by
      - `min` number, double, nullable: The minimum funding amount (inclusive)
      - `max` number, double, nullable: The maximum funding amount (inclusive)
    - `fundingYear` YearRange, nullable: The range of years
      - `min` integer, nullable: The minimum year (inclusive)
      - `max` integer, nullable: The maximum year (inclusive)
    - `categoryOperator` unknown
    - `keywordsOperator` unknown
    - `technologiesOperator` unknown
    - `workforceGrowth` CompanyWorkforceGrowthInput, nullable: Filter companies by workforce growth percentage over a selected period and department.
      - `period` unknown
      - `department` unknown
      - `minPercent` number, double, nullable: The minimum workforce growth percentage (inclusive). Example: 15 means 15% growth, -10 means 10% decline.
      - `maxPercent` number, double, nullable: The maximum workforce growth percentage (inclusive). Example: 15 means 15% growth, -10 means 10% decline.
    - `workforceSize` CompanyWorkforceSizeInput[], nullable: Filter companies by absolute workforce headcount. Multiple entries can be provided to filter on different departments simultaneously.
      - `department` unknown
      - `min` integer, nullable: The minimum headcount (inclusive).
      - `max` integer, nullable: The maximum headcount (inclusive).
    - `require` FeatureRequirement[], nullable: The features that must exist for the company
    - `regions` string[], nullable: The region IDs to filter by
    - `countries` string[], nullable: The 2 letter country codes to filter by
    - `states` integer[], nullable: The state IDs to filter by
    - `cities` integer[], nullable: The city IDs to filter by
    - `type` CompanyType[], nullable: The list of company types to filter by
    - `category` CompanyCategory[], nullable: The list of company categories to filter by
    - `employees` CompanyEmployees[], nullable: The list of employee counts to filter by
    - `reportedEmployees` CompanyEmployees[], nullable: The list of externally reported employee counts to filter by
    - `revenue` CompanyRevenue[], nullable: The list of revenue ranges to filter by
    - `naicsCode` integer[], nullable: The NAICS codes to filter by. Can be 2 to 6 digit codes. In case of a 2-5 digit code, all 6 digit codes under it will be included
    - `keywords` string[], nullable: The keywords to filter by
    - `technologies` string[], nullable: The technologies to filter by
    - `fundingRounds` CompanyFundingRound[], nullable: The funding rounds to filter by
  - `similar` CompanySimilarInput, nullable: The filters used to find similar companies
    - `domains` string[]: The domains to find similar companies for. Up to 10 domains are allowed.
    - `similarityWeight` number, double: The similarity weight to apply to the results. Must be between -1 and 1. 0 is default. Larger values will prioritize more similar companies, smaller values will prioritize more established companies.
    - `minScore` number, double, nullable: The minimum similarity score required for results. Must be between 0 and 1. When omitted, the default cutoff is used.
    - `exclude` CompanyExcludeFilters, nullable: Exclusion filters to apply on the companies. If a company matches any of the filters here, it will be excluded from the results.
      - `domains` string[], nullable: The domain names of companies to exclude from the results
      - `regions` string[], nullable: The region IDs to filter by
      - `countries` string[], nullable: The 2 letter country codes to filter by
      - `states` integer[], nullable: The state IDs to filter by
      - `cities` integer[], nullable: The city IDs to filter by
      - `type` CompanyType[], nullable: The list of company types to filter by
      - `category` CompanyCategory[], nullable: The list of company categories to filter by
      - `employees` CompanyEmployees[], nullable: The list of employee counts to filter by
      - `reportedEmployees` CompanyEmployees[], nullable: The list of externally reported employee counts to filter by
      - `revenue` CompanyRevenue[], nullable: The list of revenue ranges to filter by
      - `naicsCode` integer[], nullable: The NAICS codes to filter by. Can be 2 to 6 digit codes. In case of a 2-5 digit code, all 6 digit codes under it will be included
      - `keywords` string[], nullable: The keywords to filter by
      - `technologies` string[], nullable: The technologies to filter by
      - `fundingRounds` CompanyFundingRound[], nullable: The funding rounds to filter by
    - `query` string, nullable: The search query to apply on the company name and domain
    - `foundedYear` YearRange, nullable: The range of years
      - `min` integer, nullable: The minimum year (inclusive)
      - `max` integer, nullable: The maximum year (inclusive)
    - `fundingAmount` CompanyFundingAmountRange, nullable: The funding amount range to filter by
      - `min` number, double, nullable: The minimum funding amount (inclusive)
      - `max` number, double, nullable: The maximum funding amount (inclusive)
    - `fundingYear` YearRange, nullable: The range of years
      - `min` integer, nullable: The minimum year (inclusive)
      - `max` integer, nullable: The maximum year (inclusive)
    - `categoryOperator` unknown
    - `keywordsOperator` unknown
    - `technologiesOperator` unknown
    - `workforceGrowth` CompanyWorkforceGrowthInput, nullable: Filter companies by workforce growth percentage over a selected period and department.
      - `period` unknown
      - `department` unknown
      - `minPercent` number, double, nullable: The minimum workforce growth percentage (inclusive). Example: 15 means 15% growth, -10 means 10% decline.
      - `maxPercent` number, double, nullable: The maximum workforce growth percentage (inclusive). Example: 15 means 15% growth, -10 means 10% decline.
    - `workforceSize` unknown[], nullable: Filter companies by absolute workforce headcount. Multiple entries can be provided to filter on different departments simultaneously.
      - unknown
    - `require` FeatureRequirement[], nullable: The features that must exist for the company
    - `regions` string[], nullable: The region IDs to filter by
    - `countries` string[], nullable: The 2 letter country codes to filter by
    - `states` integer[], nullable: The state IDs to filter by
    - `cities` integer[], nullable: The city IDs to filter by
    - `type` CompanyType[], nullable: The list of company types to filter by
    - `category` CompanyCategory[], nullable: The list of company categories to filter by
    - `employees` CompanyEmployees[], nullable: The list of employee counts to filter by
    - `reportedEmployees` CompanyEmployees[], nullable: The list of externally reported employee counts to filter by
    - `revenue` CompanyRevenue[], nullable: The list of revenue ranges to filter by
    - `naicsCode` integer[], nullable: The NAICS codes to filter by. Can be 2 to 6 digit codes. In case of a 2-5 digit code, all 6 digit codes under it will be included
    - `keywords` string[], nullable: The keywords to filter by
    - `technologies` string[], nullable: The technologies to filter by
    - `fundingRounds` CompanyFundingRound[], nullable: The funding rounds to filter by

## Response `200`

OK

- AsyncSearchResponse
  - `job_id` string, uuid: Unique identifier for the search export job.
  - `status` 'pending' | 'processing' | 'completing' | 'completed' | 'failed': Current status of the job (pending, processing, completing, completed, failed).
  - `requested_count` integer: Number of companies requested for export.
  - `total_matching` integer: Total number of companies matching the search criteria.
  - `estimated_credits` integer: Estimated credit cost for the export job.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Payment Required
- `422`: Unprocessable Entity
- `429`: Too Many Requests

---

[API](https://skmtc.dev/companyenrich/apis/company-enrich-api.md) - [All operations](https://skmtc.dev/companyenrich/apis/company-enrich-api/llms.txt) - [OpenAPI document](https://skmtc.dev/companyenrich/apis/company-enrich-api/revisions/07f84debab87?raw)
