---
title: "GET /reseller/codes — List my gift codes"
url: https://lumean.app/developers/docs/api/get-reseller-codes
locale: ru
description: "List my gift codes"
generated: 2026-10-17
operationId: reseller.codes
method: GET
path: /reseller/codes
scopes: [reseller.read]
spec_version: 0.0.1
---

# GET /reseller/codes

**List my gift codes**

Коды, выпущенные владельцем ключа, новые первыми, С ПОЛНЫМ значением `code`. Фильтры `status`, `source`; страничная пагинация (`page`, `per_page` до 100). **Право:** `reseller.read`.

- Право ключа: `reseller.read`

## Запрос

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

## Параметры

| Поле | Где | Тип | Обяз. | Описание |
| --- | --- | --- | --- | --- |
| `page` | query | `integer` — ≥ 1 | — | Номер страницы, начиная с `1`. |
| `per_page` | query | `integer` — 1..100 | — | Сколько записей вернуть на странице. Метаданные пагинации лежат рядом с `items`: `current_page`, `last_page`, `per_page`, `total`. |
| `status` | query | `GiftCodeStatus` — `active` · `refunding` · `redeemed` · `refunded` · `cancelled` · `annulled` | — | Вернуть только коды в этом статусе. Неизвестное значение → `422`. |
| `source` | query | `GiftCodeSource` — `purchase` · `reseller` | — | Вернуть только коды этого источника: `reseller` — выпущенные вами со своего баланса, `purchase` — купленные вами как обычным покупателем. Неизвестное значение → `422`. |

## Тело запроса

Тела нет.

## Ответы

### 200 — `GiftCodeCollection`

**Поля ответа**

| Поле | Тип | Обяз. | Описание |
| --- | --- | --- | --- |
| `data` | `GiftCodeList` | обяз. | Полезная нагрузка ответа. |
| `data.items` | `array<GiftCode>` | обяз. | Записи текущей страницы в порядке сортировки списка. |
| `data.items[].uuid` | `string` | обяз. | UUID кода. Его подставляют в пути `GET /reseller/codes/{uuid}` и `POST /reseller/codes/{uuid}/cancel`. |
| `data.items[].code_masked` | `string` | обяз. | Код с маской, `LUM-****-****-XXXX`: его безопасно показывать в интерфейсе и писать в логи. |
| `data.items[].code` | `string` | — | ПОЛНОЕ значение кода — то, что вводит получатель при активации. Публичный API реселлера отдаёт его в списке, при показе и при выпуске. Обращайтесь как с секретом: кто знает код, тот его и активирует. |
| `data.items[].nominal` | `string` | обяз. | Номинал кода в минимальных единицах LMC: `real = nominal / 10^currency_asset.precision`. Столько LMC получит активатор. |
| `data.items[].nominal_formatted` | `number` | обяз. | Тот же номинал в целых LMC — число, готовое к показу. |
| `data.items[].cost` | `string` | — | Сколько код стоил реселлеру с учётом скидки, в минимальных единицах LMC. Приходит только у кодов реселлера (`source: reseller`). |
| `data.items[].cost_formatted` | `number` | — | Та же стоимость в целых LMC. Приходит только у кодов реселлера. |
| `data.items[].discount_bps` | `integer` | — | Скидка реселлера на момент выпуска, в базисных пунктах (`100` = 1%). Позднейшая смена личной скидки этот код не меняет. Приходит только у кодов реселлера. |
| `data.items[].source` | `string` | обяз. |  |
| `data.items[].funding` | `string` | обяз. |  |
| `data.items[].status` | `string` | обяз. |  |
| `data.items[].activatable_at` | `string` | обяз. | С какого момента код можно активировать: до него код заморожен. `null` — ограничения нет. |
| `data.items[].redeemed_at` | `string` | обяз. | Когда код активирован. `null`, пока не активирован. Кто его активировал, API не раскрывает. |
| `data.items[].cancelled_at` | `string` | обяз. | Когда реселлер отменил код. `null`, если код не отменялся. |
| `data.items[].created_at` | `string` | обяз. | Когда код выпущен. |
| `data.items[].currency_asset` | `object` | обяз. | Валюта сумм ответа — LMC. По `precision` суммы в минимальных единицах переводятся в целые LMC. |
| `data.items[].currency_asset.code` | `string` — `LUMC` | обяз. | Код актива, в котором выражены суммы. |
| `data.items[].currency_asset.precision` | `integer` | обяз. | Сколько знаков после запятой у LMC: `real = value / 10^precision`. |
| `data.current_page` | `integer` | обяз. | Номер текущей страницы, с единицы. |
| `data.last_page` | `integer` | обяз. | Номер последней страницы. Обход списка закончен, когда `current_page` равен `last_page`. |
| `data.per_page` | `integer` | обяз. | Размер страницы, применённый сервером. |
| `data.total` | `integer` | обяз. | Сколько записей всего по фильтру. |

**Пример**

```json
{
  "data": {
    "items": [
      {
        "uuid": "string",
        "code_masked": "string",
        "code": "string",
        "nominal": "string",
        "nominal_formatted": 1,
        "cost": "string",
        "cost_formatted": 1,
        "discount_bps": 1,
        "source": "string",
        "funding": "string",
        "status": "string",
        "activatable_at": "string",
        "redeemed_at": "string",
        "cancelled_at": "string",
        "created_at": "string",
        "currency_asset": {
          "code": "string",
          "precision": 1
        }
      }
    ],
    "current_page": 1,
    "last_page": 1,
    "per_page": 1,
    "total": 1
  }
}
```

### 422 — Ошибка валидации. Поля с ошибками перечислены в `errors`.

**Поля ответа**

| Поле | Тип | Обяз. | Описание |
| --- | --- | --- | --- |
| `message` | `string` | обяз. | Errors overview. |
| `errors` | `object` | обяз. | A detailed description of each field that failed validation. |
| `errors.*` | `array<string>` — произвольные ключи | — |  |

**Пример**

```json
{
  "message": "string",
  "errors": {}
}
```

---

- Эта же страница в браузере: https://lumean.app/developers/docs/api/get-reseller-codes
- Машинный справочник целиком: https://api.lumean.app/docs/llm.md
