Подключите AITUNNEL к популярным инструментам разработки и автоматизации.

DeepSeek HarnessАгентный харнесс DeepSeek с рабочими пространствами и плагинами — модели через AITUNNEL
Claude CodeТерминальный агент Anthropic — правит код, запускает команды и git-операции через AITUNNEL
Codex CLICodex CLIOpen-source агент OpenAI в терминале — правки кода, ревью и автоматизация задач
Cursor IDEAI-редактор на VS Code с автодополнением Tab, агентом Composer и моделями через AITUNNEL
Qwen CodeCLI-агент для Qwen3-Coder — навигация по проекту, сборка фич и правки через AITUNNEL
OpenCodeОткрытый агент для терминала и IDE с поддержкой 75+ LLM-провайдеров
n8nВизуальная автоматизация с AI-агентами, RAG и интеграциями — модели через AITUNNEL
ClineAI-агент для VS Code — правки файлов, команды в терминале и браузер с подтверждением шагов
OpenClawAI-агент для Telegram, Discord и Slack — модели через один API-ключ AITUNNEL
Все инструменты

История баланса

Пополнения с бонусами, возвраты, реферальные начисления, награды, промокоды и корректировки — всё, что меняло баланс, кроме расходов на запросы.

Адрес
Авторизация
Ключ управления с правом billing:read

Расходов на запросы здесь нет: они в расходе и запросах. Текущий баланс — GET /aitunnel/balance. API-ключ историю не читает: об остатке денег он знает только баланс.

Методы

МетодПравоЧто делает
GET /balance/historybilling:readВсё, что меняло баланс, кроме расходов на запросы
GET /referralsbilling:readРеферальная ссылка, ставка и сколько она принесла
GET /referrals/earningsbilling:readРеферальные начисления, новые первыми

Как вызвать

curl "https://api.aitunnel.ru/v1/aitunnel/balance/history?type=topup&from=2026-11-01&to=2026-11-14&timezone=Europe/Moscow" \
  -H "Authorization: Bearer sk-aitunnel-mgmt-xxx"

Параметры

Все необязательные. Без параметров — вся история, новые операции первыми.

ПараметрСмысл
typetopup — пополнение, refund — возврат, referral — реферальное начисление, reward — награда за задание, promo — промокод, adjustment — корректировка поддержки
statusdone — проведена, pending — платёж ждёт оплаты или возврат в пути, unpaid — платёж отклонён или истёк
methodЧем оплачено: card, sbp, tpay, company, crypto, foreign, manual. Оставляет только платежи и возвраты по ним
from, toПериод: даты YYYY-MM-DD, целые сутки в timezone, обе включительно
timezoneЧасовой пояс IANA для from и to, по умолчанию UTC
payment_idНомер платежа: сам платёж и возвраты по нему
qПоиск по названию и ИНН организации-плательщика, последним цифрам карты и комментарию к операции. До 100 символов
limitОт 1 до 100, по умолчанию 30
cursornext_cursor предыдущей страницы

Ответ

