---
title: "Create a job from an uploaded file"
method: POST
path: "/v1/jobs"
tags: ["Jobs"]
---

# Create a job from an uploaded file

`POST /v1/jobs`

## Request

- Base URL: `https://dataapi.reachthepeople.ai/api`
- URL: `https://dataapi.reachthepeople.ai/api/v1/jobs`
- Auth: HTTP bearer

## Request body

- CreateJobRequest
  - `type` 'email_append', required: What to append to each matched record
  - `name` string, required
  - `fileRef` string, required: fileRef from POST /v1/files
  - `filename` string, required
  - `delimiter` 'comma' | 'tab' | 'pipe' | 'semicolon': Column delimiter of the uploaded file (the literal character is also accepted)
  - `hasRowHeader` boolean
  - `columns` object, required: Map of your file's columns to identity fields, as { fieldName: columnNumber } (1-based). Recognized fields: title, firstName, middleName, lastName, suffix, fullName, birthdate, address, addressLine2, city, state, zip, zip4, email, phone, mobile. Must include lastName, an address (address / fullAddress / houseNumber), and a zip (zip or zip4) so records can be matched.
  - `emailValidation` 'none' | 'blank' | 'indicator': email_append only: how appended emails are validated
  - `emailHosts` union: email_append only: "all" (default), { include: ["gmail.com", ...] }, or { exclude: [...] }
    - 'all'
    - object
      - `include` string[]
    - object
      - `exclude` string[]
  - `notificationEmail` string: Optional email address to notify when the job completes

## Response `200`

Job created

- CreateJobResponse
  - `jobId` string
  - `status` string

## Other responses

- `400`: Invalid request
- `401`: Missing or invalid API key

---

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