---
title: "GET /voices/tags — Voice Tags"
url: https://lumean.app/es/developers/docs/api/get-voices-tags
locale: es
description: "Voice Tags"
generated: 2026-10-17
operationId: voice.tags
method: GET
path: /voices/tags
scopes: [voices.read]
spec_version: 0.0.1
---

# GET /voices/tags

**Voice Tags**

The reference of active voice tags, named in the request language.

Needed for the `tag_ids[]` filter of `GET /voices/public`: take the ids of the tags
you want from here. The language of the names follows the `X-Locale` header.

**Required key permission:** `voices.read`.

- Permiso requerido: `voices.read`

## Petición

```bash
curl -X GET 'https://api.lumean.app/api/public/voices/tags' \
  -H 'Accept: application/json' \
  -H 'X-API-KEY: YOUR_API_KEY'
```

## Parámetros

Sin parámetros.

## Cuerpo de la petición

Sin cuerpo.

## Respuestas

### 200 — Success. The payload is in `data`.

**Campos de la respuesta**

| Campo | Tipo | Oblig. | Descripción |
| --- | --- | --- | --- |
| `success` | `boolean` | obligatorio | Success flag. Branch on the HTTP status code instead: any 2xx response carries `true` here, while an error comes back in a different shape that need not contain this field at all. |
| `message` | `string` | obligatorio | A human-readable note in the account language. Fine to show to a user; do not parse it — the wording changes without notice and is not an error code. |
| `data` | `array<VoiceTag>` | obligatorio | The complete tag directory — the same set that appears in each voice’s `tags`. |
| `data[].id` | `integer` | obligatorio | Internal identifier of the tag. |
| `data[].code` | `string` | obligatorio | Tag code — the stable value to filter by, unlike the translatable `name`. |
| `data[].name` | `string` | obligatorio | Tag name in the account language. |
| `data[].description` | `string` — nullable | obligatorio | Explanation of the tag in the account language, when the author provided one. |
| `data[].color` | `string` | obligatorio | Tag colour in HEX — a styling hint. |
| `data[].sort_order` | `integer` | obligatorio | Sort weight within the tag list: lower comes first. |

**Ejemplo**

```json
{
  "success": true,
  "message": "Success",
  "data": [
    {
      "id": 1,
      "code": "male",
      "name": "Male",
      "description": null,
      "color": null,
      "sort_order": 10
    },
    {
      "id": 2,
      "code": "female",
      "name": "Female",
      "description": null,
      "color": null,
      "sort_order": 20
    },
    {
      "id": 3,
      "code": "neutral",
      "name": "Neutral",
      "description": null,
      "color": null,
      "sort_order": 30
    },
    {
      "id": 4,
      "code": "calm",
      "name": "Calm",
      "description": null,
      "color": null,
      "sort_order": 40
    },
    {
      "id": 5,
      "code": "energetic",
      "name": "Energetic",
      "description": null,
      "color": null,
      "sort_order": 50
    },
    {
      "id": 6,
      "code": "young",
      "name": "Young",
      "description": null,
      "color": null,
      "sort_order": 60
    },
    {
      "id": 7,
      "code": "mature",
      "name": "Mature",
      "description": null,
      "color": null,
      "sort_order": 70
    },
    {
      "id": 8,
      "code": "narration",
      "name": "Narration",
      "description": null,
      "color": null,
      "sort_order": 80
    },
    {
      "id": 9,
      "code": "gaming",
      "name": "Gaming",
      "description": null,
      "color": null,
      "sort_order": 90
    },
    {
      "id": 10,
      "code": "character",
      "name": "Character",
      "description": null,
      "color": null,
      "sort_order": 100
    },
    {
      "id": 11,
      "code": "warm",
      "name": "Warm",
      "description": null,
      "color": null,
      "sort_order": 110
    },
    {
      "id": 12,
      "code": "cold",
      "name": "Cold",
      "description": null,
      "color": null,
      "sort_order": 120
    }
  ]
}
```

### 401 — The key is missing, unknown, disabled or expired.

**Campos de la respuesta**

| Campo | Tipo | Oblig. | Descripción |
| --- | --- | --- | --- |
| `success` | `boolean` | obligatorio | Always `false` in error responses. |
| `message` | `string` | obligatorio | Error text in the key's language (set through the `X-Locale` header). |
| `data` | `null` — nullable | obligatorio | Always `null` when the request is rejected before processing. |

**Ejemplo**

```json
{
  "success": false,
  "message": "API key is missing. Provide it in the X-API-KEY header.",
  "data": null
}
```

### 403 — The key lacks the required permission, or the object belongs to another user.

**Campos de la respuesta**

| Campo | Tipo | Oblig. | Descripción |
| --- | --- | --- | --- |
| `success` | `boolean` | obligatorio | Always `false` in error responses. |
| `message` | `string` | obligatorio | Error text in the key's language (set through the `X-Locale` header). |

**Ejemplo**

```json
{
  "success": false,
  "message": "This API key does not have permission to perform this action."
}
```

---

- Esta página en el navegador: https://lumean.app/es/developers/docs/api/get-voices-tags
- Referencia completa legible por máquina: https://api.lumean.app/docs/llm.md
