---
title: "Get AI Config variation"
method: GET
path: "/api/v2/projects/{projectKey}/ai-configs/{configKey}/variations/{variationKey}"
tags: ["AI Configs"]
---

# Get AI Config variation

`GET /api/v2/projects/{projectKey}/ai-configs/{configKey}/variations/{variationKey}`

Get an AI Config variation by key. The response includes all variation versions for the given variation key.

## Path parameters

- `projectKey` string, required
- `configKey` string, required
- `variationKey` string, required

## Response `200`

Successful response

- AIConfigVariationsResponse
  - `items` AIConfigVariation[], required
    - `_links` ParentLink
      - `parent` CoreLink, required
        - `href` string, required
        - `type` string, required
    - `color` string
    - `comment` string
    - `description` string — Returns the description for the agent. This is only returned for agent variations.
    - `instructions` string — Returns the instructions for the agent. This is only returned for agent variations.
    - `key` string, required
    - `_id` string, required
    - `messages` Message[]
      - `content` string, required
      - `role` string, required
    - `model` object, required
    - `modelConfigKey` string
    - `name` string, required
    - `createdAt` integer, required
    - `version` integer, required
    - `state` string
    - `_archivedAt` integer
    - `_publishedAt` integer
    - `tools` VariationTool[]
      - `key` string, required — The key of the tool to use.
      - `version` integer, required — The version of the tool.
      - `customParameters` object — Custom metadata and configuration for application-level use
    - `judgeConfiguration` JudgeConfiguration
      - `judges` JudgeAttachment[] — List of judges for this variation. When updating, this replaces all existing judge attachments, and if empty, removes all judge attachments.
        - `judgeConfigKey` string, required — Key of the judge AI Config
        - `samplingRate` number, float, required — Sampling rate for this judge attachment (0.0 to 1.0)
    - `judgingConfigKeys` string[]
  - `totalCount` integer, required

## Other responses

- `400` — Bad request
- `403` — Forbidden
- `404` — Not found
- `500` — Internal server error

## Changes

- **2026-02-28** `69c5c9aafe78` — 1 warning, 5 info
  - deleted the `header` request parameter `LD-API-Version`
  - api tag `AI Configs` added
  - api tag `AI Configs (beta)` removed
  - added the optional property `items/items/judgeConfiguration` to the response with the `200` status
  - …2 more
- **2025-07-08** `b2724c5174d1` — 1 breaking, 3 info
  - the response property `items/items/messages` became optional for the status `200`
  - added the optional property `items/items/description` to the response with the `200` status
  - added the optional property `items/items/instructions` to the response with the `200` status
  - added the required property `items/items/_id` to the response with the `200` status

[Change history](https://skmtc.dev/launchdarkly/apis/launchdarkly-rest-api/changes/api/v2/projects/:projectKey/ai-configs/:configKey/variations/:variationKey/get.md)

---

[API](https://skmtc.dev/launchdarkly/apis/launchdarkly-rest-api.md) · [All operations](https://skmtc.dev/launchdarkly/apis/launchdarkly-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/launchdarkly/launchdarkly-rest-api/revisions/69c5c9aafe78/schema)
