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

# Create export job

`POST /people/search/async`

## Request

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

**Cost:** 2 credits per person returned (reserved when the job is created, settled on completion)

Creates an asynchronous search export job for up to 50,000 people.
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

- AsyncPersonSearchRequest
  - `count` integer, required: The number of people to export.
  - `webhook_url` string, uri, nullable: The webhook URL to receive the notification when processing completes.
  - `companyFilter` CompanyLookupInput, nullable: The filters to be applied on the companies to find people for
    - `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
  - `query` string, nullable: The search query to apply on the company name and domain
  - `positionQuery` string[], nullable: The list of search queries to apply on the person's current job position/title
  - `atCurrentCompanyAfter` string, date-time, nullable: Filter by current company join date - only include people who joined after this UTC date
  - `atCurrentCompanyBefore` string, date-time, nullable: Filter by current company join date - only include people who joined before this UTC date
  - `atCurrentPositionAfter` string, date-time, nullable: Filter by current position start date - only include people who started after this UTC date
  - `atCurrentPositionBefore` string, date-time, nullable: Filter by current position start date - only include people who started before this UTC date
  - `exclude` PersonExcludeFilters, nullable: Exclusion filters to apply on the people. If a person matches any of the filters here, it will be excluded from the results.
    - `positionQuery` string[], nullable: The list of search queries to exclude on the person's current job position/title
    - `countries` string[], nullable: The 2 letter country codes to filter by
    - `domains` string[], nullable: The domains to find people for. Up to 2,500 domains are allowed.
    - `seniority` PersonSeniority[], nullable: The seniorities to filter by
    - `department` PersonDepartment[], nullable: The departments to filter by
    - `education` PersonEducationFilterInput, nullable: The education history filters to apply
      - `institutionLinkedinHandles` string[], nullable: The LinkedIn handles of education institutions to filter by
      - `institutionNameQuery` string[], nullable: The search queries to apply on education institution names
  - `countries` string[], nullable: The 2 letter country codes to filter by
  - `domains` string[], nullable: The domains to find people for. Up to 2,500 domains are allowed.
  - `seniority` PersonSeniority[], nullable: The seniorities to filter by
  - `department` PersonDepartment[], nullable: The departments to filter by
  - `education` PersonEducationFilterInput, nullable: The education history filters to apply
    - `institutionLinkedinHandles` string[], nullable: The LinkedIn handles of education institutions to filter by
    - `institutionNameQuery` string[], nullable: The search queries to apply on education institution names

## Response `200`

OK

- AsyncPersonSearchResponse
  - `job_id` string, uuid: Unique identifier for the person search export job.
  - `status` 'pending' | 'processing' | 'completing' | 'completed' | 'failed': Current status of the job (pending, processing, completing, completed, failed).
  - `requested_count` integer: Number of people requested for export.
  - `total_matching` integer: Total number of people 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)
