Car Background Removal (Binary)#
https://api.withoutbg.com · Spec: openapi.jsonRemove background from a car photo and return an RGBA PNG.
Cost: 1 credit on HTTP 200.
Uses the dedicated car pipeline: the biggest vehicle is detected and cropped before segmentation, then results are mapped back to the full frame. Window reconstruction and a baked cast shadow run by default (reconstruct_windows=true, shadow_type=ai). Set shadow_type=none for a cutout with no baked shadow. No camera view sidecar (use /v1.0/car-layers-base64 for compositing layers plus that sidecar). Image-type classification is not offered (car photos are treated as photographic).
Binary sibling of /v1.0/car-image-without-background-base64. Response metadata is returned in X-Input-Dimensions, X-Processed-Dimensions, X-Was-Downscaled, and X-Shadow-Type.
Endpoint#
POST /v1.0/car-image-without-background
Base URL: https://api.withoutbg.com
Authentication#
Provide your API key in the request header:
API key header
X-API-Key: <your_api_key>Request#
Content-Type: multipart/form-data
Fields#
file(binary, required) — Car image file (JPEG, PNG, WebP, AVIF, HEIC, TIFF, BMP, GIF). Maximum size: 20.0 MB.shadow_type(object, optional) — Which renderer produces the cast shadow. Defaults to `ai`, the learned car-shadow model. `none` skips the shadow entirely. `geometric` (proxy fit) and `auto` (geometric, falling back to `ai`) are declared but not yet available and are rejected with 422; light direction is inferred from the photo, so no shadow type takes light parameters.include_shadow(object, optional) — Deprecated: use `shadow_type` instead (true maps to `ai`, false to `none`). When omitted, `shadow_type` decides.reconstruct_windows(boolean, optional) — When true (default), run car window reconstruction: opens glass interiors while keeping the car outline. Cutout RGB stays the original photo unless a shadow is baked in. Set false to skip and use the base silhouette alpha only.
Response#
Success Content-Type: image/png
Response headers#
X-Input-Dimensions— Decoded input size as `width,height` (pixels).X-Processed-Dimensions— Size after server prep downscale (longest side / megapixel caps) as `width,height`. Not the model inference resolution (~1024 long side).X-Was-Downscaled— Whether the input was downscaled during server prep (`true`/`false`).X-Shadow-Type— Shadow renderer that produced the baked cast shadow ('ai', or 'none' when no shadow was requested).
Errors#
| Status | Description | Detail |
|---|---|---|
401 | Invalid API Key | Invalid API Key |
402 | Insufficient credit. Please top up API credits. | Insufficient credit. Please top up API credits. |
403 | Credits Expired. Please top up API credits. If you have existing credits, they will be reactivated. | Credits Expired. Please top up API credits. If you have existing credits, they will be reactivated. |
413 | File size too large. Maximum file size is 20.0 MB. | File size too large. Maximum file size is 20.0 MB |
415 | Unsupported Media Type. Supported formats are: JPEG, PNG, WebP, AVIF, HEIC, TIFF, BMP, GIF. | Unsupported Media Type. Supported formats are: JPEG, PNG, WebP, AVIF, HEIC, TIFF, BMP, GIF. |
422 | Validation Error | Validation Error |
429 | Rate limit exceeded (product policy: 30 requests/minute per API key). May be returned by the API gateway. Retry with exponential backoff. | {"error":"Too Many Requests","status":429,"message":"Rate limit exceeded. Please try again later"} |
500 | Internal Server Error | Internal Server Error. Please contact support: contact@withoutbg.com |
Example (cURL)#
cURL
curl -X POST \
-H "X-API-Key: $WITHOUTBG_API_KEY" \
-F "file=@/path/to/input.jpg" \
--output result.png \
"https://api.withoutbg.com/v1.0/car-image-without-background"Related endpoints#
- Car Background Removal (Base64) —
POST/v1.0/car-image-without-background-base64
Contract sections are generated at build time from OpenAPI. Markdown mirror: /docs/pro-model/car-background-removal-binary.md