---
title: "Create a pending upload"
method: POST
path: "/api/pending-uploads"
tags: ["Uploads"]
---

# Create a pending upload

`POST /api/pending-uploads`

## Request

- Base URL: `https://www.ifillpdf.com`
- URL: `https://www.ifillpdf.com/api/pending-uploads`
- Auth: none required

Upload a PDF anonymously with multipart/form-data, or request a signed Supabase upload token with JSON. The returned id can be passed as pending_upload_id to the document endpoints.

## Request body

- PendingUploadRequest
  - `fileName` string, required
  - `sizeBytes` integer, required
  - `contentType` string

## Response `200`

Pending upload created.

- union
  - PendingUpload
    - `id` string, required
    - `expires_at` string, date-time, required
  - SignedPendingUpload
    - `id` string, required
    - `expires_at` string, date-time, required
    - `path` string, required
    - `token` string, required

## Other responses

- `400`: Invalid request.
- `413`: PDF exceeds the accepted size.
- `429`: Rate limit exceeded.

---

[API](https://skmtc.dev/ifillpdf/apis/ifillpdf-api.md) · [All operations](https://skmtc.dev/ifillpdf/apis/ifillpdf-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ifillpdf/apis/ifillpdf-api/revisions/17d927bde9ea?raw)
