---
title: "Process uploaded company CSV file"
method: POST
path: "/lists/{listID}/company-file/process"
tags: ["lists"]
---

# Process uploaded company CSV file

`POST /lists/{listID}/company-file/process`

## Request

- Base URL: `https://api.leadsforge.ai`
- URL: `https://api.leadsforge.ai/lists/{listID}/company-file/process`
- Auth: API key in header `Authorization`

Extracts company identifiers (domain and/or LinkedIn URL) from the mapped columns and
queues a background job that resolves them to company IDs against the search index and
appends those IDs to the list's CompanyIDs filter (Include or Exclude). The job is
returned immediately; follow its progress over SSE or by polling the job endpoint.

## Path parameters

- `listID` string, required

## Request body

- ProcessCompanyFileRequest
  - `exclude` boolean
  - `fileID` string, required
  - `linkedinColumn` string
  - `websiteColumn` string

## Response `202`

Accepted

- CompanyFileJobResponse
  - `completedAt` string
  - `createdAt` string
  - `jobID` string
  - `lastError` string
  - `listID` string
  - `matchedCompanies` integer
  - `notMatchedDomains` string[]
  - `notMatchedLinkedInURLs` string[]
  - `processedIdentifiers` integer
  - `status` string
  - `totalIdentifiers` integer
  - `updatedAt` string

## Other responses

- `400`: Bad Request
- `409`: A matching job is already running for this account
- `500`: Internal Server Error

---

[API](https://skmtc.dev/leadsforge/apis/leadsforge-api.md) - [All operations](https://skmtc.dev/leadsforge/apis/leadsforge-api/llms.txt) - [OpenAPI document](https://skmtc.dev/leadsforge/apis/leadsforge-api/revisions/b4a6596215b5?raw)
