> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bitstudio.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Models and request settings

> Use endpoint-specific model identifiers, explicit quality settings, and compatible references.

Model selection belongs to each operation. Generate uses `model_version`; try-on, editing, inpainting, and video use `model`. A Studio interface label such as **NB 2** is not the literal API value.

## Start with these combinations

| Operation                     | Model field     | Example value       | Notes                                                                           |
| ----------------------------- | --------------- | ------------------- | ------------------------------------------------------------------------------- |
| Generate                      | `model_version` | `nano-banana-2`     | Use `generate_mode: "presets"`; reusable avatars and presets go in `asset_ids`. |
| Generate with Nano Banana Pro | `model_version` | `nano-banana-pro`   | Access and quality allowances depend on the account.                            |
| Virtual try-on                | `model`         | `nano-banana-2`     | Use a single garment source and a person photo.                                 |
| Text edit                     | `model`         | `nano-banana-2`     | Returns a new version of the original image.                                    |
| Masked inpaint                | `model`         | `v1`                | Requires a same-size mask and explicit `denoise`.                               |
| Image-to-video                | `model`         | `kling-v3-pro`      | Returns a new standalone video job.                                             |
| Text-to-video                 | `model`         | `kling-v3-standard` | Requires a scene prompt; returns a standalone job.                              |

Kling 3 image-to-video also supports `kling-v3-standard`. The jobs API returns the same job shape for both models. The existing `/images/{id}/video` endpoint returns a parent image with a video version for `kling-2.5`. See [jobs and versions](/api-reference/jobs-and-versions).

## Image quality and proportions

Send `resolution` explicitly as `standard` or `high` and start with `num_images: 1`. For Nano Banana 2 and Pro, Studio presents the quality choices as 2K and 4K. The output dimensions depend on the model and aspect ratio; read `result.width` and `result.height` from the completed job (`width_px` and `height_px` on the existing image endpoints).

Generate and try-on default to one output when `num_images` is omitted. Edit and inpaint create exactly one output; use `num_images: 1` or omit it.

For Generate with Nano Banana 2 or Pro, common ratios include `1:1`, `3:4`, `4:5`, `2:3`, `9:16`, `16:9`, `4:3`, `3:2`, `5:4`, and `21:9`. The quickstart uses `3:4`. Do not assume another model accepts every ratio.

Generate and try-on support up to eight outputs where the model and account allow it. A larger batch, higher quality, or different model can use more credits or hit a different feature limit.

## Outfit references

Generate with Nano Banana 2 or Pro can take multiple garment references, up to three. Choose one source form per product: `outfit_asset_ids`, `outfit_image_ids`, or `outfit_image_urls`. Keep alternative views of one garment together in an outfit asset.

For Nano Banana 2 **virtual try-on**, use the singular `outfit_asset_id`, `outfit_image_id`, or `outfit_image_url`. The plural try-on fields are restricted to models that support them; a model being visible in Studio does not mean your API key has access to it. In particular, V4, V4x, V5, and V6 have additional API access restrictions.

## Video inputs

Start with a single five-second shot. Use `generate_audio` to request audio on supported models, and `multi_prompt` for multiple Kling 3 shots. The shot durations determine the total duration and cost.

Start and end frames must each be at least 300 × 300 pixels, no larger than 10 MiB, and have a width-to-height ratio between 0.4 and 2.5. When using both frames, their pixel dimensions must match. Do not supply both `last_frame_id` and `last_frame_url`.

## Unsupported or restricted settings

Treat the HTTP error and its message as the next action: correct an invalid combination, choose an available model, or resolve an account limit. Do not silently switch models after a rejection if reproducibility or product appearance matters to your integration.
