Skip to content

Masking

Tools for generating segmentation masks (by prompt, by key points, foreground). REST async.

Generate Mask by Prompt

Request

Generates a segmentation mask video based on a text prompt.

Response behavior:

  • Returns HTTP 202 with request_id and status_url
  • The final result (via status endpoint) will contain a mask_url.

Constraints:

  • Max Duration: 5 seconds (Truncated if auto_trim=true).
  • Max Resolution: 750p.
Security
api_token
Bodyapplication/jsonrequired
videostringrequired

Publicly accessible URL for the input video file.

promptstringrequired

The text instruction describing the object to be masked.

auto_trimboolean

If true, trims the video to the 5s limit.

Default:false
output_container_and_codecstring
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
/mask_by_prompt
from bria_client import BriaSyncClient

client = BriaSyncClient()  # reads BRIA_API_TOKEN

job = client.submit(
    endpoint="video/segment/mask_by_prompt",
    payload={
        "video": "example",
        "prompt": "example",
    },
)
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" }