The playground

Try any of 919 endpoints — live.

Pick an endpoint, load a working example, tweak the params, and send — no signup to try. Results render the way the data deserves; raw JSON, headers & code are one tab away.

Playground demo key · api.reefapi.com
post/file-convert/v1/image_resize1 credit

Resize with fit=contain (aspect kept, fits inside box) / cover (fills+crops) / stretch. No upscaling unless upscale=true. Output delivery: each produced file ≤10MB comes inline as base64 (files[].file_b64); 10-50MB comes as a one-time download token (files[].download_path, 30min TTL); >50MB total is rejected.

Working example
Parameters

The input file as base64 (data-URI prefix tolerated). Max 25MB. Provide file_b64 OR file_url. Multipart upload also works: POST the file as the 'file' form field.

https URL of the input file — fetched server-side through the proxy pool; private/internal/metadata addresses are SSRF-blocked. Max 25MB.

Optional original filename — used only as a hint (e.g. .md detection); the real format is always sniffed from magic bytes.

Target width px (give width and/or height). (1–20000)

Target height px. (1–20000)

Resize strategy.

Allow enlarging beyond the source size.

Optional output format (default: keep source).

Encode quality 1-100 (jpg/webp/avif). (1–100)

request preview
curl -X POST https://api.reefapi.com/file-convert/v1/image_resize \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"file_b64":"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAH0lEQVR42mN4l+VFFcQwatCoQaMGjRo0atCoQQNvEAB6hKyuf+L5NQAAAABJRU5ErkJggg==","width":"64"}'

Hit Send to run this endpoint live.