blackforestlabs/flux-2/dev/text-to-image

Generate and refine high-fidelity images from text or multiple references with precise color control, photo-realistic detail, and consistent typography for professional design and branding tasks.

1. Get started

Use RunComfy's API to run blackforestlabs/flux-2/dev/text-to-image. For accepted inputs and outputs, see the model's schema.

curl --request POST \
  --url https://model-api.runcomfy.net/v1/models/blackforestlabs/flux-2/dev/text-to-image \
  --header "Content-Type: application/json" \
  --header "Authorization: Bearer <token>" \
  --data '{
    "prompt": "High-resolution iPhone photograph tightly composed to capture two fashionable women standing mid-distance from a pristine white gallery wall adorned with a large whimsical modern artwork. The scene shows a candid moment mid-discussion, their relaxed postures conveying natural engagement with the art and each other. One woman, seen from a slight side angle at three-quarter rear view, wears a dark gray corset-style top paired with relaxed black jeans that gently crease at the ankle, her arms loosely at her sides. Her hair, softly catching the ambient light, frames her face as she directs her gaze thoughtfully toward the painting. The other woman, captured from behind and slightly to the side, dons a sleek black dress with subtle texture, complemented by a delicate gingham ribbon tied neatly in her hair, which cascades softly over her shoulders. Her hands rest casually by her sides as she leans slightly forward, visibly engaged in the conversation. Soft, diffuse ambient gallery lighting gently sculpts fabric textures—the corset's structured sheen and the dress's smooth flow—while creating a natural compression between figure and whimsical artwork. The expansive white wall behind them provides a clean, graphic background, establishing a calm horizontal rhythm that anchors this intimate, fashion-forward moment of contemporary art appreciation within a serene minimalist museum setting."
  }'

2. Authentication

Set the YOUR_API_TOKEN environment variable with your API key (manage keys in your Profile) and include it on every request as a Bearer token via the Authorization header: Authorization: Bearer $YOUR_API_TOKEN.

3. API reference

Submit a request

Submit an asynchronous generation job and immediately receive a request_id plus URLs to check status, fetch results, and cancel.

curl --request POST \
  --url https://model-api.runcomfy.net/v1/models/blackforestlabs/flux-2/dev/text-to-image \
  --header "Content-Type: application/json" \
  --header "Authorization: Bearer <token>" \
  --data '{
    "prompt": "High-resolution iPhone photograph tightly composed to capture two fashionable women standing mid-distance from a pristine white gallery wall adorned with a large whimsical modern artwork. The scene shows a candid moment mid-discussion, their relaxed postures conveying natural engagement with the art and each other. One woman, seen from a slight side angle at three-quarter rear view, wears a dark gray corset-style top paired with relaxed black jeans that gently crease at the ankle, her arms loosely at her sides. Her hair, softly catching the ambient light, frames her face as she directs her gaze thoughtfully toward the painting. The other woman, captured from behind and slightly to the side, dons a sleek black dress with subtle texture, complemented by a delicate gingham ribbon tied neatly in her hair, which cascades softly over her shoulders. Her hands rest casually by her sides as she leans slightly forward, visibly engaged in the conversation. Soft, diffuse ambient gallery lighting gently sculpts fabric textures—the corset's structured sheen and the dress's smooth flow—while creating a natural compression between figure and whimsical artwork. The expansive white wall behind them provides a clean, graphic background, establishing a calm horizontal rhythm that anchors this intimate, fashion-forward moment of contemporary art appreciation within a serene minimalist museum setting."
  }'

Monitor request status

Fetch the current state for a request_id ("in_queue", "in_progress", "completed", or "cancelled").

curl --request GET \
  --url https://model-api.runcomfy.net/v1/requests/{request_id}/status \
  --header "Authorization: Bearer <token>"

Retrieve request results

Retrieve the final outputs and metadata for the given request_id; if the job is not complete, the response returns the current state so you can continue polling.

curl --request GET \
  --url https://model-api.runcomfy.net/v1/requests/{request_id}/result \
  --header "Authorization: Bearer <token>"

