Zum Inhalt
Lumean API

Beschreibungen auf Englisch

Die Oberfläche des Bereichs ist in Ihre Sprache übersetzt, Beschreibungen von Operationen, Schemata und Fehlern gibt es aber nur auf Russisch und Englisch — hier wird die englische Fassung angezeigt.
GET/voices/library

Voice Library

Your personal library — everything you can narrate with right now: your own finished voices plus the ones you added from the public catalogue.

Korrekturen an der Spezifikation · 1

  • Pagination does not live in data.meta

    Four per_page descriptions promise pagination metadata in data.meta. No public API response contains that key: a page arrives flat — data.items[] plus data.current_page, data.last_page, data.per_page, data.total. Code reading data.meta.total gets undefined.

This is the practical list for picking a voice_id: unlike GET /voices, it never contains unfinished or rejected voices. Each entry has your local nickname (nickname) and an availability flag, filterable through available.

Required key permission: voices.read.

Auf dieser Seite(3)

Parameter

Die Eingabefelder liegen direkt in der Anfragezeile: Wert eintragen und die URL ist fertig. Darunter stehen Typ, Pflichtangabe und erlaubte Werte jedes Parameters.

GEThttps://api.lumean.app/api/public/voices/library
  • booleanin der Queryoptional

    Only voices usable for generation right now (true), or only unusable ones (false).

  • stringin der Queryoptional

    Language filter, ISO-639-1 (ru, en, de, …).

  • stringin der Queryoptional

    Sort field. Defaults to added_at.

    Zulässige Werte
  • stringin der Queryoptional

    Sort direction.

    Zulässige Werte
  • integerin der Queryoptional

    How many records to return per page. Pagination metadata sits next to items: current_page, last_page, per_page, total.

Mögliche Antworten

200

Success. The payload is in data.

Beispiel für den Body
{
  "success": true,
  "message": "Success",
  "data": {
    "items": [
      {
        "id": 12,
        "voice_id": "k3nH9vRt2Lw7ZpXb",
        "nickname": null,
        "added_at": "2026-06-05T10:00:00+00:00",
        "available": true,
        "unavailable_reason": null,
        "origin": "own",
        "voice": {
          "id": "k3nH9vRt2Lw7ZpXb",
          "display_name": "Ava Narrator (EN)",
          "description": "Warm, measured narration voice cloned from a 45-second studio reference — ideal for long-form audiobook and e-learning narration.",
          "gender": "female",
          "accent": "us",
          "default_language_code": "en",
          "voice_status": "ready",
          "publication_status": "public",
          "allow_usage_in_orders": true,
          "preview_generated_at": "2026-06-02T09:15:00+00:00",
          "created_at": "2026-06-01T10:00:00+00:00",
          "updated_at": "2026-06-02T09:15:00+00:00",
          "tags": [
            {
              "id": 8,
              "code": "narration",
              "name": "Narration",
              "description": null,
              "color": null,
              "sort_order": 80
            },
            {
              "id": 4,
              "code": "calm",
              "name": "Calm",
              "description": null,
              "color": null,
              "sort_order": 40
            }
          ],
          "languages": [
            {
              "id": 1,
              "language_code": "en",
              "status": "ready",
              "reference_duration_ms": 47000,
              "model_version": 1,
              "failure_reason": null,
              "clone_started_at": "2026-06-01T10:05:00+00:00",
              "clone_completed_at": "2026-06-01T10:22:00+00:00",
              "updated_at": "2026-06-01T10:22:00+00:00"
            }
          ],
          "preview_urls": {
            "en": "https://s3.lumean.app/lumean/storage/lumvoice/voices/k3nH9vRt2Lw7ZpXb/previews/en.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAEXAMPLE1234567%2F20260602%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260602T091500Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=3f9c2b0a1d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a"
          }
        }
      },
      {
        "id": 13,
        "voice_id": "Xh7Nc2Rt9BqZm4Wv",
        "nickname": "Ad voice backup",
        "added_at": "2026-05-25T14:00:00+00:00",
        "available": false,
        "unavailable_reason": "admin_force_removed",
        "origin": "library",
        "voice": {
          "id": "Xh7Nc2Rt9BqZm4Wv",
          "display_name": "Owen Commercial (EN)",
          "description": "Confident male voice tuned for commercial and advertisement reads.",
          "gender": "male",
          "accent": "uk",
          "default_language_code": "en",
          "voice_status": "ready",
          "publication_status": "rejected",
          "allow_usage_in_orders": false,
          "preview_generated_at": "2026-05-20T12:00:00+00:00",
          "created_at": "2026-05-18T09:00:00+00:00",
          "updated_at": "2026-07-10T11:00:00+00:00",
          "tags": [
            {
              "id": 5,
              "code": "energetic",
              "name": "Energetic",
              "description": null,
              "color": null,
              "sort_order": 50
            }
          ],
          "languages": [
            {
              "id": 3,
              "language_code": "en",
              "status": "ready",
              "reference_duration_ms": 51000,
              "model_version": 1,
              "failure_reason": null,
              "clone_started_at": "2026-05-18T09:05:00+00:00",
              "clone_completed_at": "2026-05-18T09:25:00+00:00",
              "updated_at": "2026-05-18T09:25:00+00:00"
            }
          ],
          "preview_urls": {
            "en": "https://s3.lumean.app/lumean/storage/lumvoice/voices/Xh7Nc2Rt9BqZm4Wv/previews/en.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAEXAMPLE1234567%2F20260520%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260520T120000Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=7a1c9e3f5b2d4a86c0f7e9d1b3a5c8e2f4b6d0a2c4e6f8b1d3a5c7e9f0b2d4a6"
          }
        }
      }
    ],
    "current_page": 1,
    "last_page": 1,
    "per_page": 20,
    "total": 2
  }
}
Felder der Antwort
successerforderlich

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.

boolean
messageerforderlich

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.

string
dataerforderlich

Voices you have added to your personal library.

UserLibraryListUserLibraryList
itemserforderlich

Records on the current page, in the list’s sort order.

array<object>
current_pageerforderlich

Current page number, starting from one.

integer
last_pageerforderlich

Number of the last page. The walk is over once current_page equals last_page.

integer
per_pageerforderlich

Page size the server applied.

integer
totalerforderlich

Total number of records matching the filter.

integer
401

The key is missing, unknown, disabled or expired.

Diese Antwort analysieren
Beispiel für den Body
{
  "success": false,
  "message": "API key is missing. Provide it in the X-API-KEY header.",
  "data": null
}
Felder der Antwort
successerforderlich

Always false in error responses.

boolean
messageerforderlich

Error text in the key's language (set through the X-Locale header).

string
dataerforderlich

Always null when the request is rejected before processing.

darf null sein
null
403

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

Diese Antwort analysieren
Beispiel für den Body
{
  "success": false,
  "message": "This API key does not have permission to perform this action."
}
Felder der Antwort
successerforderlich

Always false in error responses.

boolean
messageerforderlich

Error text in the key's language (set through the X-Locale header).

string
422

Validation error. Offending fields are listed in errors.

Diese Antwort analysieren
Beispiel für den Body
{
  "message": "string",
  "errors": {}
}
Felder der Antwort
messageerforderlich

Errors overview.

string
errorserforderlich

A detailed description of each field that failed validation.

object
*optional
beliebige Schlüssel
array<string>

Diese Seite einer KI geben

.md öffnenllm.md

Spezifikation 0.0.1