MarketSupport← Back to app

Flux-2

Flux-2 models are called through one unified, asynchronous job API. Start a task with POST /api/generate, then poll GET /api/generate/{taskId} until it finishes. This family exposes 4 endpoints.

Overview

Every endpoint shares the same envelope — only model and the input fields change. Run any from the Models Market playground.

Authentication

Create an API key at /api-keys, then send it as a Bearer token. Requests from the browser while logged in also work via the session cookie.

Authorization: Bearer <YOUR_API_KEY>

Create Task

POST
POST https://api.lithovas.com/api/generate

Body: { "model": "<slug>", "input": { … } }

Response: { "taskId": "<id>", "state": "waiting" }

Query Result

GET
GET https://api.lithovas.com/api/generate/<taskId>

Response: { "taskId", "state": "waiting" | "success" | "fail", "resultUrls": [ … ], "creditsConsumed", "failMsg", "balance" }

Asynchronous
A 200 from Create Task only means the task was accepted — not finished. Poll this endpoint until state becomes success or fail. Failed tasks are not billed.

Endpoints

ModelTaskmodel slug
ProImage to Imageflux2/pro-image-to-image
ProText to Imageflux2/pro-text-to-image
FlexImage to Imageflux2/flex-image-to-image
FlexText to Imageflux2/flex-text-to-image

Pro · Image to Image

POSTImage to Imageflux2/pro-image-to-image
input fields
input_urlsarray<string>required

Reference images (1-8), max 10MB each, JPEG/PNG/WebP formats

promptstringrequired

Text description (3-5000 characters) guiding the generation

aspect_ratiostringrequired

Output image proportions; 'auto' matches first input image

resolutionstringrequired

Output image resolution level

nsfw_checkerbooleanoptional

Content filtering toggle; false disables safety filtering

Example
cURL
curl -X POST https://api.lithovas.com/api/generate \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "flux2/pro-image-to-image",
  "input": {
    "input_urls": [
      "https://example.com/file"
    ],
    "prompt": "A cinematic red panda surfing through neon rain at dusk.",
    "aspect_ratio": "1:1",
    "resolution": "1K",
    "nsfw_checker": false
  }
}'

Pro · Text to Image

POSTText to Imageflux2/pro-text-to-image
input fields
promptstringrequired

Generation prompt, must be between 3 and 5000 characters

aspect_ratioenum<string>required

Aspect ratio for generated image

resolutionenum<string>required

Output image resolution

nsfw_checkerbooleanoptional

Disable content filtering when set to false

Example
cURL
curl -X POST https://api.lithovas.com/api/generate \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "flux2/pro-text-to-image",
  "input": {
    "prompt": "A cinematic red panda surfing through neon rain at dusk.",
    "aspect_ratio": "1:1",
    "resolution": "1K",
    "nsfw_checker": false
  }
}'

Flex · Image to Image

POSTImage to Imageflux2/flex-image-to-image
input fields
input_urlsarray<string>required

Input reference images (1-8), file URLs after upload

promptstringrequired

Text description of desired modifications; 3-5000 characters

aspect_ratioenum<string>required

Output image aspect ratio; auto matches first input

resolutionenum<string>required

Output image resolution

Example
cURL
curl -X POST https://api.lithovas.com/api/generate \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "flux2/flex-image-to-image",
  "input": {
    "input_urls": [
      "https://example.com/file"
    ],
    "prompt": "A cinematic red panda surfing through neon rain at dusk.",
    "aspect_ratio": "1:1",
    "resolution": "1K"
  }
}'

Flex · Text to Image

POSTText to Imageflux2/flex-text-to-image
input fields
promptstringrequired

Generation prompt, length must be between 3-5000 characters

aspect_ratioenum<string>required

Aspect ratio of the generated image

resolutionenum<string>required

Output image resolution

nsfw_checkerbooleanoptional

Disable content filtering when set to false

Example
cURL
curl -X POST https://api.lithovas.com/api/generate \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "flux2/flex-text-to-image",
  "input": {
    "prompt": "A cinematic red panda surfing through neon rain at dusk.",
    "aspect_ratio": "1:1",
    "resolution": "1K",
    "nsfw_checker": false
  }
}'