Skip to content

Transformations

Tools for modifying video content (Erase, Upscale, Remove BG, Green Screen, Replace Background). REST async.

Eraser

Request

Description Initiates an asynchronous object erasure job. Removes objects defined by the mask input and reconstructs the background.

Mask Input

This endpoint requires a mask definition object. You can provide a direct mask_url, or use one of our masking endpoints (mask_by_prompt, mask_by_key_points) to define the mask area.

Response behavior:

  • Returns HTTP 202 with request_id and status_url

  • Check job status by polling status_url or by calling the status endpoint with the request_id until a terminal status is returned

Constraints & Limits:

  • Max Duration: 5 seconds. Videos longer than 5s will be truncated if auto_trim is true, or rejected if false.

  • Max Resolution: 750p. Inputs higher than 750p will be automatically downscaled.

  • Frame Rate: Recommended 24 FPS (preserved in output).

Preservation Rules:

  • Aspect Ratio (within 16:9 constraint)

  • Frame Rate

  • Audio (preserved by default)

Security
api_token
Bodyapplication/jsonrequired
videostringrequired

Publicly accessible URL of the input video.

maskstringrequired

Required. A URL with mask video defining the area to erase.

preserve_audioboolean

Whether to keep the original audio track.

Default:true
auto_trimboolean

If true, videos longer than 5 seconds are trimmed to the first 5 seconds.

Default:false
output_container_and_codecstring

Output container and codec preset.

Default:"mp4_h264"
Enum:"mp4_h264""mp4_h265""webm_vp9""mov_h265""mov_proresks""mkv_h264""mkv_h265""mkv_vp9""gif"
webhook_urlstring, (uri)

Optional URL for receiving the result via webhook when the async job completes. See webhooks.

POST
/erase
from bria_client import BriaSyncClient

client = BriaSyncClient()  # reads BRIA_API_TOKEN

job = client.submit(
    endpoint="video/edit/erase",
    payload={
        "video": "https://bria-test-images.s3.us-east-1.amazonaws.com/videos/eraser/video1_video.mp4",
        "mask": "https://bria-test-images.s3.us-east-1.amazonaws.com/videos/eraser/video1_mask.mp4",
        "output_container_and_codec": "mp4_h264",
    },
)
result = client.poll(job, interval=5, timeout=600)
print(result.result.video_url)

Responses

Accepted

Bodyapplication/json
request_idstringrequired
status_urlstringrequired
Response
{ "request_id": "string", "status_url": "string" }