---
title: "Get upload URL"
method: POST
path: "/v1/media/input"
tags: ["Media"]
---

# Get upload URL

`POST /v1/media/input`

To use the provided temporary storage is a two step process.
    You start by declaring a media:// url that you can reference in any other API calls. The response will provide a url where you can put your media. This allows you to use the media:// url as a short-cut for a temporary storage location.
    You'll be returned a pre-signed url you can use to PUT and upload your media file. The temporary storage should allow you to read and write to the media:// locations for a period of at least 24 hours before it is removed.

## Request body

- GetMediaUploadUrl
  - `url` string, required — The url should be in the form media://object-key where the object-key can be any alpha-numeric string. The object-key is unique to your account API token so there is no risk of collision with other users.

## Response `201`

- MediaResponse
  - `url` string, required

## Other responses

- `400` — Invalid request
- `402` — Subscription is required
- `429` — Too many requests

---

[API](https://skmtc.dev/pyannote/apis/pyannoteai-api.md) · [All operations](https://skmtc.dev/pyannote/apis/pyannoteai-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/pyannote/pyannoteai-api/revisions/9d61c3f2d6bb/schema)
