---
title: "Create an ephemeral upload"
method: POST
path: "/v1/uploads"
tags: ["Uploads"]
---

# Create an ephemeral upload

`POST /v1/uploads`

Creates a presigned URL for uploading media files (image, video, or audio) that can be used in other API generation requests. The uploaded files are ephemeral and will be automatically deleted after use.

## Headers

- `X-Runway-Version` '2024-11-06', required

## Request body

- object
  - `filename` string, required — The filename of the file to upload. Must have a valid extension for image, video, or audio files.
  - `type` 'ephemeral', required — The type of upload to create.

## Response `200`

The upload URL and Runway URI have been successfully created.

- object
  - `uploadUrl` string, uri, required — The URL to upload the file to.
  - `fields` object, required — The fields to include in the presigned POST request as form data.
  - `runwayUri` string, required — The Runway upload URI to use in other API generation requests.

## Other responses

- `400` — The request is invalid. This may occur if the filename does not have a valid extension or is not a supported media type (image, video, or audio).
- `404` — Not found. Ephemeral uploads may not be available for your account.
- `429` — You have exceeded the rate limit for this endpoint.

## Changes

- **2025-11-04** `6902fa9494c5` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/runwayml/apis/runwayml-api/changes/v1/uploads/post.md)

---

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