Skip to content
Lumean API

Descriptions are in English

The section interface is translated into your language, but descriptions of operations, schemas and errors exist only in Russian and English — the English version is shown here.
GET/templates/{template}

Get Template

Returns one template in full, including its config and the service it is bound to.

Someone else's template is not reachable even by direct link — 403.

Required key permission: templates.read.

On this page(3)

Parameters

The inputs live inside the request line: fill in a value and you get a ready URL. Below are the type, whether it is required and the allowed values of every parameter.

GEThttps://api.lumean.app/api/public/templates/
  • stringin pathrequireduuid

    Template UUID — 36 characters, not a number.

    Take it from the id field: POST /templates returns it on creation, and GET /templates and GET /templates/browse list it.

    The value goes straight into the request line above.

Possible responses

200

Success. The payload is in data.

Body example
{
  "success": true,
  "message": "Template retrieved",
  "data": {
    "id": "7e2a4c1d-8b3f-4a5e-9c6d-1f2e3a4b5c6d",
    "user_id": 501,
    "slug": null,
    "name": "Narrator Voice (EN)",
    "service_key": "elevenlabs",
    "service": {
      "id": 3,
      "code": "elevenlabs",
      "name": "ElevenLabs",
      "display_name": "ElevenLabs TTS",
      "payg_access": "everyone",
      "billing_mode": "pay_as_you_go",
      "unit_asset_id": 5,
      "unit_asset": {
        "id": 5,
        "code": "tts_units",
        "kind": "unit",
        "precision": 0,
        "name": "TTS Units",
        "deleted_at": null,
        "created_at": "2026-01-10T09:00:00+00:00",
        "updated_at": "2026-01-10T09:00:00+00:00"
      },
      "required_entitlement_id": null,
      "units_per_call": null,
      "units_per_char": 1,
      "units_per_image": null,
      "units_per_second": null,
      "min_billable_chars": 1,
      "lumcoin_per_token": 10,
      "lumc_precision": 2,
      "price_lumc_minor": null,
      "unit_size": 1,
      "uses_money_first_pricing": false,
      "rate_unit": "char",
      "display_category": "voice",
      "is_premium": false,
      "display_order": 1,
      "metadata": null,
      "is_active": true,
      "created_at": "2026-01-10T09:00:00+00:00",
      "updated_at": "2026-01-10T09:00:00+00:00"
    },
    "config": {
      "tts_settings": {
        "model_id": "eleven_multilingual_v2",
        "voice_id": "21m00Tcm4TlvDq8ikWAM",
        "mode": "mode_v1",
        "language_code": null,
        "advanced_voice_settings": true,
        "voice_settings": {
          "stability": 0.5,
          "similarity_boost": 0.75,
          "use_speaker_boost": true
        }
      }
    },
    "is_public": false,
    "folder_id": null,
    "created_at": "2026-06-01T10:00:00+00:00",
    "updated_at": "2026-06-01T10:00:00+00:00"
  }
}
Response fields
successrequired

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
messagerequired

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
datarequired

The full template, including its current config.

TemplateTemplate
idrequired

Template UUID. Put it into template_id when creating an order.

string
user_idrequired

ID of the template owner.

integer
slugrequired

Short public identifier used for sharing. null on a template that was never shared.

string
namerequired

Template name — for humans only; it does not affect generation.

string
service_keyrequired

Code of the service whose schema validates config: elevenlabs, lumimg, and so on.

string
servicerequired

The template’s service for reference: name and pricing, without configuration schemas. null means no service with that code exists any more.

nullable
Service | null
configrequired

Generation settings: voice, model, speed and so on — the set of keys is defined by the service. Look up allowed values in GET /templates/config-options?service=<code>; anything outside the schema is rejected with 422. Inside an order (template in GET /orders/{order}) this is the order’s own settings — the snapshot taken at creation with config_override applied, not the template’s current configuration (for orders created before late September 2026 — the current template configuration with config_override).

object
is_publicrequired

Whether the template is published in the shared catalogue.

boolean
folder_idrequired

UUID of the folder holding the template, or null for the root. The folder tree is visible in GET /templates/browse.

string
created_atrequired

When the template was created, ISO 8601.

nullabledate-time
string
updated_atrequired

When the template last changed, ISO 8601.

nullabledate-time
string
401

The key is missing, unknown, disabled or expired.

Analyse this response
Body example
{
  "success": false,
  "message": "API key is missing. Provide it in the X-API-KEY header.",
  "data": null
}
Response fields
successrequired

Always false in error responses.

boolean
messagerequired

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

string
datarequired

Always null when the request is rejected before processing.

nullable
null
403

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

Analyse this response
Body example
{
  "success": false,
  "message": "This API key does not have permission to perform this action."
}
Response fields
messagerequired

Error overview.

string
404

Not found, or not reachable with this key.

Analyse this response
Body example
{
  "success": false,
  "message": "Resource not found."
}
Response fields
successrequired

Always false in error responses.

boolean
messagerequired

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

string
reasonoptional

Machine-readable reason — present on business refusals (for example, invalid_order_status); other errors omit it. Branch on it, not on the message text.

string
error_codeoptional

The same machine-readable code as in reason — a second name for the field. Arrives together with reason; the values always match.

string

Feed this page to an AI

Open .mdllm.md

spec 0.0.1