Описание
Метод для получения текущего баланса Telegram Stars бота. Не требует параметров. При успехе возвращает объект StarAmount.
Примеры
php
<?php
$botToken = 'YOUR_BOT_TOKEN';
$apiUrl = "https://api.telegram.org/bot{$botToken}/getMyStarBalance";
try {
$response = file_get_contents($apiUrl);
$data = json_decode($response, true);
if ($data['ok']) {
$starAmount = $data['result'];
echo "Star balance: " . $starAmount['star_count'] . "\n";
echo "Balance type: " . $starAmount['type'] . "\n";
} else {
echo "Error: " . $data['description'] . "\n";
}
} catch (Exception $e) {
echo "Request failed: " . $e->getMessage() . "\n";
}
// Альтернативный вариант с cURL
function getMyStarBalance($botToken) {
$url = "https://api.telegram.org/bot{$botToken}/getMyStarBalance";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if (curl_errno($ch)) {
throw new Exception('cURL error: ' . curl_error($ch));
}
curl_close($ch);
if ($httpCode !== 200) {
throw new Exception("HTTP error: {$httpCode}");
}
$data = json_decode($response, true);
if (!$data['ok']) {
throw new Exception("API error: {$data['description']}");
}
return $data['result']; // Возвращает объект StarAmount
}
// Использование функции
try {
$balance = getMyStarBalance('YOUR_BOT_TOKEN');
print_r($balance);
} catch (Exception $e) {
echo "Error: " . $e->getMessage() . "\n";
}
?>
python
import requests
def get_my_star_balance(bot_token):
"""
Получает текущий баланс Telegram Stars бота
Args:
bot_token (str): Токен вашего бота
Returns:
dict: Ответ от Telegram API в формате JSON
"""
url = f"https://api.telegram.org/bot{bot_token}/getMyStarBalance"
try:
response = requests.get(url)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
print(f"Ошибка при запросе: {e}")
return None
# Пример использования
if __name__ == "__main__":
# Замените 'YOUR_BOT_TOKEN' на реальный токен вашего бота
BOT_TOKEN = "YOUR_BOT_TOKEN"
result = get_my_star_balance(BOT_TOKEN)
if result and result.get("ok"):
star_amount = result.get("result")
print(f"Баланс Stars: {star_amount.get('star_count')}")
print(f"Полный ответ: {star_amount}")
else:
print(f"Ошибка: {result}")
История изменений
- API 9.1. Добавлен метод getMyStarBalance
Дополнительно
- StarAmount - Объект для представления количества Telegram Stars с поддержкой дробных значений.