Crop Image API
Crop by dragging, by aspect-ratio presets (1:1, 4:5, 16:9, A4…) or by exact pixels — X, Y, width, height — with a rule-of-thirds grid and batch crop of the same region.
Environment
| Environment | Base URL |
|---|---|
| Production | https://api.sadafiles.com/v1 |
There is one environment and no sandbox, so every request here is real and counts toward your limits.
Request
POSThttps://api.sadafiles.com/v1/tools/crop-image
- Content type
- multipart/form-data
- Auth
- X-API-Key with tools:run
- Accepts
- jpg, png, webp, avif, gif, bmp, tiff, heic and 1 more
- Files per request
- 1 to 500
- Largest file
- 2 GB
- Job timeout
- 120 s
- Rate weight
- 2 units
- Web tool
- Use Crop Image without code
Parameters
Send these as a JSON string in the options form field. Anything else is rejected.
| Name | Type | Default | Allowed |
|---|---|---|---|
mode | string | free | free, ratio, exact |
aspect | string | free | — |
x | integer | — | min 0, px |
y | integer | — | min 0, px |
width | integer | — | min 1, px |
height | integer | — | min 1, px |
gravity | string | center | center, smart, north, south, east, west |
Response
| Status | Body | When |
|---|---|---|
201 | same | The run finished within 60 seconds |
202 | Job summary JSON | Still running; poll the job |
4xx, 5xx | Error JSON | See error codes |
A file response carries X-Sada-Job and X-Sada-Expires-At. For long work, post to /v1/tools/crop-image/jobs instead. See jobs and webhooks.
Also runs on the device
In the web tool and apps, Crop Image can run locally with no upload. The API always processes on the server.
Ready settings
These settings power the matching pages on the site, and work the same in the API.
| Use | options |
|---|---|
| Crop Image to Square (1:1) | {"mode":"ratio","aspect":"1:1"} |
| Crop Image to 4:5 | {"mode":"ratio","aspect":"4:5"} |
| Crop Image to 16:9 | {"mode":"ratio","aspect":"16:9"} |
| Crop Image to 9:16 | {"mode":"ratio","aspect":"9:16"} |
| Crop Image to 1080×1350 | {"mode":"exact","width":1080,"height":1350} |
| Crop Image to 1080×1080 | {"mode":"exact","width":1080,"height":1080} |
Try it yourself!
Pick a file, set the options and run a real request with your key. The code follows your changes.

