Introduction
FLUX.2 [pro] Text to image is Black Forest Labs' production model from the FLUX.2 generation, released on 25 November 2025. It turns a written prompt into a photographic image at 1k or 2k in nine aspect ratios, with text that reads correctly inside the picture and colours you can set with hex codes.
Choose a mode by starting material
| What you have | Mode |
|---|---|
| a written brief | FLUX.2 [pro] Text to image |
| one to three images to change or combine | FLUX.2 [pro] Edit |
Key features & highlights
Readable text in the picture
Quote the words and say where they sit. In our poster test a serif headline and a small sans-serif line both came back spelled exactly as written.
Hex-code colour control
Write colours as hex codes and the palette follows. Our poster used a teal and a copper tone, and the sea and the horizon band took them.
Documentary realism
Skin texture, window light and film grain read as photographs. Our balcony portrait kept freckles and fine lines at 2k.
Moderated, with limits
The Mild level renders. In our tests the Moderate level rendered in some runs and came back toned down in others, Strong-level requests came back softened, and the Very strong level was refused without charge.
Request parameters
| Parameter | Required | Description |
|---|---|---|
prompt | Yes | Required, up to 5,000 characters. Describe subject, clothing, setting, light and lens in plain sentences. at least 1 characters · at most 5000 characters |
aspect_ratio | No | One of nine shapes: 1:1 (default), 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 21:9, 9:21. The shape does not change the price. |
resolution | No | 1k (default) is about one megapixel; 2k is 2048 pixels on the long side. The size tier affects the price. |
seed | No | Optional whole number from 0 to 2147483647. Reuse it while changing the prompt to compare variations side by side; it does not guarantee an identical image. |
Pricing
Billed per image by size tier; the aspect ratio does not change the price. Refused and failed requests are not charged.
| Specification | Price |
|---|---|
| $0.03 / image |
| $0.0391 / image |
Use cases
Posters and campaign drafts
A headline, a tagline and a photograph in one frame, for fragrance, fashion or product concepts.
Couples and character portraits
Two people with distinct hair, clothing and mood in a candid scene, for stories, mood boards and character sheets.
Social visuals in any shape
Square, vertical, wide and ultra-wide frames from the same prompt by changing the shape.
Prompt guide & pro tips
Write full sentences
Subject, clothing, setting, light and lens as sentences works better than a list of keywords.
Quote text and name its style
Put each line in quotes and describe the type, for example a wide-spaced serif headline at the top.
Pin the palette
Give hex codes for the two or three colours that matter and say where they appear.
Draft at 1k
Test a composition at 1k, then render the keeper at 2k. The size tier affects the price.
Use a seed to compare
Keep the seed fixed while you change one phrase, so differences come from your wording.
API quick start
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "black-forest-labs/flux-2-pro/text-to-image",
"input": {
"prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
"resolution": "1k",
"aspect_ratio": "1:1"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
See the API reference for authentication, the complete schema, polling, and error handling.
























