---
title: "Upload the file in one request, up to 100 MB"
method: PUT
path: "/api/files/{id}"
tags: ["File links"]
---

# Upload the file in one request, up to 100 MB

`PUT /api/files/{id}`

## Request

- Base URL: `https://audo.ai`
- URL: `https://audo.ai/api/files/{id}`
- Auth: none required

The body is the file, such as curl -T interview.wav "<upload url>": up to 100 MB (100,000,000 bytes), and its size needn't be known in advance. A larger file goes in parts. The link comes from creating or starting the upload and works for an hour.

## Path parameters

- `id` string, required

## Query parameters

- `t` string, required

## Response `200`

OK

- object
  - `id` string, required
  - `kind` 'original' | 'output', required
  - `status` 'awaiting_upload' | 'processing' | 'ready' | 'invalid' | 'deleted', required
  - `filename` string, required
  - `contentType` string, required
  - `sizeBytes` integer, nullable, required
  - `durationSeconds` number, nullable, required
  - `format` string, nullable, required: The container, such as wav or mp4
  - `hasVideo` boolean, required
  - `hasAudio` boolean, required: False for a video without sound, which only replace_audio takes
  - `media` object, nullable, required: Audio and video details, once the file is checked. Null for text files
    - `codec` string, nullable, required: The audio codec, such as aac or pcm_s16le
    - `sampleRate` integer, nullable, required
    - `channels` integer, nullable, required
    - `width` integer, nullable, required: The video's width in pixels, or null without video
    - `height` integer, nullable, required
  - `error` object, nullable, required
    - `code` string, required
    - `message` string, required
  - `prices` object, nullable, required: Credits each tool costs to process this file, once its length is known
  - `sourceJobId` string, nullable, required
  - `createdAt` string, required: ISO 8601 time
  - `expiresAt` string, required: ISO 8601 time

## Other responses

- `default`: An error, with what went wrong and what to do next

---

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