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.NewVariation(ctx, body) (*ImagesResponse, error)
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 ImageNewVariationParams
Image param.Field[Reader]

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

Model param.Field[ImageModel]Optional

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

N param.Field[int64]Optional

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

minimum1
maximum10
ResponseFormat param.Field[ImageNewVariationParamsResponseFormat]Optional

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 param.Field[ImageNewVariationParamsSize]Optional

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

User param.Field[string]Optional

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

ReturnsExpand Collapse
type ImagesResponse struct{…}

The response from the image generation endpoint.

Created int64

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

formatunixtime
Background ImagesResponseBackgroundOptional

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

Data []ImageOptional

The list of generated images.

OutputFormat ImagesResponseOutputFormatOptional

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

Quality ImagesResponseQualityOptional

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

Size ImagesResponseSizeOptional

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

Usage ImagesResponseUsageOptional

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

Create image variation

package main

import (
  "bytes"
  "context"
  "fmt"
  "io"

  "github.com/openai/openai-go"
  "github.com/openai/openai-go/option"
)

func main() {
  client := openai.NewClient(
    option.WithAPIKey("My API Key"),
  )
  imagesResponse, err := client.Images.NewVariation(context.TODO(), openai.ImageNewVariationParams{
    Image: io.Reader(bytes.NewBuffer([]byte("Example data"))),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", imagesResponse.Created)
}
{
  "created": 1589478378,
  "data": [
    {
      "url": "https://..."
    },
    {
      "url": "https://..."
    }
  ]
}
Returns Examples
{
  "created": 1589478378,
  "data": [
    {
      "url": "https://..."
    },
    {
      "url": "https://..."
    }
  ]
}