StaticGramBot API

getMyTonBalanceПоддерживается

Синоним метода getMyGramBalance в StaticGram: тот же обработчик, параметры и ответ. Расширение StaticGram (в официальном Bot API его нет). Возвращает баланс бота в GRAM — внутренней валюте StaticGram, которую бот получает за оплаченные GRAM-счета (sendGramInvoice, createGramInvoiceLink, sendInvoice с currency "TON"). Аналог getMyStarBalance для GRAM. Синоним — getMyTonBalance. Returns an object with the bot balance in GRAM on success.

Особенности StaticGram

Метод StaticGram. Баланс — сумма оплаченных GRAM-счетов минус возвраты (refundGramPayment) и выводы (withdrawGramBalance). Баланс в звёздах — getMyStarBalance.

Параметры

Метод не принимает параметров.

Что возвращает

ПолеТипОписание
currencyStringВсегда "TON" (так GRAM обозначается в счетах и платежах).
amountIntegerБаланс в нанотонах (1 GRAM = 1000000000).
nanoton_amountIntegerТо же, что amount: баланс в нанотонах.
gram_amountStringБаланс в GRAM десятичной строкой без лишних нулей: "1.5", "0.01", "0".

Ошибки

Ошибка приходит как {"ok": false, "error_code": 400, "description": "Bad Request: КОД: пояснение"}, если не указано иное.

ОшибкаКогда
401 Unauthorizedневерный токен бота
501 METHOD_NOT_FOUNDGRAM-платежи на сервере отключены

Пример запроса

curl
curl "https://api.staticgram.top/bot$TOKEN/getMyTonBalance"
aiogram 3
from aiogram import Bot
from aiogram.client.session.aiohttp import AiohttpSession
from aiogram.client.telegram import TelegramAPIServer
from aiogram.methods.base import TelegramMethod

# Метода StaticGram нет в aiogram: описываем его сами, bot(...) отправит запрос как обычно.
class GetMyTonBalance(TelegramMethod[dict]):
    __returning__ = dict
    __api_method__ = "getMyTonBalance"

session = AiohttpSession(api=TelegramAPIServer.from_base("https://api.staticgram.top"))
bot = Bot(TOKEN, session=session)

balance = await bot(GetMyTonBalance())
print(balance["gram_amount"], balance["nanoton_amount"])  # "1.5" 1500000000
JavaScript
const res = await fetch(`https://api.staticgram.top/bot${TOKEN}/getMyTonBalance`);
const { result } = await res.json();
console.log(result.gram_amount); // "1.5"

Ответ (Object)

JSON
{
  "ok": true,
  "result": {
    "currency": "TON",
    "amount": 1500000000,
    "nanoton_amount": 1500000000,
    "gram_amount": "1.5"
  }
}

Описания методов и типов взяты из официальной документации Telegram Bot API (Bot API 10.3). Адрес API: https://api.staticgram.top