gamification.balance.set

Scope: gamification

Кто может вызывать: Только admin или manager. Подробнее: Права доступа

Ручная корректировка баланса пользователя (начисление или списание).

HTTP: POST

Побочные эффекты: создаётся транзакция в истории баланса; при наличии настроек — отправляется уведомление.

Параметры метода

Параметр Тип Обяз. Описание
userId int да ID пользователя
amount float да Сумма операции
currency string да Валюта: BAL или THX
operationType string нет Тип операции: accrual (начисление, по умолчанию) или debit (списание)
description string нет Описание операции (псевдоним: notes)
message string нет Сопроводительное сообщение

Возвращаемые данные

result.result — объект с обновлёнными балансами пользователя (аналогично balance.get).

Обработка ошибок

Справочник кодов ошибок.

Код Описание
UNAUTHORIZED Пользователь не авторизован
ACCESS_DENIED Вызывающий не является admin/manager
VALIDATION_ERROR Отсутствует обязательный параметр (userId, amount, currency)
USER_NOT_FOUND Пользователь с указанным userId не найден
INVALID_CURRENCY Неизвестная валюта
INSUFFICIENT_BALANCE Недостаточно баланса для списания

Пример запроса (POST)

curl -X POST "https://{портал}/rest/{user_id}/{webhook_code}/gamification.balance.set.json" \
          -H "Content-Type: application/json" \
          -d '{
            "userId": 42,
            "amount": 500,
            "currency": "BAL",
            "operationType": "accrual",
            "description": "Ручная корректировка"
          }'
        

Пример ответа:

{
          "result": {
            "result": {
              "BAL": 1750,
              "THX": 30
            },
            "total": null,
            "next": null,
            "error": null
          }
        }
        
Предыдущая
Следующая