Skip to content
Lumean

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

List Wallets

The key owner's wallets: asset, available balance and funds locked against running orders. There may be several — one per asset.

Amounts are in the asset's minor units and come with its precision: the real value is amount / 10^precision. A display-ready *_formatted field sits next to each.

This endpoint exists only while the wallet feature is enabled; in the subscription-only model it is absent (404) and the remaining allowance is read from GET /subscriptions.

Required key permission: billing.read.

On this page(3)

Parameters

Los valores se escriben directamente en la línea de la solicitud y la URL se arma sola. Abajo están el tipo, la obligatoriedad y los valores permitidos de cada parámetro.

GEThttps://api.lumean.app/api/public/wallets
  • integerin queryoptional≥ 1

    Page number, starting at 1.

  • integerin queryoptional1..100

    Wallets per page. Defaults to 20; there are usually only a few, so this is rarely needed.

Possible responses

200

Success. The payload is in data.

Body example
{
  "success": true,
  "message": "string",
  "data": {
    "items": [
      {
        "id": 1,
        "user_id": 1,
        "asset_id": 1,
        "purpose": "string",
        "balance": 1,
        "locked_balance": 1,
        "balance_formatted": 1,
        "locked_balance_formatted": 1,
        "balance_converted": {
          "currency": "string",
          "amount": 1,
          "symbol": "string",
          "precision": 1
        },
        "asset": {
          "id": 1,
          "code": "string",
          "kind": null,
          "precision": 1,
          "name": null,
          "is_active": true,
          "is_default": true,
          "default_balance": 1,
          "deleted_at": "2026-07-17T12:34:56+00:00",
          "created_at": "2026-07-17T12:34:56+00:00",
          "updated_at": "2026-07-17T12:34:56+00:00"
        },
        "user": {
          "id": 1,
          "email": "string",
          "lang_code": "string",
          "timezone": "string",
          "display_currency": "string",
          "has_telegram": true,
          "created_at": "2026-07-17T12:34:56+00:00",
          "updated_at": "2026-07-17T12:34:56+00:00",
          "referral_code": "string",
          "referral": {
            "kind": null,
            "code": null,
            "program_id": null,
            "commission_rate": null
          },
          "preferred_domain": "string",
          "email_verified_at": "string",
          "is_admin": true,
          "is_beta_tester": true,
          "allowed_models": "string",
          "referrer_id": 1,
          "deleted_at": "2026-07-17T12:34:56+00:00",
          "blocked_at": "2026-07-17T12:34:56+00:00",
          "is_blocked": true,
          "tickets_banned_at": "string",
          "is_tickets_banned": true,
          "tickets_ban_reason": "string",
          "voice_clone_banned_at": "string",
          "is_voice_clone_banned": true,
          "voice_clone_ban_reason": "string",
          "is_super_admin": true,
          "admin_permissions": [
            null
          ],
          "admin_roles": [
            null
          ],
          "referrer": null,
          "referral_link": "string",
          "active_referral_program": null,
          "wallets": [
            null
          ],
          "telegram": null,
          "subscriptions": [
            null
          ],
          "order_settings": null,
          "entitlements": [
            null
          ]
        },
        "deleted_at": "2026-07-17T12:34:56+00:00",
        "created_at": "2026-07-17T12:34:56+00:00",
        "updated_at": "2026-07-17T12:34:56+00:00",
        "system_key": "string"
      }
    ],
    "current_page": 1,
    "last_page": 1,
    "per_page": 1,
    "total": 1
  }
}
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 response payload.

WalletListWalletList
itemsrequired

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

array<Wallet>Wallet
array item
idrequired

Wallet ID. Use it to filter the history: GET /ledger-transactions?wallet_id=.

integer
user_idrequired

ID of the wallet owner — always the key owner.

nullable
integer
asset_idrequired

ID of the asset the wallet is kept in; the asset itself is in asset.

nullable
integer
purposerequired

Wallet purpose: main is the main balance, referral holds referral earnings.

string
balancerequired

Balance in the asset’s minor units: amount = balance / 10^asset.precision. An integer, not a fraction.

integer
locked_balancerequired

Locked part of the balance in the asset’s minor units — reserved for orders in progress and payout requests, so it cannot be spent.

integer
balance_formattedoptional

Balance as a decimal number by asset.precision (balance / 10^precision), ready to display.

nullable
number
locked_balance_formattedoptional

Locked part of the balance as a decimal number by asset.precision.

nullable
number
balance_convertedrequired

Informational conversion of the balance into the account’s display currency. null for non-LUMC wallets and when no rate is available; use balance for calculations.

nullable
object
currencyrequired

Display currency code (ISO 4217).

string
amountrequired

Amount in the display currency, rounded to its precision.

number
symbolrequired

Currency symbol for display; null if the currency has none.

string
precisionrequired

Number of decimal places of the display currency.

integer
assetoptional

The wallet asset: code, kind and the precision that turns balance into an amount.

AssetAsset
idrequired

Internal identifier of the asset.

integer
coderequired

Asset code: LUMC is the internal currency, TOKEN the generation tokens.

string
kindrequired

Kind of asset: money or consumable units. It decides whether an amount counts as a payment or as quota consumption.

Valuesmoneyunit
AssetKindAssetKind
precisionrequired

Number of decimal places. The load-bearing field: every integer amount in this asset is divided by 10^precision to obtain the real value. Do not assume the divisor is 100.

integer
namerequired

Display name of the asset, in the account language.

string
deleted_atrequired

When the asset was retired, ISO 8601. null while it is in use.

nullabledate-time
string
created_atrequired

When the asset was created, ISO 8601.

nullabledate-time
string
updated_atrequired

When the asset last changed, ISO 8601.

nullabledate-time
string
deleted_atrequired

When the wallet was deleted; null for wallets in this list.

nullabledate-time
string
created_atrequired

When the wallet was created.

nullabledate-time
string
updated_atrequired

When the wallet last changed, balance included.

nullabledate-time
string
current_pagerequired

Current page number, starting from one.

integer
last_pagerequired

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

integer
per_pagerequired

Page size the server applied.

integer
totalrequired

Total number of records matching the filter.

integer
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
{
  "success": true,
  "message": "string",
  "errors": {}
}
Response fields
successrequired

Always false in error responses.

boolean
messagerequired

A summary of the validation errors in words, in the response language (X-Locale).

string
errorsrequired

A per-field breakdown: the key names a request field, the value lists the complaints about it.

object
*optional
claves arbitrarias
array<string>

Esta página para IA

Open .mdllm.md

versión de la API 1.0.0