Design & media

Image generation, editing and remove background

Try it

Generate, edit, create product images with AI. Remove or replace backgrounds, lifestyle shots, transparent PNGs, visual assets, batch generation, illustratio...

What it does

Bria — Generate, Edit & Remove Background from Images with AI

The skill document

Bria — Generate, Edit & Remove Background from Images with AI

Generate, edit, and create visual assets using Bria's commercially-safe AI models (FIBO, RMBG-2.0, GenFill, and more). Remove or replace backgrounds, create product lifestyle shots, generate transparent PNGs, batch generate images, and build pipeline workflows. Unlike black-box generators, Bria gives you fine-grained control: edit by text instruction, mask specific regions, add/replace/remove individual objects, change lighting or season independently.

Setup — API Key Check

Before making any Bria API call, check for the API key and help the user set it up if missing:

Step 1: Check if the key exists

echo $BRIA_API_KEY

If the output is not empty, skip to the next section.

Step 2: If the key is missing, guide the user

Tell the user exactly this:

To use image generation, you need a free Bria API key.

  1. Go to https://platform.bria.ai/console/account/api-keys
  2. Sign up or log in
  3. Click Create API Key

Wait for the user to provide their API key. Do not proceed until they give you the key.

Do not proceed with any image generation or editing until the API key is confirmed set.


Core Capabilities

NeedCapabilityUse Case
Generate images from textFIBO GenerateHero images, product shots, illustrations, social media images, banners
Edit images by text instructionFIBO-EditChange colors, modify objects, transform scenes
Edit image region with maskGenFill/ErasePrecise inpainting, add/replace specific regions
Add/Replace/Remove objectsText-based editingAdd vase, replace apple with pear, remove table
Remove background (transparent PNG)RMBG-2.0Extract subjects for overlays, logos, cutouts
Replace/blur/erase backgroundBackground opsChange, blur, or remove backgrounds
Expand/outpaint imagesOutpaintingExtend boundaries, change aspect ratios
Upscale image resolutionSuper ResolutionIncrease resolution 2x or 4x
Enhance image qualityEnhancementImprove lighting, colors, details
Restyle imagesRestyleOil painting, anime, cartoon, 3D render
Change lightingRelightGolden hour, spotlight, dramatic lighting
Change seasonReseasonSpring, summer, autumn, winter
Composite/blend imagesImage BlendingApply textures, logos, merge images
Restore old photosRestorationFix old/damaged photos
Colorize imagesColorizationAdd color to B&W, or convert to B&W
Sketch to photoSketch2ImageConvert drawings to realistic photos
Create product lifestyle shotsLifestyle ShotPlace products in scenes for e-commerce
Integrate products into scenesProduct IntegrateEmbed products at exact coordinates

Quick Reference

Generate an Image (FIBO)

curl -X POST "https://engine.prod.bria-api.com/v2/image/generate" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{
    "prompt": "your description",
    "aspect_ratio": "16:9",
    "resolution": "1MP",
    "sync": true
  }'

Aspect ratios: 1:1 (square), 16:9 (hero/banner), 4:3 (presentation), 9:16 (mobile/story), 3:4 (portrait)

Resolution: 1MP (default) or 4MP (improved details for photorealism, adds ~30s latency)

Sync mode: Pass "sync": true in the request body for single image generation to get the result directly in the response. For batch/multiple image generation, omit sync (or set false) and use polling instead.

Advanced: For precise, deterministic control over generation, use VGL structured prompts instead of natural language. VGL defines every visual attribute (objects, lighting, composition) as explicit JSON.

Remove Background (RMBG-2.0)

curl -X POST "https://engine.prod.bria-api.com/v2/image/edit/remove_background" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{"image": "https://..."}'

Returns PNG with transparency.

Edit Image (FIBO-Edit) - No Mask Required

curl -X POST "https://engine.prod.bria-api.com/v2/image/edit" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{
    "images": ["https://..."],
    "instruction": "change the mug to red"
  }'

Edit Image Region with Mask (GenFill)

curl -X POST "https://engine.prod.bria-api.com/v2/image/edit/gen_fill" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{
    "image": "https://...",
    "mask": "https://...",
    "prompt": "what to generate in masked area"
  }'

Expand Image (Outpainting)

curl -X POST "https://engine.prod.bria-api.com/v2/image/edit/expand" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{
    "image": "base64-or-url",
    "aspect_ratio": "16:9",
    "prompt": "coffee shop background, wooden table"
  }'

Upscale Image

curl -X POST "https://engine.prod.bria-api.com/v2/image/edit/increase_resolution" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{"image": "https://...", "scale": 2}'

Create Product Lifestyle Shot

curl -X POST "https://engine.prod.bria-api.com/v1/product/lifestyle_shot_by_text" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{
    "image": "https://product-with-transparent-bg.png",
    "prompt": "modern kitchen countertop, natural morning light"
  }'

Integrate Products into Scene

Place one or more products at exact coordinates in a scene. Products are automatically cut out and matched to the scene's lighting and perspective.

curl -X POST "https://engine.prod.bria-api.com/image/edit/product/integrate" \
  -H "api_token: $BRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "User-Agent: BriaSkills/1.2.5" \
  -d '{
    "scene": "https://scene-image-url",
    "products": [
      {
        "image": "https://product-image-url",
        "coordinates": {"x": 100, "y": 200, "width": 300, "height": 400}
      }
    ]
  }'

Response Handling

Sync (single image generation)

