GPT Image 1.5 Image Generation

  • GPT Image 1.5 (gpt-image-1.5) model supports text-to-image, image-to-image, and image editing modes
  • Asynchronous processing mode, use the returned task ID to query status
  • Generated image links are valid for 24 hours, please save them promptly

OpenAPI

````yaml en/api-manual/image-series/gpt-image-1.5/gpt-image-1.5-image-generation.json post /v1/images/generations openapi: 3.1.0 info: title: gpt-image-1.5 API description: >- Create image tasks using AI models with support for multiple models and parameter configurations license: name: MIT version: 1.0.0 servers: - url: https://ai.odkkk.com/apiv1 description: Production security: - bearerAuth: [] tags: - name: Image Generation description: AI image generation APIs paths: /v1/images/generations: post: tags: - Image Generation summary: gpt-image-1.5-lite API description: >- - GPT Image 1.5 (gpt-image-1.5) model supports text-to-image, image-to-image, and image editing modes

    - Asynchronous processing mode, use the returned task ID to [query
    status](/en/api-manual/task-management/get-task-detail)

    - Generated image links are valid for 24 hours, please save them
    promptly
  operationId: createImageGeneration
  requestBody:
    required: true
    content:
      application/json:
        schema:
          $ref: '#/components/schemas/ImageGenerationRequest'
        examples:
          text_to_image:
            summary: Text to Image
            value:
              model: gpt-image-1.5
              prompt: A beautiful colorful sunset over the ocean
  responses:
    '200':
      description: Image task created successfully
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ImageGenerationResponse'
    '400':
      description: Invalid request parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 400
              message: Invalid request parameters
              type: invalid_request_error
    '401':
      description: Unauthenticated, invalid or expired token
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 401
              message: Invalid or expired token
              type: authentication_error
    '402':
      description: Insufficient quota, payment required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 402
              message: Insufficient quota
              type: insufficient_quota_error
              fallback_suggestion: https://ai.odkkk.com/apiv1/dashboard/billing
    '403':
      description: Access denied
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 403
              message: Access denied for this model
              type: permission_error
              param: model
    '404':
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 404
              message: Specified model not found
              type: not_found_error
              param: model
              fallback_suggestion: gpt-image-1.5
    '413':
      description: Request body too large
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 413
              message: Image file too large
              type: request_too_large_error
              param: image_urls
              fallback_suggestion: compress image to under 4MB
    '429':
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 429
              message: Rate limit exceeded
              type: rate_limit_error
              fallback_suggestion: retry after 60 seconds
    '500':
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 500
              message: Internal server error
              type: internal_server_error
              fallback_suggestion: try again later
    '502':
      description: Upstream service error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 502
              message: Upstream AI service unavailable
              type: upstream_error
              fallback_suggestion: try different model
    '503':
      description: Service temporarily unavailable
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              code: 503
              message: Service temporarily unavailable
              type: service_unavailable_error
              fallback_suggestion: retry after 30 seconds

components: schemas: ImageGenerationRequest: type: object required: - model - prompt properties: model: type: string description: Image generation model name enum: - gpt-image-1.5 default: gpt-image-1.5 example: gpt-image-1.5 prompt: type: string description: >- Prompt describing the image you want to generate, or describing how to edit the input image. Limited to 2000 tokens example: A beautiful colorful sunset over the ocean maxLength: 2000 size: type: string description: |- Size of the generated image, supports two formats:

        **Aspect Ratio Format:**
        - `1:1`: Square
        - `2:3`: Portrait
        - `3:2`: Landscape

        **Pixel Format:**
        - `1024x1024`: Square
        - `1024x1536`: Portrait
        - `1536x1024`: Landscape
      enum:
        - '1:1'
        - '2:3'
        - '3:2'
        - 1024x1024
        - 1024x1536
        - 1536x1024
      example: 1024x1024
    quality:
      type: string
      description: |-
        Quality of the generated image

        **Supported quality levels:**
        - `low`: Low quality, faster generation
        - `medium`: Medium quality
        - `high`: High quality, slower generation
        - `auto`: Automatic selection (default)
      enum:
        - low
        - medium
        - high
        - auto
      default: auto
      example: auto
    image_urls:
      type: array
      description: >-
        Reference image URL list for image-to-image and image editing
        features


        **Notes:**

        - Supports `1~16` images per request

        - Maximum size per image: `50MB`

        - Supported formats: `.jpeg`, `.jpg`, `.png`, `.webp`

        - Image URLs must be directly accessible by the server, or URLs that
        trigger direct download (typically URLs ending with image extensions
        like `.png`, `.jpg`)
      items:
        type: string
        format: uri
      example:
        - https://example.com/image1.png
        - https://example.com/image2.png
    'n':
      type: integer
      description: Number of images to generate, currently only supports `1`
      enum:
        - 1
      default: 1
      example: 1
ImageGenerationResponse:
  type: object
  properties:
    created:
      type: integer
      description: Task creation timestamp
      example: 1757156493
    id:
      type: string
      description: Task ID
      example: task-unified-1757156493-imcg5zqt
    model:
      type: string
      description: Actual model name used
      example: gpt-image-1.5
    object:
      type: string
      enum:
        - image.generation.task
      description: Task object type
    progress:
      type: integer
      description: Task progress percentage (0-100)
      minimum: 0
      maximum: 100
      example: 0
    status:
      type: string
      description: Task status
      enum:
        - pending
        - processing
        - completed
        - failed
      example: pending
    task_info:
      $ref: '#/components/schemas/TaskInfo'
      description: Async task information
    type:
      type: string
      enum:
        - text
        - image
        - audio
        - video
      description: Task output type
      example: image
    usage:
      $ref: '#/components/schemas/Usage'
      description: Usage and billing information
ErrorResponse:
  type: object
  properties:
    error:
      type: object
      properties:
        code:
          type: integer
          description: HTTP status error code
        message:
          type: string
          description: Error description
        type:
          type: string
          description: Error type
        param:
          type: string
          description: Related parameter name
        fallback_suggestion:
          type: string
          description: Suggestion for error resolution
TaskInfo:
  type: object
  properties:
    can_cancel:
      type: boolean
      description: Whether the task can be cancelled
      example: true
    estimated_time:
      type: integer
      description: Estimated completion time (seconds)
      minimum: 0
      example: 100
Usage:
  type: object
  description: Usage and billing information
  properties:
    billing_rule:
      type: string
      description: Billing rule
      enum:
        - per_call
        - per_token
        - per_second
      example: per_call
    credits_reserved:
      type: number
      description: Estimated credits consumption
      minimum: 0
      example: 2.5
    user_group:
      type: string
      description: User group category
      example: default

securitySchemes: bearerAuth: type: http scheme: bearer description: >- ## All APIs require Bearer Token authentication ##

    **Get API Key:**


    Visit the [API Key Management Page](https://ai.odkkk.com/apiv1/dashboard/keys)
    to get your API Key


    **Add to request header:**

    ```

    Authorization: Bearer YOUR_API_KEY

    ```

````


To find navigation and other pages in this documentation, fetch the llms.txt file at: https://ai.odkkk.com/apiv1/docs/llms.txt