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 Remova a marca d'água de brilho Gemini Nano Banana de imagens geradas por IA. Envie seu arquivo PNG, JPG ou WebP e obtenha uma imagem limpa em segundos — sem cadastro necessário.
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 Reduza o tamanho de arquivos de imagem em até 80% com compressão inteligente. Escolha seu nível de qualidade e formato de saída. Perfeito para otimização 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 Converta imagens entre todos os principais formatos web: PNG, JPG e WebP. Otimize para a web ou garanta compatibilidade 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 Redimensione imagens para dimensões específicas em pixels. Mantenha a proporção com o modo Ajustar, corte para preencher ou estique para o tamanho exato.
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 Remova metadados EXIF de imagens incluindo localização GPS, modelo da câmera, data da foto e outras informações pessoais. Proteja sua privacidade antes de compartilhar fotos online.
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 Descubra instantaneamente seu endereço IP público junto com dados detalhados de geolocalização, incluindo país, cidade, região, ISP, fuso horário e mais. Veja sua localização aproximada em um mapa interativo. Os bancos de dados são atualizados 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 Insira qualquer endereço IPv4 ou IPv6 para obter dados detalhados de geolocalização, incluindo país, cidade, região, ISP, fuso horário e coordenadas. Visualize a localização em um mapa interativo. Usa bancos de dados GeoLite2 atualizados 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.