Background Remover API | Lowest Prices, Fast, Reliable
Overview
The Background Remover API provides AI-powered background removal for both images and videos with precision and ease. Whether you're building an e-commerce product photography tool, creating marketing materials, or developing content creation applications, our API delivers professional-quality background removal at scale.
Key Features
- Image Background Removal: Instantly remove backgrounds from photos with pixel-perfect accuracy
- Video Background Removal: Remove backgrounds from video content frame-by-frame
- Transparent or Green Screen: Choose between transparent or chroma key green backgrounds
- Batch Processing: Process multiple images or videos in a single API request
- Flexible Video Trimming: Specify exact time ranges for video processing
- Cost-Effective: Starting at just 1 credit per image
Authentication
All API requests require authentication using an API key. Include your API key in the request header:
Authorization: Bearer YOUR_API_KEY
API Host: https://us-center.deep-api.com
🔑 Getting Your API Key
Contact customer support to obtain your API key and start removing backgrounds from your images and videos.
Pricing
| Service Type | Credits Required |
|---|---|
| Image Background Removal | 1 credit per image |
| Video Background Removal | 3 credit / second |
*Video pricing depends on the processed duration (end_clip_sec - start_clip_sec)
Image Background Remover API
Endpoint
POST /api/aigc/task/submit
Request Headers
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
aigc_type | string | ✅ | Must be "image_bg_remover" for image background removal |
callback_url | string | ✅ | URL endpoint to receive processing results via POST |
task_list | array | ✅ | Array of background removal tasks (supports batch processing) |
task_list[].additional_params | object | ✅ | Task-specific parameters |
task_list[].additional_params.media_url | string | ✅ | URL of the image file to process |
task_list[].callback_params | object | ❌ | Custom parameters returned in webhook callback |
Response Format
{
"code": 100000,
"message": "Request Success",
"data": {
"credits_consumed": 1,
"creation_id": "3fe766593eed425e83bf7a36b7321c31",
"task_id_list": [16222903]
}
}
Response Fields:
code: Status code (100000 = success)message: Human-readable response messagecredits_consumed: Total credits used for this requestcreation_id: Unique identifier grouping all tasks in the requesttask_id_list: Array of task IDs in submission order
Code Example
curl --location --request POST \
'https://us-center.deep-api.com/api/aigc/task/submit' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"aigc_type": "image_bg_remover",
"callback_url": "https://your-domain.com/callback",
"task_list": [
{
"additional_params": {
"media_url": "https://your-storage.com/product-image.png"
},
"callback_params": {
"product_id": "SKU12345",
"category": "electronics"
}
}
]
}'
Video Background Remover API
Endpoint
POST /api/aigc/task/submit
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
aigc_type | string | ✅ | Must be "video_bg_remover" for video background removal |
callback_url | string | ✅ | URL endpoint to receive processing results via POST |
task_list | array | ✅ | Array of video background removal tasks |
task_list[].additional_params | object | ✅ | Task-specific parameters |
task_list[].additional_params.media_url | string | ✅ | URL of the video file to process |
task_list[].additional_params.start_clip_sec | number | ✅ | Start time for background removal processing (in seconds) |
task_list[].additional_params.end_clip_sec | number | ✅ | End time for background removal processing (in seconds) |
task_list[].additional_params.is_green_bg | number | ❌ | Background type: 0 = transparent (default), 1 = green screen |
task_list[].callback_params | object | ❌ | Custom parameters returned in webhook callback |
⚠️ Important Note
Process only the necessary video segments using start_clip_sec and end_clip_sec to optimize credit usage and reduce processing time.
Background Type Options
| Value | Type | Use Case |
|---|---|---|
0 | Transparent | Standard transparent background (PNG with alpha channel) |
1 | Green Screen | Chroma key green background for video editing workflows |
Response Format
{
"code": 100000,
"message": "Request Success",
"data": {
"credits_consumed": 1,
"creation_id": "3fe766593eed425e83bf7a36b7321c31",
"task_id_list": [16222903]
}
}
Code Example
curl --location --request POST \
'https://us-center.deep-api.com/api/aigc/task/submit' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"aigc_type": "video_bg_remover",
"callback_url": "https://your-domain.com/callback",
"task_list": [
{
"additional_params": {
"media_url": "https://your-storage.com/video.mp4",
"start_clip_sec": 0.0,
"end_clip_sec": 4.6,
"is_green_bg": 1
},
"callback_params": {
"video_id": "vid_789",
"user": "john_doe"
}
}
]
}'
Webhook Callbacks
Processing results are sent to your callback_url via POST request upon completion.
⚠️ Important:
Each task triggers two separate callbacks:
- Process Start Callback (
process_status = 1) – Sent immediately when the AI starts processing your task.- Process Complete Callback (
process_status = 2) – Sent when the task finishes (successfully or failed).You should handle both callbacks properly:
- Use the start callback to update UI or mark task as “in progress”
- Use the complete callback to retrieve results and finalize the task
- Avoid treating “start” callback as a completion event
Webhook Request Structure
| Field | Type | Description |
|---|---|---|
task_id | string | Unique task identifier |
creation_id | string | Request batch identifier |
start_time | number | Processing start timestamp |
end_time | number | Processing end timestamp (when process_status = 2) |
cost_time | number | Total processing duration in seconds |
result_code | number | inference result codes. success: 1, failure: -1 (This field value is valid only when process_status=2) |
error_info | string | Error description (if failed) |
error_code | string | Error code (if failed) |
process_status | number | 1 = processing started, 2 = processing completed |
result_list | array | Array of result urls |
request_context | object | Your callback_params echoed back |
Webhook Retry Logic
- Your endpoint must return HTTP
200to confirm receipt - Non-200 responses trigger up to 4 retries at intervals: 5s, 30s, 120s, 300s
- Implement idempotency using
task_idto prevent duplicate processing
Status Codes
| Code | Description |
|---|---|
| 100000 | Success - Background removal completed |
| 100010 | Invalid parameters (check media URL and request format) |
| 100030 | Access denied (authentication failed) |
| 100040 | Insufficient credits balance |
| 100099 | Unknown error (contact support if persistent) |
Best Practices
Image Quality Guidelines
✓ Best Results
- • Clear subject-background contrast
- • Good lighting on subject
- • Solid or simple backgrounds
- • Sharp focus on subject
- • Minimal motion blur
✗ Challenging Cases
- • Transparent or reflective subjects
- • Fine details (hair, fur)
- • Similar subject-background colors
- • Complex, busy backgrounds
- • Low resolution images
- • Heavy compression artifacts
Use Cases
E-commerce Product Photography
Solution: Automatically remove backgrounds and replace with pure white or transparent backgrounds for catalog consistency.
Marketing & Advertising
Solution: Remove original backgrounds and composite subjects onto various branded backgrounds for A/B testing.
Social Media Content Creation
Solution: Remove backgrounds from photos and videos, enabling creators to produce professional content with creative backgrounds.
Video Production
Solution: Use green screen output to integrate subjects into virtual environments or add motion graphics behind talent.
Real Estate & Interior Design
Solution: Remove backgrounds from product photos and place them in different room scenes for visualization.
Photo Editing Applications
Solution: Integrate the API to offer one-click background removal in photo editing apps and online tools.
FAQ
What file formats are supported?
Videos: MP4, MOV, AVI, WebM, MKV
We recommend PNG for images requiring transparency and MP4 (H.264) for videos.
How long does processing take?
Videos: Approximately 1-2x the video duration (e.g., a 10-second video takes 10-20 seconds to process)
Can I process videos longer than 60 seconds?
What happens if background removal fails?
Can I use the transparent output for print?
- • Source images at 300 DPI minimum
- • RGB color mode for digital, CMYK conversion for offset printing
- • Adding a white background layer if printer doesn't support transparency
How long are result URLs valid?
Is there a file size limit?
Videos: Up to 500MB per file
For larger files, consider compressing or splitting them into smaller segments.
Support & Resources
Need help integrating the Background Remover API? Our support team is here to assist:
- API Key Requests: Contact customer support
- Integration Assistance: Technical documentation and code samples
- Credit Balance: Real-time balance inquiries
- Troubleshooting: Debug failed requests and webhook issues
API Version: v1
Last Updated: October 2025