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/user

Get profile of API key owner

Returns the profile of the user the API key belongs to.

The base response carries the id, email, interface language (lang_code), whether Telegram is linked (has_telegram) and the creation/update timestamps.

Everything else is opt-in through include — a comma-separated list of sections. The full set of accepted values, with explanations, is documented on the parameter itself (Params tab); an unknown value is silently ignored rather than rejected.

The common case — checking how much generation is left: GET /user?include=subscriptions,usage.

Read-only, and always scoped to the key owner: internal and administrative fields are never returned.

Required key permission: profile.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/user
  • stringin queryoptional≤ 200 caracteres

    Which extra sections to merge into the response. Comma-separated, no spaces. An unknown value is silently ignored (no error), so a typo simply looks like a missing section.

    ValueWhat it adds
    subscriptionsActive subscriptions with the remaining token balance (subscriptions[].items[]) — the main way to see how much generation is left
    usageCurrent limit consumption per service (same data as GET /usage)
    entitlementsCapabilities granted by the plan: which services you may use
    walletsWallets and LMC balances. In the subscription-only model this section is omitted even when requested — read the remaining allowance from subscriptions
    order_settingsUser order preferences (delayed start and its delay)
    telegramThe linked Telegram account
    referralThe active referral programme. Omitted when the referral feature is off
    unread_notifications_countNumber of unread notifications (an integer at the root of data)

    Example: ?include=subscriptions,usage,entitlements.

    Allowed values (several, comma-separated)

Possible responses

200

Success. The payload is in data.

