---
title: "Upload an image"
method: POST
path: "/api/v1/media"
tags: ["media"]
---

# Upload an image

`POST /api/v1/media`

## Request

- Base URL: `https://api.cadencz.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.cadencz.com/api/v1/media`
- Auth: HTTP bearer

Stores the file in the media bucket and records a MediaAsset. JPEG, PNG, GIF or WebP, 10MB max. WebP and still GIFs are stored as PNG; animated GIFs are kept and marked `gif`.

## Response `200`

Successful Response

- object

## Other responses

- `401`: Missing or invalid Supabase bearer token.
- `413`: File too large.
- `422`: Validation Error

---

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