---
title: "Upload Deployment Files"
method: POST
path: "/v2/files"
tags: ["deployments"]
---

# Upload Deployment Files

`POST /v2/files`

Before you create a deployment you need to upload the required files for that deployment. To do it, you need to first upload each file to this endpoint. Once that's completed, you can create a new deployment with the uploaded files. The file content must be placed inside the body of the request. In the case of a successful response you'll receive a status code 200 with an empty body.

## Query parameters

- `teamId` string
- `slug` string

## Headers

- `'content-Length'` number — The file size in bytes
- `'x-Vercel-Digest'` string — The file SHA1 used to check the integrity
- `'x-Now-Digest'` string — The file SHA1 used to check the integrity
- `'x-Now-Size'` number — The file size as an alternative to `Content-Length`

## Response `200`

File already uploaded
File successfully uploaded

- union
  - object
    - `urls` string[], required — Array of URLs where the file was updated
  - object

## Other responses

- `400` — One of the provided values in the headers is invalid Digest is not valid File size is not valid
- `401` — The request is not authorized.
- `403` — You do not have permission to access this resource.
- `410`
- `426`

---

[API](https://skmtc.net/vercel/apis/api.md) · [All operations](https://skmtc.net/vercel/apis/api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vercel/api/versions/61d1ba3f6dac/schema)
