PixMiller PixMiller
Home / API / Guida alla migrazione dall'API di remove.bg
Guida alla migrazione

Guida alla migrazione dall'API di remove.bg

L'API self-service di remove.bg smette di accettare richieste il 1° dicembre 2026. Se la chiami dal tuo codice HTTP, passare a PixMiller di solito significa cambiare la base URL e la chiave — questa pagina mostra esattamente che cosa resta uguale, che cosa si comporta diversamente e che cosa non ha effetto.

Endpoint di compatibilità
POST api.pixmiller.com/v1.0/removebg
GET api.pixmiller.com/v1.0/account
Stessa intestazione X-Api-Key di remove.bg. Leggi le differenze qui sotto prima di spostare il traffico.
1

Leggi prima questo

Le quattro cose che non sono uguali.
  • size ha come valore predefinito preview, come su remove.bg — ma qui preview è un'immagine gratuita con filigrana fino a 640 px (remove.bg: 0,25 megapixel senza filigrana). Un'integrazione che non imposta mai size riceverà anteprime con filigrana; passa size=auto o un livello a pagamento per ottenere il risultato senza filigrana.
  • Non dichiariamo compatibilità a livello di SDK. Tre client di terze parti — il pacchetto removebg su PyPI, il pacchetto ufficiale remove.bg su npm e removebg-cli — hanno superato i nostri test il 22 settembre 2026, ma non li testiamo per regressione release dopo release; i client HTTP scritti a mano sono il percorso che supportiamo.
  • shadow_type, shadow_opacity, add_shadow e semitransparency sono accettati e validati ma non cambiano mai il risultato — come su remove.bg per i soggetti diversi dalle auto; qui non esiste un modello specifico per le auto.
  • Ogni chiamata conta come un'immagine nel limite della tua chiave, pari a 40 immagini al minuto — remove.bg ne consente 500. Gestisci il 429 con Retry-After oppure contattaci per alzare il limite.
2

Prima e dopo

La stessa richiesta verso ciascun servizio.
remove.bg
1curl -X POST "https://api.remove.bg/v1.0/removebg" \2  -H "X-Api-Key: REMOVEBG_KEY" \3  -F "[email protected]" \4  -F "size=auto" \5  -o out.png
PixMiller
1curl -X POST "https://api.pixmiller.com/v1.0/removebg" \2  -H "X-Api-Key: PIXMILLER_KEY" \3  -F "[email protected]" \4  -F "size=auto" \5  -o out.png6# 200 OK → image bytes, written straight to out.png7# X-Credits-Charged: 1   X-Width: 1200   X-Height: 1600   X-Type: product
3

Parametri supportati

Parametro Stato Note
image_file Uguale Upload multipart. JPG / PNG / WebP, fino a 20 MB (remove.bg: 22 MB).
image_url Uguale URL pubblico dell'immagine, scaricato dalla nostra parte con lo stesso limite di 20 MB.
image_file_b64 Uguale Immagine codificata in base64 nel corpo della richiesta, come su remove.bg.
size Diverso Stessi valori, stesso valore predefinito (preview) e stessi limiti di megapixel — ma preview è un'immagine gratuita con filigrana fino a 640 px, non 0,25 MP senza filigrana. medium / hd / 4k / full / 50MP costano 1 credito ciascuna; auto usa il livello a pagamento finché restano crediti.
format Uguale auto / png / jpg / webp / zip — lo zip contiene color.jpg e alpha.png come su remove.bg. Accept: application/json restituisce l'envelope base64. L'output PNG è limitato a 10 megapixel.
type, type_level Diverso Accettato; type viene mappato sui nostri modelli. X-Type riporta una classe grossolana — person, product, animal, car o other — e type_level=2 / latest restituiscono le stesse classi grossolane.
crop, crop_margin Uguale Ritaglia sul soggetto con la stessa sintassi di margine e lo stesso limite di 50% / 500 px.
roi Uguale Regione di interesse in pixel o percentuale, come su remove.bg.
scale, position Uguale Scala del soggetto (10%–100% oppure original) e posizione, come su remove.bg.
channels Uguale rgba (predefinito) oppure alpha per la sola maschera.
bg_color Uguale Trasparente per impostazione predefinita; hex a 3 / 4 / 6 / 8 cifre con o senza #, oppure un nome di colore.
bg_image_file, bg_image_url Uguale Scalata per coprire l'output e centrata; non può essere combinata con bg_color.
add_shadow, shadow_type, shadow_opacity Nessun effetto Validato secondo i valori di remove.bg, ma non viene mai resa alcuna ombra.
semitransparency Nessun effetto Accettato; le aree semitrasparenti sono sempre gestite automaticamente.
Ogni parametro è validato con gli stessi intervalli di valori di remove.bg, quindi un valore non valido produce un 400 invalid_parameter invece di essere ignorato in silenzio — esattamente come risponde remove.bg.
4

