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

# Flux 2 Pro

> Flux 2 Pro is an image generation and editing model by Black Forest Labs. It creates high-quality images from text prompts and can edit existing images using natural language instructions. The model handles complex text rendering, photorealistic details, and maintains consistent characters or styles across multiple reference images.

## Query Task Status

After submitting a task, use the unified query endpoint to check progress and retrieve results:

<Card title="Get Task Info" icon="magnifying-glass" href="/models/common/get-task-info">
  Learn how to query task status and retrieve generation results
</Card>

<Tip>
  For production use, we recommend using the `callback_url` parameter to receive automatic notifications when generation completes, rather than polling the status endpoint.
</Tip>

## Related Resources

<CardGroup cols={2}>
  <Card title="Models Overview" icon="store" href="/models/quickstart">
    Explore all available models
  </Card>

  <Card title="Common API" icon="gear" href="/common-api/get-account-credits">
    Check credits and account usage
  </Card>
</CardGroup>


## OpenAPI

````yaml models/flux/flux-2-pro.json post /api/v1/client/job/CreateTask
openapi: 3.0.0
info:
  title: Crun Flux 2 Pro API
  description: crun.ai Flux 2 Pro API Documentation
  version: 1.0.0
  contact:
    name: Technical Support
    email: support@crun.ai
servers:
  - url: https://api.crun.ai
    description: API Server
security:
  - ApiKeyAuth: []
paths:
  /api/v1/client/job/CreateTask:
    post:
      summary: flux 2 pro image generation or editing.
      operationId: flux-2-pro
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - input
              properties:
                model:
                  type: string
                  enum:
                    - flux-2-pro
                  description: |-
                    The model name to use for generation. Required field.

                    - Must be `flux-2-pro` for this endpoint
                callback_url:
                  type: string
                  format: uri
                  description: >-
                    Optional. Callback URL for receiving task completion
                    notifications.


                    - System will POST task status and results to this URL when
                    generation completes

                    - Callback payloads structure is consistent with the `data`
                    object returned by the task status query

                    - Your callback endpoint should accept POST requests with
                    JSON payload containing results

                    - It returns an HTTP 200 status code upon successful receipt
                  example: https://your-domain.com/api/callback
                input:
                  type: object
                  description: >-
                    Input parameters for the Flux 2 Pro model, supporting
                    high-fidelity image generation and multi-image reference.
                  properties:
                    prompt:
                      type: string
                      description: >-
                        Text prompt for image generation. Highly descriptive
                        prompts yield better results.
                      minLength: 1
                      maxLength: 5000
                      example: >-
                        A cinematic portrait of a cyberpunk wanderer in a
                        rain-slicked neon street, highly detailed armor, 8k.
                    img_urls:
                      type: array
                      description: >-
                        List of input image URLs for image-to-video or
                        image-to-image generation. Maximum 8 images. Supported
                        formats: jpeg, png, gif, webp.
                      items:
                        type: string
                        format: uri
                      maxItems: 8
                      example:
                        - https://example.com/reference-1.jpg
                    aspect_ratio:
                      type: string
                      description: >-
                        Aspect ratio for the generated image. Use
                        'match_input_image' to inherit the ratio from the first
                        reference image.
                      enum:
                        - '1:1'
                        - '2:3'
                        - '3:2'
                        - '3:4'
                        - '4:3'
                        - '4:5'
                        - '5:4'
                        - '9:16'
                        - '16:9'
                        - match_input_image
                      default: match_input_image
                      example: '16:9'
                    resolution:
                      type: string
                      description: >-
                        Resolution in megapixels. Up to 4 MP is possible, but 2
                        MP or below is recommended. The maximum image size is
                        2048x2048, which means that high-resolution images may
                        not respect the resolution if aspect ratio is not 1:1.
                      enum:
                        - 1K
                        - 2K
                        - 4K
                      default: 1K
                      example: 1K
                    safety_tolerance:
                      type: integer
                      description: >-
                        Safety filter sensitivity. 1 is most strict (heavy
                        filtering), 5 is most permissive.
                      minimum: 1
                      maximum: 5
                      default: 2
                      example: 2
                    seed:
                      type: integer
                      description: Random seed for reproducible generation.
                      example: 42
                    output_format:
                      type: string
                      description: File format of the generated image.
                      enum:
                        - png
                        - jpg
                        - webp
                      default: webp
                      example: webp
                    output_quality:
                      type: integer
                      description: >-
                        Quality when saving the output images, from 0 to 100.
                        100 is best quality, 0 is lowest quality. Not relevant
                        for `png` outputs
                      minimum: 0
                      maximum: 100
                      default: 80
                      example: 90
                  required:
                    - prompt
            example:
              model: flux-2-pro
              callback_url: https://your-domain.com/api/callback
              input:
                prompt: >-
                  An oil painting of a futuristic garden where flowers are made
                  of glowing fiber optics, vibrant colors.
                aspect_ratio: '3:2'
                resolution: 2K
                safety_tolerance: 3
                output_format: jpg
                output_quality: 95
                seed: 555
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponse'
                  - type: object
                    properties:
                      data:
                        type: object
                        properties:
                          task_id:
                            type: string
                            description: >-
                              Task ID, can be used with Get Task Details
                              endpoint to query task status
                            example: task_12345678
              example:
                code: 200
                message: success
                data:
                  task_id: task_12345678
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponse'
                  - type: object
                    properties:
                      errors:
                        type: array
                        description: Detailed validation error messages
                        items:
                          type: string
                        example:
                          - specific error field message
              example:
                code: 422
                message: Missing Params or Type Error
                errors:
                  - specific error field message
        '500':
          $ref: '#/components/responses/Error'
components:
  schemas:
    ApiResponse:
      type: object
      properties:
        code:
          type: integer
          enum:
            - 200
            - 401
            - 402
            - 404
            - 422
            - 429
            - 455
            - 500
            - 501
            - 505
          description: >-
            Response status code


            - **200**: Success - Request has been processed successfully

            - **401**: Unauthorized - Authentication credentials are missing or
            invalid

            - **402**: Insufficient Credits - Account does not have enough
            credits to perform the operation

            - **404**: Not Found - The requested resource or endpoint does not
            exist

            - **422**: Validation Error - The request parameters failed
            validation checks

            - **429**: Rate Limited - Request limit has been exceeded for this
            resource

            - **455**: Service Unavailable - System is currently undergoing
            maintenance

            - **500**: Server Error - An unexpected error occurred while
            processing the request

            - **501**: Generation Failed - Content generation task failed

            - **505**: Feature Disabled - The requested feature is currently
            disabled
        message:
          type: string
          description: Response message, error description when failed
          example: success
  responses:
    Error:
      description: Server Error
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        All APIs require authentication via API Key.


        Get API Key:

        1. Visit [API Key Management Page](https://crun.ai/user-api-key) to get
        your API Key


        Usage:

        Add to request header:


        x-api-key: YOUR_API_KEY


        Note:

        - Keep your API Key secure and do not share it with others

        - If you suspect your API Key has been compromised, reset it immediately
        in the management page

````