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 Elimina la marca de agua sparkle de Gemini Nano Banana de imágenes generadas por IA. Sube tu archivo PNG, JPG o WebP y obtén una imagen limpia en segundos — sin registro requerido.
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 Reduce el tamaño de los archivos de imagen hasta un 80% con compresión inteligente. Elige tu nivel de calidad y formato de salida. Ideal para la optimización web.
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 Convierte imágenes entre todos los formatos web principales: PNG, JPG y WebP. Optimiza para la web o asegura la compatibilidad entre plataformas.
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 Redimensiona imágenes a dimensiones específicas en píxeles. Mantén la relación de aspecto con el modo Ajustar, recorta para llenar o estira al tamaño exacto.
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 Elimina los metadatos EXIF de las imágenes, incluyendo la ubicación GPS, el modelo de cámara, la fecha de captura y otra información personal. Protege tu privacidad antes de compartir fotos en línea.
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 Descubre al instante tu dirección IP pública junto con datos detallados de geolocalización, incluyendo país, ciudad, región, ISP, zona horaria y más. Visualiza tu ubicación aproximada en un mapa interactivo. Las bases de datos se actualizan diariamente.
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 Introduce cualquier dirección IPv4 o IPv6 para obtener datos detallados de geolocalización, incluyendo país, ciudad, región, ISP, zona horaria y coordenadas. Visualiza la ubicación en un mapa interactivo. Usa bases de datos GeoLite2 actualizadas diariamente.
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.