← Terug naar het gereedschap

API voor achtergrondverwijdering

Geen API sleutel. Geen rekening. Geen aanmelding. Een POST met een afbeelding, en het antwoord lichaam is de afgewerkte transparante PNG. Niets om voor te registreren en niets om op te wachten.

Laatst bijgewerkt: 1 september 2026

Dit is dezelfde motor de BGNinja website draait op, direct blootgesteld via HTTP. Het is vrij om binnen de onderstaande grenzen te bellen. U hoeft ons geen toegang te vragen en er is geen sleutel om te draaien.

Snel aan de slag

curl -s -o output.png \
  -F "[email protected]" \
  https://bgninja.com/api/remove

Dat is alles. output.png is uw afbeelding met de achtergrond verwijderd en een alfakanaal waar de achtergrond vroeger was.

Eindpunt

MethodePOST
URL.https://bgninja.com/api/remove
Lichaammultipart/form-data
AuthenticatieGeen

Parameters.

NaamVereistWat het doet
filejaDe afbeelding. PNG, JPG, WEBP of HEIC.
bgneeHex-kleur zonder de #, bijvoorbeeld ffffff. Bevat de uitsparing op die vlakke kleur in plaats van het transparant te laten. Laat het uit voor transparantie.
srcneeEen label dat uw app identificeert, bijvoorbeeld my-plugin. Tot 32 tekens, letters, cijfers en koppeltekens. Het helpt ons alleen maar om te zien welke integraties worden gebruikt. Al het andere wordt genegeerd.

Antwoord

Bij succes krijg je HTTP 200 en de ruwe bytes van een PNG, met Content-Type: image/png- De oproep is synchroon: er is geen werk-id, geen wachtrij en niets om te peilen. Schrijf het lichaam rechtstreeks naar een bestand of geef het aan uw image library.

Limieten

Maximale bestandsgrootte99 MB.
Maximale resolutie30 megapixels.
Gelijktijdig uitvoeren2 per IP-adres
Verzoeken per dag10 gratis, resetten om middernacht

Dit zijn de werkelijke limieten en deze worden gehandhaafd. Er is geen verborgen onbeperkte laag en het gratis resultaat is het volledige resolutiebeeld, in plaats van een verkleinde voorvertoning.

Fouten

Een fout komt terug als JSON met een single error sleutel, niet als beeld. Controleer de statuscode voordat u het lichaam naar een bestand schrijft.

Status.Betekenis
400Het bestand is geen afbeelding die we kunnen lezen. Het heeft een verkeerd formaat of de bytes zijn beschadigd.
413Te groot. Het bestand is groter dan 99 MB of heeft meer dan 30 megapixels.
422Nee file veld in het verzoek helemaal niet.
429U heeft al twee aanvragen lopen vanaf dit adres. Wacht tot er een is voltooid en probeer het opnieuw.
$ curl -s -F "[email protected]" https://bgninja.com/api/remove
{"error":"can't read this file (TXT) — please upload a photo (JPG, PNG, WEBP, HEIC)."}

Omdat de limiet is op hoeveel lopen in een keer en niet op een dagelijks totaal, de juiste manier om 429 is om hetzelfde beeld te proberen kort daarna, niet om de rest van de dag terug te trekken.

Voorbeelden

Python.

import requests

with open("input.jpg", "rb") as f:
    r = requests.post(
        "https://bgninja.com/api/remove",
        files={"file": f},
        data={"src": "my-app"},
        timeout=120,
    )
r.raise_for_status()
open("output.png", "wb").write(r.content)

Node.

import { readFile, writeFile } from "node:fs/promises";

const body = new FormData();
body.append("file", new Blob([await readFile("input.jpg")]), "input.jpg");
body.append("src", "my-app");

const r = await fetch("https://bgninja.com/api/remove", { method: "POST", body });
if (!r.ok) throw new Error(`HTTP ${r.status}`);
await writeFile("output.png", Buffer.from(await r.arrayBuffer()));

Een effen witte achtergrond in plaats van transparantie

curl -s -o output.png \
  -F "[email protected]" \
  -F "bg=ffffff" \
  https://bgninja.com/api/remove

Wat er met uw afbeelding gebeurt

De afbeelding wordt in het geheugen verwerkt en direct naar u teruggestreamd. Er wordt niets op de schijf geschreven, dus er is geen opgeslagen kopie die ergens ligt en wacht om te worden verwijderd of gelekt. We houden een telling bij van het aantal ontvangen aanvragen en hun grootte, en verder niets dat de afbeelding zelf identificeert.

Gebruik in uw eigen project

U mag dit gebruiken en verder ontwikkelen, ook in iets waar u geld voor vraagt. We hebben twee verzoeken, die we niet afdwingen:

Als u op het punt staat om serieus volume door te sturen, zeg hallo op de contact pagina Eerst. We horen liever van je dan je te wurgen.

Vragen

Heb ik een API-sleutel nodig?

Nee. Er is geen sleutel, geen account en u hoeft zich niet te registreren. Het eindpunt is open.

Is het echt gratis?

Ja, binnen de limieten hierboven. Het is geen proef en er is geen kaart om toe te voegen. De facultatieve pass verhoogt de limieten op de website; de hier vermelde limieten gelden voor iedereen.

Is er een dagelijkse limiet?

10 verzoeken per dag op het vrije niveau, resetten om middernacht. De enige andere limiet is twee verzoeken die tegelijkertijd per IP-adres lopen.

Kan ik het uitsnidemasker ontvangen in plaats van de afbeelding?

Vandaag niet. Het eindpunt geeft de samengestelde PNG terug. Als je het masker alleen nodig hebt, vertel ons dan op de contact pagina En we zullen ernaar kijken.

Zal dit eindpunt blijven werken?

Het is hetzelfde eindpunt dat onze eigen website gebruikt, dus het zal niet zomaar verdwijnen. Als de vorm van het verzoek ooit moet worden gewijzigd, blijft de oude vorm naast de nieuwe versie werken.

Is de API voor het verwijderen van de achtergrond echt gratis?

Ja, binnen de gepubliceerde limieten: 99 MB en 30 megapixels per afbeelding, en twee verzoeken die tegelijkertijd per IP-adres worden uitgevoerd. Er is geen proefperiode en u hoeft geen creditcardgegevens op te geven.

Is het antwoord asynchroon?

Nee. Het verzoek is synchroon; de HTTP-antwoordtekst is de voltooide PNG-afbeelding. Er is geen taak-ID en er is niets om te controleren.

Welke afbeeldingsformaten worden geaccepteerd?

PNG, JPG, WEBP en HEIC kunnen worden gebruikt. Een PNG met een alfakanaal wordt als resultaat gegeven, of een effen achtergrond als u een hexadecimale kleur opgeeft in de parameter 'bg'.

Wat gebeurt er met de afbeelding die ik verstuur?

Deze wordt in het geheugen verwerkt en direct teruggegeven. Er wordt niets op de schijf geschreven, dus er is geen opgeslagen kopie om te verwijderen of te lekken. We houden een telling bij van het aantal ontvangen aanvragen en hun grootte, en verder niets dat de foto zelf identificeert.

Wat gebeurt er als ik te veel verzoeken verstuur?

Het derde verzoek dat tegelijkertijd vanaf hetzelfde IP-adres wordt uitgevoerd, resulteert in een HTTP 429-fout. Wacht tot een van de actieve verzoeken is voltooid en probeer het opnieuw; de limiet geldt voor het aantal gelijktijdige verzoeken, niet voor het totale aantal per dag.

Gebruiksvoorwaarden staan op de termen pagina, en wat we doen met gegevens is op de Privacypagina.