black-forest-labs/flux-1-dev-controlnet-lora/text-to-imageFrom 6 credits per image

FLUX.1 Dev ControlNet LoRA generates images with Black Forest Labs' FLUX.1 [dev] guided by Shakker Labs' ControlNet Union Pro 2.0, with up to three LoRA files trained for FLUX.1 dev. One control image (a pose skeleton, a depth map, canny or soft-edge lines, or a grayscale photo) fixes the layout; the prompt decides the rest, and nothing is filtered.

Call it with the model name black-forest-labs/flux-1-dev-controlnet-lora/text-to-image on POST /jobs/createTask, from 6 credits per image ($0.06). New accounts get 30 free credits to try it in the Playground first.

  • Create Image
  • Up to 1.5K
  • Up to 4 per run
  • Loads your own LoRA

Introduction

FLUX.1 Dev ControlNet LoRA Text to image generates images with FLUX.1 [dev], the 12-billion-parameter model from Black Forest Labs, guided by ControlNet Union Pro 2.0 from Shakker Labs, with up to three of your own LoRA files loaded. One control image fixes the pose, depth or outlines; the prompt decides who and what is in the picture.

Key features

One network, five kinds of map

Canny lines, soft edges, depth, pose skeletons and grayscale photos all work through the same endpoint. There is no mode switch: the model reads the map you send.

Strength and timing controls

Control strength (0 to 1) sets how firmly the map is followed, and the start and end of the control window set when it applies during denoising.

Your own LoRAs

Up to three FLUX.1 dev LoRAs load per request.

Request parameters

ParameterRequiredDescription
control_guidance_endNoFraction of the denoising steps at which the control image stops applying, from 0 to 1; not before the start. ≥ 0 · ≤ 1 · Default: 0.8
control_guidance_startNoFraction of the denoising steps at which the control image starts to apply, from 0 to 1. ≥ 0 · ≤ 1 · Default: 0
control_image_urlYesControl image: a pose skeleton, depth map, canny or soft-edge line map, or a grayscale or plain photo. The result keeps its aspect ratio.
control_strengthNoHow strongly the result follows the control image, from 0 to 1. ≥ 0 · ≤ 1 · Default: 0.7
guidance_scaleNoHow strictly the model follows the prompt. ≥ 0 · ≤ 20 · Default: 3.5
lorasNoLoad your own LoRA files to lock in a style or character. Default: []
num_outputsNoHow many results to make in one go. ≥ 1 · ≤ 4 · Default: 1
output_formatNoFile type of the result. jpeg · png · webp · Default: jpeg
promptYesDescribe the picture you want: subject, clothing, setting and light. The control image only sets the layout.
resolutionNoOutput size. Bigger sizes look sharper and cost more. 1k · 1.5k · Default: 1k
seedNoReuse the same number to get a repeatable result. ≥ 0 · ≤ 2147483647
stepsNoMore steps add detail but take longer. ≥ 1 · ≤ 50 · Default: 28

Pricing

Prices are in credits, the same credits you use on the website (1 credit = $0.01). The hold is taken when the task is accepted and settled to the actual charge when it finishes; failed tasks are refunded.

OptionCredits per image≈ USD
Standard5.4$0.054

Each task is rounded up to whole credits, so one run at the lowest tier costs 6 credits per image ($0.06).

For an exact number before you run, send the same body to POST /jobs/quote.

Use cases

Matching a pose

Extract or draw a skeleton once and render the same pose with any person and outfit.

Restaging a photograph

Keep a photo's composition through its canny, soft-edge or grayscale map and change the cast, wardrobe and light.

Series with one layout

Reuse a control map so every image in a set shares the same framing.

Prompt guide & pro tips

Choose the map by what should change

A pose skeleton leaves clothing and bodies to the prompt.

Start from the suggested settings

Shakker Labs suggests strength 0.7 with the window ending at 0.8 for canny and soft edge, 0.8 for depth, and about 0.9 with the window ending at 0.65 for pose maps.

Match the aspect ratio

The output takes the shape of the control image. Crop the map to the frame you want before you send it.

Check the LoRA base model

Only FLUX.1 dev LoRAs work. A LoRA for another model family fails the request rather than being ignored.

API quick start

Call the FLUX.1 Dev ControlNet LoRA API in three steps

  1. Create an API key. Sign in to PopNow and create a key in the API console. Keys start with sk-popnow- and use the same credits as the website.
  2. Send the request. POST /jobs/createTask with model black-forest-labs/flux-1-dev-controlnet-lora/text-to-image and an input object that follows the parameter table. The response returns a task ID straight away.
  3. Get the result. Poll GET /jobs/recordInfo with the task ID, or pass a callBackUrl and we post the result to it. Download the output links when the task succeeds.
# 1. Create the task. Keep the Idempotency-Key if you retry after a network error.
export IDEMPOTENCY_KEY="$(uuidgen)"
curl -X POST https://api.popnow.ai/api/v1/jobs/createTask \
  -H "Authorization: Bearer $POPNOW_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $IDEMPOTENCY_KEY" \
  -d '{
  "model": "black-forest-labs/flux-1-dev-controlnet-lora/text-to-image",
  "input": {
    "prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
    "control_image_url": "https://media.popnow.ai/influencer/examples/marco.webp",
    "resolution": "1k",
    "num_outputs": 1,
    "output_format": "jpeg"
  }
}'

# 2. Copy data.taskId from the response, then poll until state is succeeded, failed, canceled or expired.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.popnow.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
  -H "Authorization: Bearer $POPNOW_API_KEY"

Replace the prompt and any links with your own. The API tab has the response, polling and callback reference.

FLUX.1 Dev ControlNet LoRA API questions

How much does the FLUX.1 Dev ControlNet LoRA API cost?

FLUX.1 Dev ControlNet LoRA costs 6 credits ($0.06) per image. Credits are the same as on the website (1 credit = $0.01), new accounts get 30 free credits, and failed tasks are refunded.

What is the model name for FLUX.1 Dev ControlNet LoRA in the API?

Put black-forest-labs/flux-1-dev-controlnet-lora/text-to-image for Create Image in the model field of POST /jobs/createTask.

What is a control image?

A map of the structure you want: a colored pose skeleton, a grayscale depth map, white canny or soft-edge lines on black, or a grayscale photo. The model copies its layout and pose and takes everything else from the prompt.

Does it detect the pose or depth for me?

No. Send the map itself. A plain photo is accepted too, but it constrains the picture the way a grayscale map does, so outlines and clothing shapes carry over.

Which LoRAs work here?

LoRAs trained for FLUX.1 dev, passed as a direct download link to the .safetensors file. In our tests an SDXL LoRA made the request fail, so check the base model on the LoRA page before you load it.

Can I use the images commercially?

Black Forest Labs' FLUX.1 [dev] license lets you use generated images for personal, scientific and commercial purposes. The license of each LoRA you load is set by its author, so check its model card.

What are the limits of the FLUX.1 Dev ControlNet LoRA API?

Resolutions: 1K · 1.5K; Outputs per call: 1–4; Prompt length (characters): 5,000; Largest upload: 10 MB. Requests outside these limits are rejected before anything is charged.

Can I try FLUX.1 Dev ControlNet LoRA without writing code?

Yes. The Playground runs FLUX.1 Dev ControlNet LoRA on your PopNow credits, needs no API key, and shows the matching code for every run.

All FLUX models

FLUX.1 Dev LoRA has no control image and suits free composition.

More about FLUX.1 Dev ControlNet LoRA