Migrating from the Clipdrop Remove Background API to bgclear: Fields, Auth, Credit Headers
Clipdrop's remove-background endpoint is a clean, well-documented API, and the reasons teams look elsewhere are usually practical: they only use the one endpoint out of Clipdrop's suite, they want credits that do not sit on a prepaid balance with someone else's rules, or they are consolidating onto the remove.bg request format before that API closes on 1 December 2026. This guide maps the Clipdrop request to bgclear's so the change is a URL, a header and a test.
In this guide
Side by side
As documented by Clipdrop at the time of writing (September 2026) and by bgclear's docs:
Endpoint: Clipdrop POST https://clipdrop-api.co/remove-background/v1 → bgclear POST https://www.bgclear.ai/api/v1/remove.
Auth: Clipdrop header x-api-key: KEY → bgclear header Authorization: Bearer bgc_live_KEY.
Image: Clipdrop multipart image_file → bgclear image_file, same name. bgclear also accepts image_url or image_file_b64 in a JSON body.
Options: Clipdrop's transparency_handling (what to do with an input that already has alpha) has no equivalent — bgclear processes the image as-is. bgclear adds size (preview free ≤800 px, full one credit, auto), format (png/webp/jpg), bg_color (hex) and crop.
Response: both return the image bytes (PNG) by default. bgclear also returns JSON with a hosted result URL when you send Accept: application/json.
Credit headers: Clipdrop x-remaining-credits → bgclear X-Credits-Remaining; Clipdrop x-credits-consumed → bgclear X-Credits-Charged. bgclear adds X-RateLimit-Limit/Remaining/Reset and X-Job-Id.
Errors: Clipdrop returns a JSON error string with the HTTP status; bgclear returns {"error": {"code", "message", "docs"}} with stable codes — insufficient_credits (402), rate_limited (429), image_too_large (400), processing_failed (500/504).
The diff in code
# Clipdrop
curl -X POST https://clipdrop-api.co/remove-background/v1 \
-H 'x-api-key: CLIPDROP_KEY' -F '[email protected]' -o no-bg.png
# bgclear — same field, new URL and header
curl -X POST https://www.bgclear.ai/api/v1/remove \
-H 'Authorization: Bearer bgc_live_YOUR_KEY' -F '[email protected]' -F 'size=auto' -o no-bg.pngimport requests
# r = requests.post("https://clipdrop-api.co/remove-background/v1",
# headers={"x-api-key": KEY}, files={"image_file": open("photo.jpg", "rb")})
r = requests.post("https://www.bgclear.ai/api/v1/remove",
headers={"Authorization": f"Bearer {KEY}"},
files={"image_file": open("photo.jpg", "rb")},
data={"size": "auto", "format": "png"})
r.raise_for_status()
open("no-bg.png", "wb").write(r.content)
print("remaining:", r.headers["X-Credits-Remaining"]) # was x-remaining-credits// const res = await fetch("https://clipdrop-api.co/remove-background/v1", { method: "POST", headers: { "x-api-key": KEY }, body: form });
form.append("size", "auto");
const res = await fetch("https://www.bgclear.ai/api/v1/remove", {
method: "POST",
headers: { Authorization: `Bearer ${KEY}` },
body: form, // FormData with image_file
});Two additions worth making while you are in the file: an Idempotency-Key header per image so a retried request returns the cached result instead of charging again (24-hour window), and a branch that sends images over 4 megapixels to /api/v1/jobs — the synchronous endpoint caps full-size requests there (bulk guide).
Credits and cost
Clipdrop sells prepaid API credit packs; check its pricing page for the current per-credit rate at your volume, since the tiers change. bgclear is $9 for 100 credits ($0.09 per full-resolution image), $39 for 500 ($0.078) and $129 for 2,000 (about $0.065), no subscription, credits never expire, preview-size results are free and failed requests are never charged (pricing). Do the comparison on your own last three months of volume; if you are well above 1,000 images a month, also price Photoroom's $20/month plan — the alternatives comparison lists what each provider charged in September 2026.
What you give up, what you gain
Clipdrop is a suite: cleanup, uncrop, text removal, reimagine and image upscaling share the key. bgclear's API does background removal only (the web editor's backdrops, gradients and shadows are not exposed via the API). If your pipeline uses those other Clipdrop endpoints, keep Clipdrop for them.
You gain: remove.bg-compatible field names (one integration if you also run or are leaving remove.bg — details), a free unlimited preview tier for testing and low-stakes images, async jobs up to 50 MP, batches of 50 URLs with signed callbacks, JSON responses with hosted result URLs, and a free web tool for the non-developers on your team.
Frequently asked questions
Is bgclear a drop-in for the Clipdrop API?
Nearly: the multipart field is the same (image_file) and the response is image bytes, so you change the URL and the auth header. Read X-Credits-Remaining instead of x-remaining-credits, and drop transparency_handling.
Can I test before moving traffic?
Yes — size=preview is free and unlimited, and your first key includes 10 full-resolution credits. Run your own hardest images through both providers first; we publish no head-to-head benchmark.
Do bgclear credits expire?
No. Buy a pack sized to a quarter and use it whenever.
What about images with an existing alpha channel?
bgclear processes whatever you send. If you relied on Clipdrop's return_input_if_non_opaque behaviour, check for alpha in your code before calling the API.