---
title: "Start a PDF upload"
method: POST
path: "/v1/uploads"
---

# Start a PDF upload

`POST /v1/uploads`

## Request

- Base URL: `https://themassprint.com`
- URL: `https://themassprint.com/v1/uploads`
- Auth: HTTP bearer

Requires an API key or a web session. Returns a signed put_url. PUT the raw PDF bytes to it; the PUT response includes the validation report.

## Response `201`

Upload created

- object
  - `upload_id` string
  - `put_url` string
  - `expires_at` string
  - `max_bytes` integer

## Other responses

- `401`: No API key or session

---

[API](https://skmtc.dev/themassprint/apis/massprint-api.md) · [All operations](https://skmtc.dev/themassprint/apis/massprint-api/llms.txt) · [OpenAPI document](https://skmtc.dev/themassprint/apis/massprint-api/revisions/50555aeed826?raw)
