Mag-alis ng background mula sa sarili mong app, shop o pipeline gamit ang iisang HTTPS request.
Base URL: https://bgcut.net/api/v1 · Kunin ang iyong key sa Mga API key.
Authentication
Dapat nakalagay ang iyong API key sa X-Api-Key header ng bawat request. Ginagawa at binabawi ang mga key sa iyong account; maaaring pangalanan ang bawat key para mapalitan mo ang mga ito kada application.
// Never ship your API key in public front-end code – proxy through your server.
const input = document.querySelector('input[type=file]');
input.addEventListener('change', async () => {
const form = new FormData();
form.append('image_file', input.files[0]);
form.append('size', 'preview');
const res = await fetch('https://bgcut.net/api/v1/remove', { method: 'POST', headers: { 'X-Api-Key': 'bgc_YOUR_API_KEY' }, body: form });
const blob = await res.blob();
document.querySelector('img#out').src = URL.createObjectURL(blob);
});
// Java 11+ HttpClient, no external libraries
import java.net.URI;
import java.net.http.*;
import java.nio.file.*;
public class BgCut {
public static void main(String[] a) throws Exception {
String key = "bgc_YOUR_API_KEY";
String boundary = "----bgcut" + System.nanoTime();
byte[] file = Files.readAllBytes(Path.of("photo.jpg"));
String head = "--" + boundary + "\r\nContent-Disposition: form-data; name=\"image_file\"; filename=\"photo.jpg\"\r\nContent-Type: image/jpeg\r\n\r\n";
String tail = "\r\n--" + boundary + "\r\nContent-Disposition: form-data; name=\"size\"\r\n\r\nauto\r\n--" + boundary + "--\r\n";
byte[] body = concat(head.getBytes(), file, tail.getBytes());
HttpRequest req = HttpRequest.newBuilder(URI.create("https://bgcut.net/api/v1/remove"))
.header("X-Api-Key", key)
.header("Content-Type", "multipart/form-data; boundary=" + boundary)
.POST(HttpRequest.BodyPublishers.ofByteArray(body)).build();
HttpResponse<byte[]> res = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofByteArray());
if (res.statusCode() == 200) Files.write(Path.of("result.png"), res.body());
else System.out.println(new String(res.body()));
}
static byte[] concat(byte[]... parts) { int n = 0; for (byte[] p : parts) n += p.length; byte[] out = new byte[n]; int o = 0; for (byte[] p : parts) { System.arraycopy(p, 0, out, o, p.length); o += p.length; } return out; }
}
using System.Net.Http;
using System.Net.Http.Headers;
var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-Api-Key", "bgc_YOUR_API_KEY");
using var form = new MultipartFormDataContent();
var fileContent = new ByteArrayContent(await File.ReadAllBytesAsync("photo.jpg"));
fileContent.Headers.ContentType = new MediaTypeHeaderValue("image/jpeg");
form.Add(fileContent, "image_file", "photo.jpg");
form.Add(new StringContent("auto"), "size");
form.Add(new StringContent("png"), "format");
var res = await client.PostAsync("https://bgcut.net/api/v1/remove", form);
if (res.IsSuccessStatusCode)
await File.WriteAllBytesAsync("result.png", await res.Content.ReadAsByteArrayAsync());
else
Console.WriteLine(await res.Content.ReadAsStringAsync());
Ang file ng larawan (multipart/form-data). JPG, PNG, WebP, GIF, BMP, TIFF; max 25 MB / 30 MP.
image_url
string
Pampublikong URL ng larawang kukunin sa halip na i-upload.
image_file_b64
string
Base64-encoded na larawan (puwedeng may data: prefix).
size
auto | preview | full
preview = hanggang 640 px (gumagamit ng libreng buwanang quota, walang credit); full = orihinal na resolusyon (1 credit); auto (default) = full kung may credit ka, kung wala ay preview.
format
png | jpg | webp
Format ng output. Pinapanatili ng png ang transparency; ang jpg ay pina-flatten sa bg_color (default na puti).
model
fast | hq | portrait
lite (default, ~6 s, pinakamahusay na balanse), fast (~0.5 s, kalidad ng preview), hq (~15 s, pinakamataas na kalidad), portrait (~0.3 s, para sa tao lamang).
bg_color
string
Hex na kulay ng background, hal. #ffffff. Huwag isama para maging transparent.
bg_blur
number
Panatilihin ang orihinal na background pero i-blur ito gamit ang radius na ito sa pixel (1–200), hal. 25 para sa itsurang portrait mode. Nangingibabaw ito sa bg_color.
crop
boolean
I-crop ang output sa bounding box ng subject.
crop_margin
integer
Dagdag na margin sa pixel sa paligid ng subject kapag nagka-crop (0–200).
roi
string
Region of interest bilang mga fraction na x,y,w,h (0–1). Sa loob lang ng parihabang ito titingin ang AI; magiging transparent ang lahat ng nasa labas.
feather
number
Palambutin ang mga gilid gamit ang radius na ito sa pixel (0–5).
quality
integer
Kalidad ng JPG/WebP 50–100 (default 92).
response
binary | json
Ibinabalik ng binary (default) ang larawan; ibinabalik ng json ang metadata kasama ang base64 na larawan.
Mga response
Ang matagumpay na request ay nagbabalik ng HTTP 200 kasama ang bytes ng larawan at ang mga header na ito:
HTTP/1.1 200 OK
Content-Type: image/png
X-Credits-Charged: 1
X-Credits-Remaining: 149
X-Free-Remaining: 5
X-Width: 3000
X-Height: 2000
X-Image-Id: 1f3a…
X-Type: hd
Ibinabalik ang huling 100 larawang naproseso gamit ang iyong mga API key, kasama ang editor URL para pinuhin ang mga ito sa browser.
Mga error
Ang mga error ay JSON na may error code at mensaheng madaling maintindihan:
{ "ok": false, "error": "insufficient_credits", "message": "No credits left. Buy credits at https://bgcut.net/pricing or request size=preview." }
HTTP
error
Paglalarawan
400
bad_request / missing_image
Kulang o hindi wastong parameter.
401
auth_required / invalid_key
Walang API key, hindi ito wasto, o binawi na.
402
insufficient_credits / free_quota_exceeded
Walang credit (para sa full size) o ubos na ang libreng quota (para sa preview).
422
too_large / bad_type / fetch_failed
Hindi mabasa o ma-download ang larawan.
429
rate_limited
Masyadong maraming request – bagalan o makipag-ugnayan sa amin para sa mas mataas na limitasyon.
500
processing_failed
Nabigo ang pagproseso sa aming panig – hindi ka sisingilin.
Sample na code
Iisang endpoint ang gamit ng lahat ng sample. I-download ang buong koleksyon ng mga halimbawa: bgcut-api-examples.zip
Opisyal na PHP SDK Open-source na client library na may typed na resulta, mga error class at mga halimbawang handa nang patakbuhin. MIT licensed. composer require bgcut-net/bgcut-php