editUserStarSubscription
Cancels or renews a Telegram Stars subscription.
Returns: On success, returns True.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
user_id | Integer | Yes | User ID |
telegram_payment_charge_id | String | Yes | Telegram payment ID |
is_canceled | Boolean | Yes | true = cancel subscription extension, false = allow extension |
Example request
curl
curl -s -X POST "https://api.telegram.org/bot$TOKEN/editUserStarSubscription" \
-H "Content-Type: application/json" \
-d '{
"user_id": 123456789,
"telegram_payment_charge_id": "CHARGE_ID",
"is_canceled": true
}'
Python
import requests
TOKEN = "123456789:AAEexampleTokenReplaceWithYours"
resp = requests.post(
f"https://api.telegram.org/bot{TOKEN}/editUserStarSubscription",
json={
"user_id": 123456789,
"telegram_payment_charge_id": "CHARGE_ID",
"is_canceled": True
},
timeout=30,
)
print(resp.json())
JavaScript
const TOKEN = "123456789:AAEexampleTokenReplaceWithYours";
const res = await fetch(`https://api.telegram.org/bot${TOKEN}/editUserStarSubscription`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"user_id": 123456789,
"telegram_payment_charge_id": "CHARGE_ID",
"is_canceled": true
}),
});
console.log(await res.json());
Step-by-step guide: How to Create a Telegram Bot: Step by Step with BotFather and Python
Related methods
sendInvoiceSends an invoice for payment.createInvoiceLinkCreates a payment link.refundStarPaymentRefunds a Telegram Stars payment.sendGiftSends a gift to a user or chat.getMyStarBalanceReturns the bot's Telegram Stars balance.getStarTransactionsReturns bot's Telegram Stars transactions.giftPremiumSubscriptionGifts a Telegram Premium subscription.answerShippingQueryAnswers a shipping query.answerPreCheckoutQueryAnswers a pre-checkout query.getAvailableGiftsReturns available gifts the bot can send.getUserGiftsReturns user's gifts.getChatGiftsReturns chat's gifts.