Getty Images Variations API
The Variations API from Getty Images — 1 operation(s) for variations.
The Variations API from Getty Images — 1 operation(s) for variations.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/getty-images-variations-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Getty Images Variations API
version: '3'
description: '
Developer resources for the Getty Images API including SDK, documentation,
release notes, status, notifications and sample code.'
servers:
- url: https://api.gettyimages.com
description: Base URL declared by the provider in apis.yml (roadmap#122).
security:
- Api-Key: []
- OAuth2: []
tags:
- name: Variations
paths:
/v3/ai/image-generations/{generationRequestId}/images/{index}/variations:
post:
tags:
- Variations
summary: Get variations on a generated image
description: '# AI Generator - Generate Variations
Generate image variations from a previously-generated image.
## The Image Variation Request
The `ImageVariationRequest` payload to be posted contains the optional
parameters:
| Parameter | Purpose |
|---------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `product_id` | If you have multiple AI Generation Getty Images products, indicate which one you would like to use for this generation request. If you have multiple products, this property is _required_. Can be retrieved from products (`GET /v3/products`). |
| `notes` | This is an optional free text parameter often used by clients who wish to include notes specific to their integration. This is for use by Getty Images customers only (not iStock). The products endpoint (`GET /v3/products`) provides this information. |
| `project_code` | If your Getty Images Generative AI product requires project_codes, use of this parameter is required. If your product does not require a project_code, this parameter must be excluded from the request. This is for use by Getty Images customers only (not iStock). The products endpoint (`GET /v3/products`) provides this information. |
## Fulfilled and Pending Results
In many cases the result of this call will be the final fulfilled result. In these cases, you will see a `HTTP 200 OK`
result and a payload including URLs to the result images and a generation request `id` value.
However some generations may take more time than can be accommodated in the initial call. In these cases the result of
this call is `HTTP 202 Accepted` and the payload will only contain a generation request `id` value. This value must be
retained by the client for subsequent polling of the `GET v3/ai/image-generations/{generationRequestId}` Get Images Generation endpoint.
## Lifetime of Generated Images
Generated images will be retained for 6 months after generation.
'
parameters:
- name: generationRequestId
in: path
description: The ID from a previous request to generate images
required: true
style: simple
schema:
type: string
- name: index
in: path
description: The index of the image from the specific images generation
required: true
style: simple
schema:
type: integer
format: int32
requestBody:
description: Request parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ImageVariationRequest'
text/json:
schema:
$ref: '#/components/schemas/ImageVariationRequest'
application/*+json:
schema:
$ref: '#/components/schemas/ImageVariationRequest'
responses:
'200':
description: Returns the result of a request to generate a variation of images
content:
application/json:
schema:
$ref: '#/components/schemas/ImageGenerationsResponse'
'202':
description: Returns the request ID for a pending request to generate a variation of images
content:
application/json:
schema:
$ref: '#/components/schemas/PendingImageGenerationResponse'
'400':
description: InvalidProduct
'403':
description: Product quota exceeded
'404':
description: Either the generation id does not exist, the index is incorrect, or the generation is still pending
'429':
description: TooManyConcurrentGenerations
components:
schemas:
ImageDataResponse:
type: object
properties:
index:
type: integer
format: int32
is_blocked:
type: boolean
preview_urls:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/PreviewUrl'
description: The preview URLs for the result
url:
type:
- string
- 'null'
additionalProperties: false
PendingImageGenerationResponse:
type: object
properties:
generation_request_id:
type:
- string
- 'null'
additionalProperties: false
ImageVariationRequest:
type: object
properties:
product_id:
type:
- integer
- 'null'
description: If you have multiple Getty products, indicate which one you would like to use for this generation request
format: int32
project_code:
type:
- string
- 'null'
description: The project code to use for the generation request. Some products require this value.
notes:
type:
- string
- 'null'
description: The notes to use for the generation request. Some products require this value.
additionalProperties: false
description: Payload with all images variation parameters
AssetDetail:
type: object
properties:
id:
type:
- string
- 'null'
additionalProperties: false
PreviewUrl:
type: object
properties:
preview_size:
type:
- string
- 'null'
image_url:
type:
- string
- 'null'
width:
type: integer
format: int32
height:
type: integer
format: int32
additionalProperties: false
ImageGenerationsResponse:
type: object
properties:
generation_request_id:
type:
- string
- 'null'
seed:
type:
- integer
- 'null'
format: int32
results:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ImageDataResponse'
original_asset:
$ref: '#/components/schemas/AssetDetail'
additionalProperties: false
securitySchemes:
Api-Key:
type: apiKey
name: Api-Key
in: header
OAuth2:
type: oauth2
flows:
password:
tokenUrl: https://api.gettyimages.com/v4/oauth2/token
refreshUrl: https://api.gettyimages.com/v4/oauth2/token
scopes: {}
clientCredentials:
tokenUrl: https://api.gettyimages.com/v4/oauth2/token
scopes: {}
authorizationCode:
authorizationUrl: https://api.gettyimages.com/v4/oauth2/auth
tokenUrl: https://api.gettyimages.com/v4/oauth2/token
refreshUrl: https://api.gettyimages.com/v4/oauth2/token
scopes: {}