Body example
{
  "success": true,
  "message": "Success",
  "data": {
    "id": 501,
    "email": "ava.creator@example.com",
    "lang_code": "en",
    "display_currency": null,
    "has_telegram": false,
    "created_at": "2026-01-15T09:00:00+00:00",
    "updated_at": "2026-07-15T09:05:00+00:00",
    "subscriptions": [
      {
        "id": 301,
        "user_id": 501,
        "status": "active",
        "billing_anchor_at": "2026-01-15T00:00:00+00:00",
        "current_period_start": "2026-07-15T00:00:00+00:00",
        "current_period_end": "2026-08-15T00:00:00+00:00",
        "canceled_at": null,
        "items": [
          {
            "id": 601,
            "subscription_id": 301,
            "subscription_plan_id": 3,
            "plan": {
              "id": 3,
              "code": "creator",
              "name": "Creator",
              "description": "For solo creators publishing regularly across voice and image generation.",
              "tagline": "Solo creators publishing weekly across voice and image.",
              "price_monthly": 2200,
              "price_monthly_formatted": 22,
              "discount": 0,
              "effective_price_monthly": 2200,
              "effective_price_monthly_formatted": 22,
              "asset": {
                "id": 1,
                "code": "LUMC",
                "kind": "money",
                "precision": 2,
                "name": "LumCoin",
                "deleted_at": null,
                "created_at": "2026-01-10T09:00:00+00:00",
                "updated_at": "2026-01-10T09:00:00+00:00"
              },
              "token_allowance_monthly": 30000,
              "concurrent_jobs": 4,
              "team_seats": 1,
              "priority_api_queue": false,
              "commercial_licence": true,
              "is_popular": false,
              "is_active": true,
              "sort_order": 30,
              "metadata": null,
              "created_at": "2026-05-10T00:00:00+00:00",
              "updated_at": "2026-05-10T00:00:00+00:00"
            },
            "status": "active",
            "is_usable": true,
            "billing_period": "monthly",
            "quantity": 1,
            "unit_amount": 2200,
            "unit_amount_formatted": 22,
            "currency_asset": {
              "id": 1,
              "code": "LUMC",
              "kind": "money",
              "precision": 2,
              "name": "LumCoin",
              "deleted_at": null,
              "created_at": "2026-01-10T09:00:00+00:00",
              "updated_at": "2026-01-10T09:00:00+00:00"
            },
            "token_allowance": 30000,
            "tokens_used": 8200,
            "tokens_remaining": 21800,
            "unlimited_service_codes": [],
            "start_at": "2026-07-15T00:00:00+00:00",
            "end_at": "2026-08-15T00:00:00+00:00",
            "canceled_at": null,
            "created_at": "2026-07-15T09:05:00+00:00"
          }
        ],
        "created_at": "2026-01-15T09:05:00+00:00",
        "updated_at": "2026-07-15T09:05:00+00:00"
      }
    ],
    "entitlements": [
      {
        "id": 850,
        "user_id": 501,
        "entitlement_id": 1,
        "entitlement": {
          "id": 1,
          "code": "beta_access",
          "name": "Beta Access",
          "metadata": null,
          "is_active": true,
          "created_at": "2026-01-10T09:00:00+00:00",
          "updated_at": "2026-01-10T09:00:00+00:00"
        },
        "source_subscription_item_id": 601,
        "starts_at": "2026-07-15T00:00:00+00:00",
        "ends_at": "2026-08-15T00:00:00+00:00",
        "status": "active",
        "created_at": "2026-07-15T09:05:00+00:00",
        "is_unlimited": false
      },
      {
        "id": 851,
        "user_id": 501,
        "entitlement_id": 2,
        "entitlement": {
          "id": 2,
          "code": "elevenlabs_tts",
          "name": "entitlement.name.elevenlabs_tts",
          "metadata": null,
          "is_active": true,
          "created_at": "2026-01-10T09:00:00+00:00",
          "updated_at": "2026-01-10T09:00:00+00:00"
        },
        "source_subscription_item_id": 601,
        "starts_at": "2026-07-15T00:00:00+00:00",
        "ends_at": "2026-08-15T00:00:00+00:00",
        "status": "active",
        "created_at": "2026-07-15T09:05:00+00:00",
        "is_unlimited": false
      }
    ],
    "usage": [
      {
        "limit_id": 10,
        "service_id": 1,
        "service_code": "sfx",
        "service_name": "Sound Effects",
        "entitlement_id": null,
        "entitlement_code": null,
        "limit_type": "hourly",
        "limit_value": 100,
        "used": 0,
        "remaining": 100,
        "period_start": null,
        "period_end": null,
        "resets_in": null,
        "token_unlimited": false
      },
      {
        "limit_id": 11,
        "service_id": 2,
        "service_code": "music",
        "service_name": "Music Generation",
        "entitlement_id": null,
        "entitlement_code": null,
        "limit_type": "hourly",
        "limit_value": 100,
        "used": 0,
        "remaining": 100,
        "period_start": null,
        "period_end": null,
        "resets_in": null,
        "token_unlimited": false
      },
      {
        "limit_id": 12,
        "service_id": 3,
        "service_code": "elevenlabs",
        "service_name": "ElevenLabs TTS",
        "entitlement_id": 2,
        "entitlement_code": "elevenlabs_tts",
        "limit_type": "monthly",
        "limit_value": 500000,
        "used": 128400,
        "remaining": 371600,
        "period_start": "2026-07-01T00:00:00+00:00",
        "period_end": "2026-08-01T00:00:00+00:00",
        "resets_in": "2 weeks from now",
        "token_unlimited": false
      }
    ]
  }
}
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

Profile of the key owner. The six fields below always come back; anything else is added by the include parameter and is not part of the schema — each section mirrors the shape of the corresponding profile endpoint:

include valueWhat it adds
subscriptionsThe same payload as GET /subscriptions
usageThe same payload as GET /usage
entitlementsCapabilities of the active plan
walletsWallets and LMC balances
order_settingsSaved order-creation preferences
telegramTelegram link
referralReferral code and statistics
unread_notifications_countNumber of unread notifications
object
idrequired

ID of the account that owns the key.

integer
emailrequired

Account e-mail address.

string
lang_coderequired

Account language, ISO-639-1. It determines the language of message and of translatable names.

string
has_telegramrequired

Whether Telegram is linked. Details of the link come with ?include=telegram.

boolean
created_atrequired

When the account was registered, ISO 8601.

string
updated_atrequired

When the profile last changed, ISO 8601.

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
successrequired

Always false in error responses.

boolean
messagerequired

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

string
422

Validation error. Offending fields are listed in errors.

Analyse this response
Body example
{
  "message": "string",
  "errors": {}
}
Response fields
messagerequired

Errors overview.

string
errorsrequired

A detailed description of each field that failed validation.

object
*optional
claves arbitrarias
array<string>

Feed this page to an AI

Open .mdllm.md

spec 0.0.1