---
title: "Start CSV enrichment job"
method: POST
path: "/csv-enrichments/{jobID}/start"
tags: ["csv-enrichments"]
---

# Start CSV enrichment job

`POST /csv-enrichments/{jobID}/start`

## Request

- Base URL: `https://api.leadsforge.ai`
- URL: `https://api.leadsforge.ai/csv-enrichments/{jobID}/start`
- Auth: API key in header `Authorization`

Schedules processing of the configured job. Returns 400 with the mapping report in the error data when a mapped column does not look like the field it was mapped to; resend with acknowledgeMappingWarnings to proceed anyway.

## Path parameters

- `jobID` string, required

## Request body

- StartCSVEnrichmentRequest
  - `acknowledgeMappingWarnings` boolean

## Response `200`

OK

- CSVEnrichmentJobResponse
  - `billedCredits` number
  - `billedEmailCredits` number
  - `billedLinkedinCredits` number
  - `billedPhoneCredits` number
  - `completedAt` string
  - `createdAt` string
  - `emailUnitPrice` number
  - `failedRows` integer
  - `failureReason` string
  - `fileSizeBytes` integer
  - `headers` string[]
  - `id` string
  - `linkedinUnitPrice` number
  - `listID` string
  - `mapping` CSVEnrichmentMappingResponse
    - `companyNameColumn` string
    - `companyUrlColumn` string
    - `emailColumn` string
    - `firstNameColumn` string
    - `lastNameColumn` string
    - `linkedinUrlColumn` string
    - `phoneColumn` string
  - `mappingReport` CSVEnrichmentMappingReport
    - `blocking` boolean
    - `columns` CSVEnrichmentColumnReport[]
      - `blocking` boolean
      - `column` string
      - `field` string
      - `reason` 'not_an_email' | 'not_a_phone_number' | 'not_a_linkedin_profile_url' | 'not_a_url' | 'not_a_name'
      - `tier` 'strict' | 'weak'
      - `valuesInvalid` integer
      - `valuesPresent` integer
  - `options` CSVEnrichmentOptionsResponse
    - `enrichEmail` boolean
    - `enrichLinkedin` boolean
    - `enrichPhone` boolean
  - `originalFilename` string
  - `phoneUnitPrice` number
  - `processedRows` integer
  - `reservedCredits` number
  - `skippedRows` integer
  - `startedAt` string
  - `status` 'draft' | 'configured' | 'started' | 'in_progress' | 'failed' | 'completed'
  - `succeededRows` integer
  - `totalRows` integer
  - `unitPrice` number
  - `updatedAt` string

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `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)
