# Fibo Edit [Structured Instruction]

> Structured Instructions Generation endpoint for Fibo Edit, Bria's newest editing model.


## Overview

- **Endpoint**: `https://fal.run/bria/fibo-edit/edit/structured_instruction`
- **Model ID**: `bria/fibo-edit/edit/structured_instruction`
- **Category**: text-to-json
- **Kind**: inference
**Tags**: structured-prompt-generation, fibo-edit, json



## Pricing

- **Price**: $0.01 per requests

For more details, see [fal.ai pricing](https://fal.ai/pricing).

## API Information

This model can be used via our HTTP API or more conveniently via our client libraries.
See the input and output schema below, as well as the usage examples.


### Input Schema

The API accepts the following input parameters:


- **`image_url`** (`string`, _optional_):
  Reference image (file or URL).
  - Examples: "https://v3b.fal.media/files/b/0a8b07e8/GYKVk2EVivg_MC3jRRZi3_png%20-%202026-01-13T094835.850%20(3).png"

- **`mask_url`** (`string`, _optional_):
  Reference image mask (file or URL). Optional.

- **`instruction`** (`string`, _optional_):
  Instruction for image editing.
  - Examples: "change lighting to starlight nighttime"

- **`seed`** (`integer`, _optional_):
  Random seed for reproducibility. Default value: `5555`
  - Default: `5555`

- **`sync_mode`** (`boolean`, _optional_):
  If true, returns the image directly in the response (increases latency).
  - Default: `false`



**Required Parameters Example**:

```json
{}
```

**Full Example**:

```json
{
  "image_url": "https://v3b.fal.media/files/b/0a8b07e8/GYKVk2EVivg_MC3jRRZi3_png%20-%202026-01-13T094835.850%20(3).png",
  "instruction": "change lighting to starlight nighttime",
  "seed": 5555
}
```


### Output Schema

The API returns the following output format:

- **`short_description`** (`string`, _optional_):
  A short description of the image to be generated.

- **`objects`** (`list<PromptObject>`, _optional_):
  A list of objects in the image to be generated, along with their attributes and relationships to other objects in the image.
  - Default: `[]`
  - Array of PromptObject

- **`background_setting`** (`string`, _optional_):
  The background setting of the image to be generated.

- **`lighting`** (`Lighting`, _optional_):
  The lighting of the image to be generated.

- **`aesthetics`** (`Aesthetics`, _optional_):
  The aesthetics of the image to be generated.

- **`photographic_characteristics`** (`PhotographicCharacteristics`, _optional_):
  The photographic characteristics of the image to be generated.

- **`style_medium`** (`string`, _optional_):
  The style medium of the image to be generated.

- **`text_render`** (`list<void>`, _optional_):
  A list of text to be rendered in the image.
  - Default: `[]`
  - Array of void

- **`context`** (`string`, _optional_):
  The context of the image to be generated.

- **`artistic_style`** (`string`, _optional_):
  The artistic style of the image to be generated.

- **`edit_instruction`** (`string`, _optional_):
  The edit instruction for the image.



**Example Response**:

```json
{
  "objects": [],
  "text_render": []
}
```


## Usage Examples

### cURL

```bash
curl --request POST \
  --url https://fal.run/bria/fibo-edit/edit/structured_instruction \
  --header "Authorization: Key $FAL_KEY" \
  --header "Content-Type: application/json" \
  --data '{}'
```

### Python

Ensure you have the Python client installed:

```bash
pip install fal-client
```

Then use the API client to make requests:

```python
import fal_client

def on_queue_update(update):
    if isinstance(update, fal_client.InProgress):
        for log in update.logs:
           print(log["message"])

result = fal_client.subscribe(
    "bria/fibo-edit/edit/structured_instruction",
    arguments={},
    with_logs=True,
    on_queue_update=on_queue_update,
)
print(result)
```

### JavaScript

Ensure you have the JavaScript client installed:

```bash
npm install --save @fal-ai/client
```

Then use the API client to make requests:

```javascript
import { fal } from "@fal-ai/client";

const result = await fal.subscribe("bria/fibo-edit/edit/structured_instruction", {
  input: {},
  logs: true,
  onQueueUpdate: (update) => {
    if (update.status === "IN_PROGRESS") {
      update.logs.map((log) => log.message).forEach(console.log);
    }
  },
});
console.log(result.data);
console.log(result.requestId);
```


## Additional Resources

### Documentation

- [Model Playground](https://fal.ai/models/bria/fibo-edit/edit/structured_instruction)
- [API Documentation](https://fal.ai/models/bria/fibo-edit/edit/structured_instruction/api)
- [OpenAPI Schema](https://fal.ai/api/openapi/queue/openapi.json?endpoint_id=bria/fibo-edit/edit/structured_instruction)

### fal.ai Platform

- [Platform Documentation](https://docs.fal.ai)
- [Python Client](https://docs.fal.ai/clients/python)
- [JavaScript Client](https://docs.fal.ai/clients/javascript)
