Images

Given a prompt and/or an input image, the model will generate a new image. Related guide: Image generationsource

Create image

post https://api.openai.com/v1/images/generations

Creates an image given a prompt.source

Request body

A text description of the desired image(s). The maximum length is 1000 characters for dall-e-2 and 4000 characters for dall-e-3.source

The model to use for image generation.source

The number of images to generate. Must be between 1 and 10. For dall-e-3, only n=1 is supported.source

The quality of the image that will be generated. hd creates images with finer details and greater consistency across the image. This param is only supported for dall-e-3.source

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.source

The size of the generated images. Must be one of 256x256, 512x512, or 1024x1024 for dall-e-2. Must be one of 1024x1024, 1792x1024, or 1024x1792 for dall-e-3 models.source

The style of the generated images. Must be one of vivid or natural. Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images. This param is only supported for dall-e-3.source

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

Returns

Returns a list of image objects.source

Example request
1
2
3
4
5
6
7
8
9
curl https://api.openai.com/v1/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "model": "dall-e-3",
    "prompt": "A cute baby sea otter",
    "n": 1,
    "size": "1024x1024"
  }'
Response
1
2
3
4
5
6
7
8
9
10
11
{
  "created": 1589478378,
  "data": [
    {
      "url": "https://..."
    },
    {
      "url": "https://..."
    }
  ]
}

Create image edit

post https://api.openai.com/v1/images/edits

Creates an edited or extended image given an original image and a prompt.source

Request body

The image to edit. Must be a valid PNG file, less than 4MB, and square. If mask is not provided, image must have transparency, which will be used as the mask.source

A text description of the desired image(s). The maximum length is 1000 characters.source

An additional image whose fully transparent areas (e.g. where alpha is zero) indicate where image should be edited. Must be a valid PNG file, less than 4MB, and have the same dimensions as image.source

The model to use for image generation. Only dall-e-2 is supported at this time.source

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

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

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.source

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

Returns

Returns a list of image objects.source

Example request
1
2
3
4
5
6
7
curl https://api.openai.com/v1/images/edits \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F image="@otter.png" \
  -F mask="@mask.png" \
  -F prompt="A cute baby sea otter wearing a beret" \
  -F n=2 \
  -F size="1024x1024"
Response
1
2
3
4
5
6
7
8
9
10
11
{
  "created": 1589478378,
  "data": [
    {
      "url": "https://..."
    },
    {
      "url": "https://..."
    }
  ]
}

Create image variation

post https://api.openai.com/v1/images/variations

Creates a variation of a given image.source

Request body

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

The model to use for image generation. Only dall-e-2 is supported at this time.source

The number of images to generate. Must be between 1 and 10. For dall-e-3, only n=1 is supported.source

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.source

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

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

Returns

Returns a list of image objects.source

Example request
1
2
3
4
5
curl https://api.openai.com/v1/images/variations \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F image="@otter.png" \
  -F n=2 \
  -F size="1024x1024"
Response
1
2
3
4
5
6
7
8
9
10
11
{
  "created": 1589478378,
  "data": [
    {
      "url": "https://..."
    },
    {
      "url": "https://..."
    }
  ]
}

The image object

Represents the url or the content of an image generated by the OpenAI API.source

The base64-encoded JSON of the generated image, if response_format is b64_json.source

The URL of the generated image, if response_format is url (default).source

The prompt that was used to generate the image, if there was any revision to the prompt.source

OBJECT The image object
1
2
3
4
{
  "url": "...",
  "revised_prompt": "..."
}