API Documentation
Access remove.sh tools programmatically via our REST API. Free, no authentication required, CORS enabled.
Base URL
All endpoints are relative to this base URL. HTTPS required.
Endpoints
/health Returns the current status of the API. Use this to verify the service is running before making other requests.
Response
Content-Type: application/json
JSON object with a status field.
Sample Response
{"status": "ok"} Example
curl https://api.remove.sh/health /remove Удалите водяной знак-блёстку Gemini Nano Banana с изображений, сгенерированных ИИ. Загрузите файл PNG, JPG или WebP и получите чистое изображение за секунды — без регистрации.
Parameters
| Name | Type | Description |
|---|---|---|
file | file | Image file with a Gemini watermark (PNG, JPG, or WebP). Also accepts field name image. |
Response
Content-Type: image/png
Clean PNG image with the watermark removed via reverse alpha blending.
Example
curl -X POST \
-F "[email protected]" \
https://api.remove.sh/remove \
--output cleaned.png /tools/image-compress Уменьшите размер файлов изображений до 80% с умным сжатием. Выберите уровень качества и формат вывода. Идеально для веб-оптимизации.
Parameters
| Name | Type | Description |
|---|---|---|
file | file | Image file to compress (PNG, JPG, or WebP). Also accepts field name image. |
quality | integer | Compression quality level. Default: 80 Values: 0–100 |
format | string | Output image format. Default: jpg Values: jpg, png, webp |
Response
Content-Type: image/jpeg (varies by format)
Compressed image in the requested format.
Response Headers
x-original-size — Original file size in bytes
x-compressed-size — Compressed file size in bytes
Example
curl -X POST \
-F "[email protected]" \
-F "quality=60" \
-F "format=webp" \
https://api.remove.sh/tools/image-compress \
--output compressed.webp /tools/image-convert Конвертируйте изображения между всеми основными веб-форматами: PNG, JPG и WebP. Оптимизируйте для веба или обеспечьте совместимость между платформами.
Parameters
| Name | Type | Description |
|---|---|---|
file | file | Image file to convert (PNG, JPG, or WebP). Also accepts field name image. |
format | string | Target output format. Values: png, jpg, webp |
quality | integer | Quality for lossy formats (JPG, WebP). Values: 0–100 |
Response
Content-Type: image/* (matches target format)
Image converted to the requested format.
Example
curl -X POST \
-F "[email protected]" \
-F "format=webp" \
https://api.remove.sh/tools/image-convert \
--output photo.webp /tools/image-resize Изменяйте размер изображений до конкретных пиксельных размеров. Сохраняйте пропорции в режиме «Вписать», обрезайте для заполнения или растягивайте до точного размера.
Parameters
| Name | Type | Description |
|---|---|---|
file | file | Image file to resize (PNG, JPG, or WebP). Also accepts field name image. |
width | integer | Target width in pixels. Omit to auto-calculate from height. |
height | integer | Target height in pixels. Omit to auto-calculate from width. |
mode | string | How the image is fitted to the target dimensions. Default: fit Values: fit, fill, stretch |
Response
Content-Type: image/png
Resized image as a PNG.
Response Headers
x-original-dimensions — Original image dimensions (e.g. 1920x1080)
x-new-dimensions — Dimensions after resize (e.g. 800x450)
Example
curl -X POST \
-F "[email protected]" \
-F "width=800" \
-F "mode=fit" \
https://api.remove.sh/tools/image-resize \
--output resized.png /tools/exif-remove Удалите метаданные EXIF из изображений, включая GPS-координаты, модель камеры, дату съёмки и другую личную информацию. Защитите свою конфиденциальность перед публикацией фотографий.
Parameters
| Name | Type | Description |
|---|---|---|
file | file | Image file to strip metadata from (PNG, JPG, or WebP). Also accepts field name image. |
Response
Content-Type: image/* (preserves original format)
Image with all EXIF metadata (GPS, camera, date, etc.) removed. Original format is preserved.
Response Headers
x-original-size — Original file size in bytes
x-metadata-removed — Always "true" on success
Example
curl -X POST \
-F "[email protected]" \
https://api.remove.sh/tools/exif-remove \
--output clean.jpg /tools/what-is-my-ip Мгновенно определите свой публичный IP-адрес вместе с подробными данными геолокации, включая страну, город, регион, ISP, часовой пояс и многое другое. Посмотрите своё приблизительное местоположение на интерактивной карте. Базы данных обновляются ежедневно.
Response
Content-Type: application/json
Geolocation and network data for the requesting IP address. Uses GeoLite2 databases updated daily.
Sample Response
{
"query": "101.190.80.155",
"continent": "Oceania",
"continentCode": "OC",
"country": "Australia",
"countryCode": "AU",
"region": "NSW",
"regionName": "New South Wales",
"city": "Sydney",
"zip": "2164",
"lat": -33.8437,
"lon": 150.9625,
"timezone": "Australia/Sydney",
"isp": "Telstra Limited",
"as": "AS1221 Telstra Limited"
} Example
curl https://api.remove.sh/tools/what-is-my-ip /tools/ip-lookup Введите любой адрес IPv4 или IPv6, чтобы получить подробные данные геолокации, включая страну, город, регион, ISP, часовой пояс и координаты. Посмотрите местоположение на интерактивной карте. Используются базы данных GeoLite2, обновляемые ежедневно.
Parameters
| Name | Type | Description |
|---|---|---|
ip | string | IPv4 or IPv6 address to look up. |
Response
Content-Type: application/json
Geolocation and network data for the specified IP address. Same response format as /tools/what-is-my-ip.
Sample Response
{
"query": "8.8.8.8",
"continent": "North America",
"continentCode": "NA",
"country": "United States",
"countryCode": "US",
"region": "CA",
"regionName": "California",
"city": "Los Angeles",
"lat": 34.0544,
"lon": -118.2441,
"timezone": "America/Los_Angeles",
"isp": "Google LLC",
"as": "AS15169 Google LLC"
} Example
curl "https://api.remove.sh/tools/ip-lookup?ip=8.8.8.8" Rate Limits & Usage
Rate Limiting
60 requests per minute per IP address. Contact us for higher limits.
Authentication
No authentication required. The API is free and open for everyone.
CORS
CORS enabled for all origins. Call directly from browser applications.
Error Handling
Errors are returned as JSON with an appropriate HTTP status code.
| Status | Meaning |
|---|---|
200 | Success — result returned in the response body. |
400 | Bad request — missing required field, unsupported format, or invalid parameters. |
413 | File too large — maximum upload size is 20 MB. |
429 | Rate limited — too many requests. Wait and retry. |
500 | Internal error — something went wrong processing the request. |
Limits
Max upload size
20 MB
Per file, per request.
Supported formats
Image endpoints accept these formats as input.