---
title: "Upload a file to Decodable."
method: POST
path: "/files"
tags: ["File Operations"]
---

# Upload a file to Decodable.

`POST /files`

## Request

- Base URL: `https://replace-with-account.api.data.decodable.co/v1alpha2`
- URL: `https://replace-with-account.api.data.decodable.co/v1alpha2/files`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/decodable/apis/decodable-data-plane/docs/files/post.ts> (a function with typed inputs; its response is checked against the schema)

Requires a bearer token for file upload issued by the control plane API.

## Request body `multipart/form-data`

- object
  - `type` 'JOB_FILE' | 'CONFIG_FILE', required
  - `request` object, required
    - `names` string[]
  - `file` string, binary, required

## Other responses

- `200` (unresolved $ref)
- `201` (unresolved $ref)
- `400`: An invalid request was received.
- `403`: Access denied: request is not permitted.
- `default`: An error has occurred.

---

[API](https://skmtc.dev/decodable/apis/decodable-data-plane.md) - [All operations](https://skmtc.dev/decodable/apis/decodable-data-plane/llms.txt) - [OpenAPI document](https://skmtc.dev/decodable/apis/decodable-data-plane/revisions/4303384f9994?raw)