For single image requests, pass "sync": true in the request body. The response returns the result directly — no polling needed.

Async with polling (batch generation)

For batch or multiple image generation, omit sync (or set "sync": false). The response returns a status URL to poll:

{
  "request_id": "uuid",
  "status_url": "https://engine.prod.bria-api.com/v2/status/uuid"
}

Poll the status_url until status: "COMPLETED", then get result.image_url.

import requests, time

def get_result(status_url, api_key):
    while True:
        r = requests.get(status_url, headers={"api_token": api_key, "User-Agent": "BriaSkills/1.2.5"})
        data = r.json()
        if data["status"] == "COMPLETED":
            return data["result"]["image_url"]
        if data["status"] == "FAILED":
            raise Exception(data.get("error"))
        time.sleep(2)

Prompt Engineering Tips

  • Style: "professional product photography" vs "casual snapshot", "flat design illustration" vs "3D rendered"
  • Lighting: "soft natural light", "studio lighting", "dramatic shadows"
  • Background: "white studio", "gradient", "blurred office", "transparent"
  • Composition: "centered", "rule of thirds", "negative space on left for text"
  • Quality keywords: "high quality", "professional", "commercial grade", "4K", "sharp focus"
  • Negative prompts: "blurry, low quality, pixelated", "text, watermark, logo"

API Reference

See references/api-endpoints.md for complete endpoint documentation.

Key Endpoints

Image Generation

EndpointPurpose
POST /v2/image/generateGenerate images from text (FIBO)

Edit by Text (No Mask)

EndpointPurpose
POST /v2/image/editEdit image with natural language instruction
POST /v2/image/edit/add_object_by_textAdd objects to image
POST /v2/image/edit/replace_object_by_textReplace objects in image
POST /v2/image/edit/erase_by_textRemove objects by name

Edit with Mask

EndpointPurpose
POST /v2/image/edit/gen_fillInpaint/generate in masked region
POST /v2/image/edit/eraseErase masked region

Background Operations

EndpointPurpose
POST /v2/image/edit/remove_backgroundRemove background (RMBG-2.0)
POST /v2/image/edit/replace_backgroundReplace with AI-generated background
POST /v2/image/edit/blur_backgroundApply blur to background
POST /v2/image/edit/erase_foregroundRemove foreground, fill background
POST /v2/image/edit/crop_foregroundCrop tightly around subject

Image Transformation

EndpointPurpose
POST /v2/image/edit/expandOutpaint to new aspect ratio
POST /v2/image/edit/enhanceEnhance quality and details
POST /v2/image/edit/increase_resolutionUpscale 2x or 4x
POST /v2/image/edit/blendBlend/merge images or textures
POST /v2/image/edit/reseasonChange season/weather
POST /v2/image/edit/restyleTransform artistic style
POST /v2/image/edit/relightModify lighting

Restoration

EndpointPurpose
POST /v2/image/edit/sketch_to_colored_imageConvert sketch to photo
POST /v2/image/edit/restoreRestore old/damaged photos
POST /v2/image/edit/colorizeColorize B&W or convert to B&W

Product Photography

EndpointPurpose
POST /v1/product/lifestyle_shot_by_textCreate product lifestyle shots by text
POST /image/edit/product/integrateIntegrate products into scene at exact coordinates

Utilities

EndpointPurpose
POST /v2/structured_instruction/generateGenerate JSON instruction (no image)
GET /v2/status/{id}Check async request status

Authentication

All requests need api_token header:

api_token: YOUR_BRIA_API_KEY
User-Agent: BriaSkills/

Required: Always include the User-Agent: BriaSkills/ header (where `` is the current skill version from package.json, e.g. BriaSkills/1.2.5) in every API call, including status polling requests.


Additional Resources

  • API Endpoints Reference — Complete endpoint documentation with request/response formats
  • Workflows & Pipelines — Batch generation, parallel pipelines, integration examples
  • Python Client — Full-featured async Python client
  • TypeScript Client — Typed Node.js client
  • Bash/curl Reference — Shell functions for all endpoints
  • vgl — Write structured VGL JSON prompts for precise, deterministic control over FIBO image generation
  • image-utils — Classic image manipulation (resize, crop, composite, watermarks) for post-processing

Related skills

Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.

by nssa.io1.0k installs47 stars

Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.

by johnpatternai22 installs8 stars

Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.

by Iván559 installs18 stars

Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.

by Iván855 installs69 stars

Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.

by fly0pants4.3k installs296 stars

Run Git operations — commits, branches, merges, rebases, conflict resolution, and recovery — with safety rules enforced.

by Iván535 installs31 stars

More from galbria

Browse all skills

Generate, edit, and process commercially safe images via 20+ Bria.ai API endpoints.

by galbria90 installs4 stars

Pillow image toolkit for resize, crop, watermark, format conversion, and web optimization.

by galbria93 installs3 stars

Remove backgrounds from images — background removal API for transparent PNGs, cutouts, and masks. Segment foreground from background. Powered by Bria RMBG 2....

by galbria20 installs1 stars

AI image generation, editing, and background removal API via Bria.ai — authenticates via OAuth device flow and caches credentials in ~/.bria/credentials, the...

by galbria17 installs

Vehicle/automotive image editing for cars, trucks, SUVs, motorcycles — car scenes, reflections, tires refinement with snow/mud/grass, segment windshield/whee...

by galbria2 installs

Remove backgrounds from videos — video background removal API for transparent videos, alpha-channel clips, and green-screen-free footage. Powered by Bria's v...

by galbria1 installs