API v2 · Video
Video Object Removal
Remove a named object from a video. object_text is required and must be 40 characters or less.
POST
/api/v2/videos/object-removalAuthentication
Send your API key as a bearer token on every request.
Header
Authorization: Bearer vba_your_api_keyRequest Body
Send JSON with these fields. Required fields must be present unless marked optional.
| Field | Type | Required | Description |
|---|---|---|---|
| video_url | string URL | Yes | Public or BGBlur-uploaded video URL to process. |
| duration_seconds | number | No | Duration used for credit estimation and processing bounds. Send this when known. |
| object_text | string | Yes | Object to remove. Required and must be 40 characters or less. |
| prompt_bg | string | No | Optional background guidance for fill/inpainting. |
⚠
Media must be publicly accessible. Pass a direct URL from a public storage bucket — e.g. AWS S3, Google Cloud Storage, Cloudinary, Cloudflare R2, Backblaze B2, Uploadcare, or any CDN URL. Private, signed, or localhost URLs will fail. Supported formats: MP4, MOV.
JSON
{
"video_url": "https://example.com/clip.mp4",
"duration_seconds": 20,
"object_text": "logo",
"prompt_bg": ""
}Response
Successful responses use JSON. Video feature endpoints return an async job_id rather than the final processed video immediately.
| Field | Type | Required | Description |
|---|---|---|---|
| success | boolean | Yes | True when the job was accepted. |
| job_id | string | Yes | Use this with GET /api/v2/jobs/{job_id}. |
| status | string | Yes | Initial job status, usually queued. |
| feature | string | No | Feature name submitted for processing. |
| credits_used | number | Yes | Credits reserved or charged for the job. |
| remaining_credits | number | Yes | Credit balance after job creation. |
JSON
{
"success": true,
"job_id": "job_abc123",
"status": "queued",
"feature": "object-removal",
"credits_used": 12,
"remaining_credits": 488
}Example
curl
curl -X POST https://www.bgblur.com/api/v2/videos/object-removal \
-H "Authorization: Bearer vba_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://example.com/clip.mp4",
"duration_seconds": 20,
"object_text": "logo",
"prompt_bg": ""
}'Tips
- object_text is required.
- object_text must be 40 characters or less.
- Video endpoints are async. Store job_id and poll GET /api/v2/jobs/{job_id}.
- Send duration_seconds when you know it so credit estimation is accurate.
- Use the upload video endpoint for local files before calling a video feature endpoint.