---
title: "Reshape one image into several platform canvases in a single call."
method: POST
path: "/v1/media/{id}/variants"
tags: ["Media"]
---

# Reshape one image into several platform canvases in a single call.

`POST /v1/media/{id}/variants`

## Request

- Base URL: `https://api.ravenpo.st`
- URL: `https://api.ravenpo.st/v1/media/{id}/variants`
- Auth: HTTP bearer

Cropping is saliency-based by default — an off-centre subject survives a 4:5 → 9:16 cut, where a centre crop would keep the wall behind them. Pass `crop: "centre"` for posters, screenshots and flat graphics composed around their middle. Two formats with the same dimensions produce one file, not two, and each variant inherits the source’s alt text and folder. Images only.

## Path parameters

- `id` string, required

## Request body

- object
  - `formats` string[], required: Canvases to produce: 1080×1350 (4:5), 1080×1080 (1:1), 1080×566 (1.91:1), 1080×1920 (9:16 — also reels and TikTok photos).
  - `fit` string: 'cover' crops to fill (default); 'contain' pads so nothing is cut off.
  - `crop` string: 'smart' is saliency-based and the default; 'centre' is the predictable middle crop.

## Response `200`

Success

## Other responses

- `401`: Missing, malformed or revoked token
- `429`: Rate limited (30 requests/minute)

---

[API](https://skmtc.dev/ravenpo/apis/ravenpost-api.md) · [All operations](https://skmtc.dev/ravenpo/apis/ravenpost-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ravenpo/apis/ravenpost-api/revisions/82905d43e21d?raw)