Che cosa si comporta diversamente

Codice di stato 200 OK con i byte dell'immagine, esattamente come remove.bg — il codice che verifica == 200 continua a funzionare. (L'endpoint /api/v1/remove di PixMiller risponde 201 con JSON; questo percorso di compatibilità, di proposito, no.)
Corpo della risposta I byte dell'immagine, esattamente come remove.bg. Invia Accept: application/json per ottenere invece l'envelope base64 di remove.bg, oppure format=zip per color.jpg più alpha.png.
Response headers X-Credits-Charged, X-Width, X-Height, X-Type, X-Foreground-Top / -Left / -Width / -Height e X-RateLimit-Limit / -Remaining / -Reset vengono restituiti tutti. X-Type è una classe grossolana (person / product / animal / car / other) invece del vocabolario più fine di remove.bg.
Errori Gli errori usano la forma JSON:API di remove.bg: {"errors":[{"title":"…","code":"…"}]} — un array, quindi errors[0].title si legge come prima. Una chiave mancante è 403 auth_failed e una sbagliata 403 invalid_api_key, un saldo vuoto è 402, il throttling è 429.
Crediti preview è gratuito; ogni livello a pagamento costa 1 credito per immagine, addebitato solo dopo che il risultato è stato recuperato, quindi una chiamata fallita non costa mai un credito. Non c'è quota mensile gratuita.
Limite di frequenza 40 immagini al minuto per chiave (remove.bg: 500). Ogni chiamata conta come un'immagine, e X-RateLimit-Limit / -Remaining / -Reset riportano questa quota per immagine; gestisci il 429 con Retry-After.
5

Controllare il saldo

L'endpoint account riporta il saldo crediti residuo della chiave sotto data.attributes.credits, quindi un controllo del saldo scritto per remove.bg mantiene la stessa forma. Non c'è quota mensile gratuita, perciò free_calls è sempre 0.

GET /v1.0/account
1curl "https://api.pixmiller.com/v1.0/account" \2  -H "X-Api-Key: PIXMILLER_KEY"
6

Errori

400 invalid_parameter Un valore fuori dall'intervallo previsto da remove.bg per size / format / crop / scale / … oppure una sorgente immagine mancante; il campo title indica il parametro.
400 file_too_large L'immagine in ingresso supera i 20 MB.
400 unknown_foreground Non è stato possibile trovare un soggetto in primo piano nell'immagine.
402 insufficient_credits È stato richiesto un livello a pagamento ma il saldo è vuoto. Non viene addebitato nulla.
403 auth_failed / invalid_api_key L'intestazione X-Api-Key manca (auth_failed) o è sbagliata (invalid_api_key) — 403 come su remove.bg, non 401.
429 rate_limit_exceeded Limite di frequenza superato. Riprova dopo l'intervallo indicato dall'intestazione Retry-After.
502 result_fetch_failed Non è stato possibile recuperare il risultato dallo storage. Non è stato addebitato nulla — riprova la richiesta.
Il significato è portato dal codice di stato, e code usa il vocabolario di remove.bg — uno switch su errors[0].code continua a funzionare.
Sposta su PixMiller il tuo flusso per rimuovere lo sfondo Ottieni la tua chiave API