Skip to content
For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Primary navigation

Create image variation

Deprecated
client.images.createVariation(ImageCreateVariationParams { image, model, n, 3 more } body, RequestOptionsoptions?): ImagesResponse { created, background, data, 4 more }
POST/images/variations

This endpoint is retired and no longer available. Use the image edits endpoint with a GPT Image model and a prompt to create a variation of an image. The request and response schemas below describe the legacy contract.

ParametersExpand Collapse
body: ImageCreateVariationParams { image, model, n, 3 more }
image: Uploadable

The image to use as the basis for the variation(s). Must be a valid PNG file, less than 4MB, and square.

model?: (string & {}) | ImageModel | null

The legacy model used by the retired image variations endpoint. This endpoint no longer accepts requests.

n?: number | null

The number of images to generate. Must be between 1 and 10.

minimum1
maximum10
response_format?: "url" | "b64_json" | null

The format in which the generated images are returned. Must be one of url or b64_json. URLs are only valid for 60 minutes after the image has been generated.

size?: "256x256" | "512x512" | "1024x1024" | null

The size of the generated images. Must be one of 256x256, 512x512, or 1024x1024.

user?: string

A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. Learn more.

ReturnsExpand Collapse
ImagesResponse { created, background, data, 4 more }

The response from the image generation endpoint.

created: number

The Unix timestamp (in seconds) of when the image was created.

formatunixtime
background?: "transparent" | "opaque"

The background parameter used for the image generation. Either transparent or opaque.

data?: Array<Image { b64_json, revised_prompt, url } >

The list of generated images.

output_format?: "png" | "webp" | "jpeg"

The output format of the image generation. Either png, webp, or jpeg.

quality?: "low" | "medium" | "high" | 2 more

The quality of the image generated. One of low, medium, high, xhigh, or max.

size?: (string & {}) | "1024x1024" | "1024x1536" | "1536x1024"

The image dimensions as a WIDTHxHEIGHT string, for example 1536x864.

usage?: Usage { input_tokens, input_tokens_details, output_tokens, 2 more }

For gpt-image-1 only, the token usage information for the image generation.

Create image variation

import fs from "fs";
import OpenAI from "openai";

const openai = new OpenAI();

async function main() {
  const image = await openai.images.createVariation({
    image: fs.createReadStream("otter.png"),
  });

  console.log(image.data);
}
main();
{
  "created": 1589478378,
  "data": [
    {
      "url": "https://..."
    },
    {
      "url": "https://..."
    }
  ]
}
Returns Examples
{
  "created": 1589478378,
  "data": [
    {
      "url": "https://..."
    },
    {
      "url": "https://..."
    }
  ]
}