Skip to content
Last updated

Overview

Bria's Image Editing API equips builders with a comprehensive suite of tools for manipulating and enhancing images. Powered by the FIBO models family, the API supports everything from open-ended natural language edits to highly controlled, deterministic JSON workflows.

Core Capabilities

General Image Editing (FIBO Edit)

Our newest v2 endpoints enable powerful editing using either natural language instructions or strict JSON structures.

  • Global Edits: Modify the style, lighting, or atmosphere of an entire image.
  • Localized Edits: Utilize native masking support for precise regional edits. The masking logic acts as a generative replacement, creating entirely new content within the masked area based on your instruction without altering the surrounding pixels.
  • Disentangled Control: Convert text instructions into a detailed structured_instruction (JSON) to achieve deterministic, auditable, and reproducible results.

The FIBO Architecture

The primary /v2/image/edit endpoint utilizes a unique two-step process:

  1. Translation: A VLM Bridge (powered by Gemini 2.5 Flash) converts your inputs (text + image/mask) into a detailed JSON structured_instruction.
  2. Generation: The FIBO Edit model performs the final, deterministic render based on that JSON.

Developers can decouple this process by using the /v2/structured_instruction/generate endpoint to intercept, edit, or programmatically build the JSON before passing it to the final render step.

Specialized Single-Purpose Tools

For focused, high-volume tasks, the API provides optimized endpoints:

  • Background Operations: Remove, replace, or blur backgrounds (powered by Bria RMBG 2.0).
  • Content Manipulation: Erase objects or perform generative fill.
  • Image Transformation: Expand (outpaint) images to specific aspect ratios or increase resolution safely.
  • Person/Object Tools: Extract masks or modify presenter attributes.

Asynchronous Processing

By default, all Bria v2 endpoints process requests asynchronously. The API will immediately return a request_id and a status_url instead of the final result. You must poll the Status Service to track progress.

ℹ️ Need synchronous responses? > If your integration is simple and low-throughput, you can pass sync: true in your request body to hold the connection open until the final image URL is returned.

View the Status Service Documentation for complete polling details and usage examples.