---
title: "Get Variant Matrix"
method: GET
path: "/v1/projects/{project_id}/keys/{key_id}/variants"
tags: ["variants"]
---

# Get Variant Matrix

`GET /v1/projects/{project_id}/keys/{key_id}/variants`

## Request

- Base URL: `https://api.sonenta.dev`
- URL: `https://api.sonenta.dev/v1/projects/{project_id}/keys/{key_id}/variants`
- Auth: none declared

Full override matrix for ONE key across every project language x surface,
with the resolved value + inheritance info (what each empty cell falls back
to) + drift flags. Powers the client-admin variant modal.

## Path parameters

- `key_id` string, required
- `project_id` string, required

## Response `200`

Successful Response

- VariantMatrixOut
  - `keyUuid` string, required
  - `keyName` string, required
  - `plurals` boolean, required
  - `surfaces` string[], required
  - `surfaceKinds` object
  - `languages` LanguageRowOut[], required
    - `code` string, required
    - `languageUuid` string, required
    - `fallbackChain` string[], required
    - `pluralCategories` string[], nullable
    - `default` CellOut, required
      - `override` boolean, required
      - `value` string, nullable
      - `pluralForms` object, nullable
      - `assetRef` object, nullable
      - `status` string, nullable
      - `resolvedValue` string, nullable
      - `resolvedPluralForms` object, nullable
      - `resolvedFrom` string, nullable
      - `drift` boolean
    - `surfaces` object, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/sonenta/apis/sonenta-api.md) · [All operations](https://skmtc.dev/sonenta/apis/sonenta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sonenta/apis/sonenta-api/revisions/f853ea49fb05?raw)
