RemoveBG

Riferimento dell'API per la rimozione sfondo

Consulta parametri, formati di risposta e differenze rispetto all'API remove.bg. Esamina esempi con file, URL e Base64 e i limiti di ciascun input.

POST https://removebgtool.net/v1.0/removebg
curl --fail-with-body --max-time 180 \
  -H 'X-API-Key: YOUR_API_KEY' \
  -F 'image_file=@image.jpg' \
  -F 'size=auto' \
  'https://removebgtool.net/v1.0/removebg' -o no-bg.png

Richiesta

Invia X-API-Key. Usa multipart/form-data per image_file; JSON o dati URL-encoded accettano image_url o image_file_b64. Fornisci una sola sorgente. Valori predefiniti: crop=false e format=auto, con PNG per la trasparenza e JPG per risultati opachi. bg_color accetta nomi CSS o esadecimali di 3/4/6/8 cifre. JPG appiattisce la trasparenza sul bianco.

FunzionalitàSupporto
Immagini in ingressoJPG, PNG, WebP · file, URL HTTPS, base64
Risoluzionepreview / small / regular · medium · hd · full / 4k · auto · 50MP
OutputPNG, JPG, WebP · auto · binario o JSON
Opzioni immaginecrop, bg_color, type=auto, type_level=none, channels=rgba
Non ancora supportatoZIP, ombre, ROI, immagini di sfondo, classificazione del primo piano, crop_margin, scale, position, output solo alfa, controllo semitrasparenza, OAuth

Parametri della richiesta

Campo richiestaValori predefiniti e consentiti
image_file / image_url / image_file_b64Fornisci una sola sorgente. I file usano multipart/form-data; image_url deve essere HTTPS; image_file_b64 è base64 semplice con padding.
sizePredefinito: preview. Limiti: preview/small/regular 0,25 MP; medium 1,5 MP; hd 4 MP; full/4k/auto 25 MP; 50MP 50 MP. PNG fino a 10 MP. Nessun ingrandimento.
formatPredefinito: auto. Valori: auto, png, jpg, webp. JPG non conserva la trasparenza.
cropPredefinito: false. true ritaglia i bordi vuoti. crop_margin non è disponibile.
bg_colorColore di sfondo facoltativo. Omettilo per mantenere la trasparenza in un formato compatibile.

Input tramite URL e Base64

Sostituisci l’URL d’esempio con quello HTTPS della tua immagine. Invia base64 semplice con padding e senza prefisso data-URL. Non inviare mai più di un campo di input.

curl --fail-with-body --max-time 180 \
  -H 'X-API-Key: YOUR_API_KEY' \
  -F 'image_url=https://example.com/photo.jpg' \
  -F 'format=png' \
  'https://removebgtool.net/v1.0/removebg' -o result.png

# JSON input and JSON output
curl --fail-with-body --max-time 180 \
  -H 'X-API-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  --data '{"image_file_b64":"YOUR_PADDED_BASE64","format":"png"}' \
  'https://removebgtool.net/v1.0/removebg'

Esempi per linguaggio

Sono esempi di client HTTP, non un SDK ufficiale. Conserva la chiave nella configurazione del server.

Python
import requests

with open('image.jpg', 'rb') as image:
    response = requests.post(
        'https://removebgtool.net/v1.0/removebg',
        headers={'X-API-Key': 'YOUR_API_KEY'},
        files={'image_file': image},
        data={'size': 'auto'},
        timeout=180,
    )
response.raise_for_status()
with open('no-bg.png', 'wb') as output:
    output.write(response.content)
Node.js
import { readFile, writeFile } from 'node:fs/promises';

const form = new FormData();
form.append('image_file', new Blob([await readFile('image.jpg')]), 'image.jpg');
form.append('size', 'auto');
const response = await fetch('https://removebgtool.net/v1.0/removebg', {
  method: 'POST',
  headers: { 'X-API-Key': 'YOUR_API_KEY' },
  body: form,
  signal: AbortSignal.timeout(180000),
});
if (!response.ok) throw new Error(await response.text());
await writeFile('no-bg.png', Buffer.from(await response.arrayBuffer()));

Risposta

HTTP 200 restituisce i byte dell’immagine. Con Accept: application/json ricevi data.result_b64 e dimensioni. Header: X-Width, X-Height, X-Credits-Charged, X-Foreground-Top/Left/Width/Height e X-Request-ID. Le coordinate si riferiscono alla tela di input normalizzata. Nessuna classificazione o X-Type. GET /v1.0/account restituisce data.attributes.credits e api.free_calls (0).

{
  "data": {
    "result_b64": "...",
    "result_width": 625,
    "result_height": 400,
    "credits_charged": 1
  }
}

Limiti e differenze

Input: ≤22 MB, ≤50 MP, ciascuna dimensione 33–9999 pixel, JPG/PNG/WebP a fotogramma singolo. Gli URL HTTPS devono essere pubblici, diretti e sulla porta 443; redirect e reti private sono rifiutati. size predefinito: preview (0,25 MP); medium=1,5 MP, hd=4 MP, full/4k/auto=25 MP, 50MP=50 MP. PNG e auto sono limitati a 10 MP. Nessun ingrandimento. Diversamente da remove.bg, auto non sceglie in base al saldo.

Le chiamate API usano i crediti esistenti del tuo account. Il costo per immagine è nella dashboard e in X-Credits-Charged. Anteprima e piena risoluzione costano uguale. Non è inclusa una quota API mensile gratuita separata.

Errori e nuovi tentativi

400 input/parametri non validi · 402 crediti insufficienti · 403 chiave/piano non valido · 409 conflitto/in corso/scadenza di idempotenza · 415 codifica non supportata · 429 limite richieste · 502/503 errore o saturazione upstream · 504 timeout. Rispetta Retry-After su 429/503 e usa backoff esponenziale per i 5xx temporanei. Conserva le chiavi sul server.

{
  "errors": [
    {
      "title": "Insufficient credits.",
      "code": "insufficient_credits"
    }
  ]
}

Idempotency-Key è facoltativo: stessa chiave, immagine e parametri permettono il replay di un successo per 10 minuti senza nuovo addebito. Il replay ripete X-Credits-Charged e aggiunge X-Idempotent-Replayed: true. Le richieste in corso restituiscono 409. Le chiavi fallite o scadute restano riservate: usa una nuova chiave per una nuova richiesta fatturabile. Senza header ogni richiesta è indipendente. Prevedi un timeout client di 180 secondi.

Checklist di migrazione

1. Crea una chiave su un piano con API. 2. Cambia dominio mantenendo /v1.0/removebg. 3. Controlla limiti e parametri non supportati. 4. Prova immagini, errori e addebiti. 5. Sposta la produzione. Il servizio è indipendente da remove.bg.Vedi la guida alla migrazione

Un’interfaccia compatibile non significa risultati IA identici. Prova le tue immagini prima di migrare.