---
title: "Starts the upload process"
method: POST
path: "/uploads/{id}"
---

# Starts the upload process

`POST /uploads/{id}`

Initializes the upload for a deal. Each upload must be initialized before chunks can be uploaded for a deal.

## Path parameters

- `id` string, required

## Request body

- Mk20StartUpload
  - `chunk_size` integer — ChunkSize defines the size of each data chunk to be used during the upload process.
  - `raw_size` integer — RawSize indicates the total size of the data to be uploaded in bytes.

## Response `200`

UploadStartCodeOk indicates a successful upload start request with status code 200

## Other responses

- `400` — Bad Request - Invalid input or validation error
- `404` — UploadStartCodeDealNotFound represents a 404 status indicating the deal was not found during the upload start process
- `409` — UploadStartCodeAlreadyStarted indicates that the upload process has already been initiated and cannot be started again
- `500` — UploadStartCodeServerError indicates an error occurred on the server while processing an upload start request

---

[API](https://skmtc.net/filecoin-project/apis/curio-market-2-0-api.md) · [All operations](https://skmtc.net/filecoin-project/apis/curio-market-2-0-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/filecoin-project/curio-market-2-0-api/versions/4406be02a799/schema)
