---
title: "Request an upload URL for a source file"
method: POST
path: "/v1/files"
tags: ["Files"]
---

# Request an upload URL for a source file

`POST /v1/files`

## Request

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

## Request body

- CreateFileRequest
  - `filename` string, required
  - `delimiter` string
  - `hasRowHeader` boolean

## Response `200`

Upload URL issued

- CreateFileResponse
  - `uploadUrl` string: Pre-signed URL to PUT the file to
  - `fileRef` string: Opaque reference passed to POST /v1/jobs
  - `expiresInMinutes` integer

## 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)
