Free image resizer

Drop an image and give it a new width, a new height or both: fitted inside the box with all of the picture kept, or filling the box as a thumbnail cut from the centre. It is never enlarged unless you ask. The form calls the same free API your code can call: one POST, no API key and no account. The result waits in Storage for 24 hours.

The whole API
curl -s -X POST https://aisenseapi.com/services/v1/image_resize \
  -F "file=@photo.jpg" \
  -F "width=800"

{
  "storage_id": "993a1e6c-05c7-499e-a91c-27acfd276821",
  "storage_url": "https://aisenseapi.com/services/v1/storage/993a1e6c-05c7-499e-a91c-27acfd276821",
  "sha256_hash": "5873dba208f75963c40bc01d7d9542a82473218bc274dab6ea9917c9264c329b",
  "bytes": 102116,
  "expire_timestamp": 1790806372,
  "expire_datetime": "2026-09-30T22:12:52+00:00",
  "content_type": "image/jpeg",
  "filename": "result.jpg",
  "operation": "image_resize",
  "format": "jpeg",
  "width": 800,
  "height": 600,
  "input_format": "jpeg",
  "input_bytes": 641358,
  "input_width": 1600,
  "input_height": 1200,
  "fit": "contain",
  "upscaled": false
}
No API key No account Keeps the aspect ratio Square thumbnails HEIC in

Try it in the browser

This form posts your image to the same endpoint and shows the stored result. The image is sent to aisenseapi.com, and the result is kept for 24 hours at a link that anyone with the link can open.

Drop an image here or click to choose one, or paste it with Ctrl+V. JPEG, PNG, WebP or HEIC, up to 10 MB.

How the resize works

The API

POST https://aisenseapi.com/services/v1/image_resize with multipart/form-data.

FieldRequiredMeaning
fileyesThe image: JPEG, PNG, WebP or HEIC.
width, heightone of themThe box in pixels, from 1 to 10000.
fitnocontain or cover. contain when left out; cover needs both sides.
upscalenotrue to let a smaller picture be enlarged. false when left out.
formatnojpeg, png or webp. The format of the upload when left out, and JPEG for a HEIC.
quality, losslessnoAs on the image converter: 40 to 95 for JPEG and WebP, 82 when left out, and lossless for WebP.

The answer has the Storage fields, width and height of the result, and input_width and input_height, the size of the upload once turned upright. fit repeats the fit, and upscaled says whether the picture was enlarged.

The answer is a Storage link

The endpoint never sends the image in its answer. It stores the result for 24 hours and answers with the same fields the Temporary Storage API answers with, plus what the result is:

FieldMeaning
storage_id, storage_urlWhere the result is. A GET on the URL returns the image.
sha256_hash, bytesThe digest and size of the stored image.
expire_timestamp, expire_datetimeWhen the result is removed, 24 hours after it was stored.
content_type, filenameThe type of the image and the name to save it under.
operation, format, width, heightThe endpoint that made it, and the format and size of the result in pixels.
input_format, input_bytesWhat the upload was, so the saving can be read off.

The example at the top of the page comes from a test run with a test image of 1600 x 1200 pixels. The id and the expiry are different on every call, and the sizes depend on the image.

Anyone with the link can open the image until it expires, so do not send pictures of people or anything confidential. Stored results count against the Storage budget of 80 MB per IP address per day.

Limits

Errors

A refused request stores nothing and answers with error. The endpoint's own refusals also carry fix, a sentence saying what to send instead.

StatusWhen
400A field is missing, unknown or out of range, the upload is not one whole file, or ImageMagick cannot read the image.
405The method is not POST.
413The upload, its number of pixels or the result is over a limit.
415The body is not multipart/form-data, or the file is not a JPEG, PNG, WebP or HEIC.
429More than 5000 requests from one IP address in 24 hours, or the day's Storage budget is used up.
503Two images are being converted already, the conversion took more than 45 seconds, or the service cannot convert right now.

Questions

Is the image resizer API free?

Yes. No API key, no account and no sign up. The limit is 5000 requests per IP address per 24 hours, and stored results count against the Storage budget of 80 MB per IP address per day.

Does it keep the aspect ratio?

Yes. Contain fits all of the picture inside the box, and cover fills the box and cuts what sticks out from the centre. Neither stretches the picture.

How do I make a square thumbnail?

Send the same width and height with fit=cover, for example 400 and 400. The picture fills the square and is cut from the centre.

Will it enlarge a small image?

Only if you send upscale=true. Otherwise a picture already smaller than the box keeps its size, and the answer says upscaled: false.

Can it resize iPhone photos?

Yes. It reads HEIC, turns the photo upright, keeps its colour profile and gives back a JPEG unless you ask for PNG or WebP.

Is the location removed?

Yes. EXIF with the GPS position, XMP, IPTC and comments are removed from every result. The colour profile is kept.

All image endpoints All free public APIs