JSON
{
  "data": [
    {
      "id": "p:418205731",
      "type": "topup",
      "status": "done",
      "occurred_at": "2026-11-14T13:17:42.000Z",
      "amount": 2150,
      "balance_after": 3150.4,
      "payment": {
        "id": 418205731,
        "status": "succeeded",
        "provider": "tbank",
        "source": "checkout",
        "amount": 2000,
        "bonus_amount": 150,
        "refunded_amount": 0,
        "card_pan": "430000******0777",
        "payment_url": "https://securepay.tinkoff.ru/new/AbCdEf12",
        "payer_name": null,
        "payer_inn": null,
        "created_at": "2026-11-14T13:16:00.000Z",
        "paid_at": "2026-11-14T13:17:42.000Z",
        "receipt_url": null
      }
    },
    {
      "id": "p:417990112",
      "type": "topup",
      "status": "unpaid",
      "occurred_at": "2026-11-03T08:40:15.000Z",
      "amount": 0,
      "balance_after": null,
      "payment": {
        "id": 417990112,
        "status": "failed",
        "provider": "tbank",
        "source": "checkout",
        "amount": 700,
        "bonus_amount": 0,
        "refunded_amount": 0,
        "card_pan": null,
        "payment_url": null,
        "payer_name": null,
        "payer_inn": null,
        "created_at": "2026-11-03T08:40:15.000Z",
        "paid_at": null,
        "receipt_url": null
      }
    }
  ],
  "next_cursor": null
}
ПолеСмысл
idНе меняется между страницами: p: и номер платежа, r: и номер возврата, l: и номер записи
type, statusКак в фильтрах выше
occurred_atКогда операция прошла
amountНа сколько изменился баланс, ₽, со знаком. У пополнения — сумма вместе с бонусом. 0 у неоплаченного платежа
balance_afterБаланс сразу после операции, ₽. null, если он не записан
paymentУ пополнения: платёж целиком
refundУ возврата: id, amount — сколько вернули, bonus_deducted — сколько бонуса снято вместе с ним, status, payment_id и payment_amount — какой платёж возвращён, receipt_url
referralУ реферального начисления: from_user — чья оплата его принесла, маской; payment_amount — сумма той оплаты
noteУ начислений без платежа: промокод, задание или комментарий поддержки. Может быть null
  • Одна операция — одна строка: платёж вместе со своим бонусом, возврат или отдельное начисление.
  • Неоплаченные платежи тоже здесь, с amount 0. Если у платежа есть payment.payment_url, по нему ещё можно заплатить.
  • next_cursor — передайте его в cursor, чтобы получить следующую страницу. null — страница последняя.

Рефералы

GET /referrals — сводка реферальной программы аккаунта:

curl https://api.aitunnel.ru/v1/aitunnel/referrals \
  -H "Authorization: Bearer sk-aitunnel-mgmt-xxx"
JSON
{
  "link": "https://aitunnel.ru/?r=123",
  "rate": 0.1,
  "total_referred": 3,
  "total_earned": 180.5,
  "has_referrer": false,
  "recent": [
    {
      "user": "ve***@example.com",
      "earned": 30,
      "joined_at": "2026-11-10T07:21:09.000Z"
    },
    {
      "user": "an***@example.com",
      "earned": 150.5,
      "joined_at": "2026-10-02T16:05:44.000Z"
    }
  ]
}
ПолеСмысл
linkСсылка-приглашение
rateДоля платежа приглашённого, которую получает пригласивший: 0.1 — 10%. Бонус к платежу не считается
total_referredСколько аккаунтов пришло по ссылке
total_earnedСколько они принесли за всё время, ₽
has_referrertrue, если сам аккаунт зарегистрирован по чьему-то приглашению
recentДо 10 последних приглашённых: user — почта маской, earned — сколько принёс, joined_at — когда зарегистрировался

GET /referrals/earnings — каждое начисление отдельно, новые первыми. Параметры limit (от 1 до 100, по умолчанию 30) и cursor:

JSON
{
  "data": [
    {
      "id": 5120,
      "amount": 50.5,
      "from_user": "an***@example.com",
      "payment_amount": 505,
      "created_at": "2026-11-12T10:14:03.000Z"
    }
  ],
  "next_cursor": null
}

amount — сколько начислено, ₽; payment_amount — сумма платежа, с которого оно начислено; from_user — приглашённый, маской. Те же начисления видны в истории баланса с типом referral.

Ошибки

СтатусСмысл
400invalid_request — неверный параметр: значение фильтра, дата, пояс, limit или cursor. В error.metadata.fields — каждый параметр с объяснением
401authentication_failed — ключа нет, он неверный, отозван или истёк
403permission_denied — у ключа нет нужного права, IP не в списке разрешённых или метод вызван API-ключом