Cancel a request

Cancel a queued job by request_id, in-progress jobs cannot be cancelled.

curl --request POST \
  --url https://model-api.runcomfy.net/v1/requests/{request_id}/cancel \
  --header "Authorization: Bearer <token>"

4. File inputs

Hosted file (URL)

Provide a publicly reachable HTTPS URL. Ensure the host allows server‑side fetches (no login/cookies required) and isn't rate‑limited or blocking bots. Recommended limits: images ≤ 50 MB (~4K), videos ≤ 100 MB (~2–5 min @ 720p). Prefer stable or pre‑signed URLs for private assets.

5. Schema

Input schema

{
  "type": "object",
  "title": "Input",
  "required": [
    "prompt"
  ],
  "properties": {
    "prompt": {
      "title": "Prompt",
      "description": "",
      "type": "string",
      "default": "High-resolution iPhone photograph tightly composed to capture two fashionable women standing mid-distance from a pristine white gallery wall adorned with a large whimsical modern artwork. The scene shows a candid moment mid-discussion, their relaxed postures conveying natural engagement with the art and each other. One woman, seen from a slight side angle at three-quarter rear view, wears a dark gray corset-style top paired with relaxed black jeans that gently crease at the ankle, her arms loosely at her sides. Her hair, softly catching the ambient light, frames her face as she directs her gaze thoughtfully toward the painting. The other woman, captured from behind and slightly to the side, dons a sleek black dress with subtle texture, complemented by a delicate gingham ribbon tied neatly in her hair, which cascades softly over her shoulders. Her hands rest casually by her sides as she leans slightly forward, visibly engaged in the conversation. Soft, diffuse ambient gallery lighting gently sculpts fabric textures—the corset's structured sheen and the dress's smooth flow—while creating a natural compression between figure and whimsical artwork. The expansive white wall behind them provides a clean, graphic background, establishing a calm horizontal rhythm that anchors this intimate, fashion-forward moment of contemporary art appreciation within a serene minimalist museum setting."
    },
    "guidance_scale": {
      "title": "Guidance Scale",
      "description": "Guidance Scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you.",
      "type": "float",
      "minimum": 0,
      "maximum": 20,
      "default": 2.5
    },
    "seed": {
      "title": "Seed",
      "description": "",
      "type": "integer",
      "default": null
    },
    "num_inference_steps": {
      "title": "Number of Inference Steps",
      "description": "The number of inference steps to perform.",
      "type": "integer",
      "minimum": 4,
      "maximum": 50,
      "default": 28
    },
    "image_size": {
      "title": "Image Size",
      "description": "The size of the image to generate. For custom size, specify width and height between 512 and 2048 pixels.",
      "type": "string",
      "enum": [
        "square_hd",
        "square",
        "portrait_4_3",
        "portrait_16_9",
        "landscape_4_3",
        "landscape_16_9"
      ],
      "default": "landscape_4_3"
    },
    "num_images": {
      "title": "Number of Images",
      "description": "The number of images to generate.",
      "type": "integer",
      "minimum": 1,
      "maximum": 4,
      "default": 1
    },
    "enable_prompt_expansion": {
      "title": "Magic Prompt",
      "description": "If set to true, the prompt will be expanded for better results.",
      "type": "boolean",
      "default": null
    },
    "output_format": {
      "title": "Output Format",
      "description": "The format of the generated image.",
      "type": "string",
      "enum": [
        "jpeg",
        "png",
        "webp"
      ],
      "default": "png"
    }
  }
}

Output schema

{
  "output": {
    "type": "object",
    "properties": {
      "image": {
        "type": "string",
        "format": "uri",
        "description": "single image URL"
      },
      "video": {
        "type": "string",
        "format": "uri",
        "description": "single video URL"
      },
      "images": {
        "type": "array",
        "description": "multiple image URLs",
        "items": { "type": "string", "format": "uri" }
      },
      "videos": {
        "type": "array",
        "description": "multiple video URLs",
        "items": { "type": "string", "format": "uri" }
      }
    }
  }
}