---
title: "Create Signed Upload URL"
method: POST
path: "/files/sign"
tags: ["default"]
---

# Create Signed Upload URL

`POST /files/sign`

`org:files:write`

## Request body

- object
  - `date` number, required — The unix timestamp that the URL is signed, ie time of request
  - `expires` number, required — How long the URL is valid for in sconds after signing based on the date parameter
  - `max_file_size` number — Restrict the max size of a file upload in `bytes`
  - `allow_mime_types` string[] — Array of allowed mime types for a file upload, includes wildcards `"image/*"`
  - `group_id` string — ID of the group that the file will be uploaded to
  - `keyvalues` object — Add additional key value metadata to files upon upload
  - `filename` string — Name of the file that will be uploaded

## Response `200`

Successful response

- object
  - `data` string

---

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