API Platform — Dasturchilar Hujjatlari
API Platform orqali Telegram Stars, Telegram Premium xizmatlarini to'g'ridan-to'g'ri o'z botlaringiz, ilovalaringiz yoki saytlaringizga integratsiya qilishingiz mumkin.
Asosiy API Manzili (Base URL)
https://api.tillayevdev.uz/api/v1
Barcha so'rovlar HTTPS protokoli orqali va application/json formatida yuboriladi.
Autentifikatsiya (X-API-Key)
API so'rovlarini yuborish uchun Dashboard / API Kalitlar bo'limida shaxsiy kalitingizni yarating. Har bir so'rov sarlavhasida (Header) kalitni taqdim etishingiz shart:
X-API-Key: ik_your_api_key_here Content-Type: application/json
1. Telegram Stars Narxini Hisoblash
POST /api/v1/stars/pricing
Berilgan miqdordagi Telegram Stars narxini real vaqtda so'mda hisoblab beradi.
So'rov Tanasi (JSON Body):
{
"amount": 100
}
Muvaffaqiyatli Javob (200 OK):
{
"ok": true,
"result": {
"amount": 100,
"price": {
"currency": "UZS",
"provider_cost": 25000,
"service_fee": 1250,
"total": 26250
}
}
}
2. Telegram Stars Yuborish / Sotib Olish
POST /api/v1/stars/buy
Ko'rsatilgan Telegram foydalanuvchisiga Stars yuboradi va hisobingizdan mablag' yechadi.
| Parametr | Turi | Majburiymi? | Tavsif |
|---|---|---|---|
username |
string | Ha | Qabul qiluvchining Telegram username'i (@ siz) |
amount |
integer | Ha | Yuboriladigan Stars miqdori (masalan: 50) |
idempotency_key |
string | Ha | Takroriy so'rovlarni oldini oluvchi unikal kalit |
So'rov Tanasi:
{
"username": "durov",
"amount": 50,
"idempotency_key": "order_stars_unique_001"
}
Muvaffaqiyatli Javob (200 OK):
{
"ok": true,
"message": "Buyurtma qabul qilindi.",
"result": {
"order_id": "ord_a1b2c3d4e5f6",
"status": "completed",
"amount": 50,
"cost": 13125,
"currency": "UZS",
"recipient": "durov"
}
}
5. Buyurtma Holatini Tekshirish
POST /api/v1/orders/get
Buyurtma ID orqali buyurtmaning joriy holatini tekshirish.
So'rov Tanasi:
{
"order_id": "ord_a1b2c3d4e5f6"
}
6. Balansni Tekshirish
GET /api/v1/balance
API kalit egasining joriy mavjud balansini qaytaradi.
Muvaffaqiyatli Javob (200 OK):
{
"ok": true,
"result": {
"balance": 150000,
"reserved": 0,
"available": 150000,
"currency": "UZS"
}
}
Dasturlash Tillarida Tayyor Kod Misollari
PHP (cURL):
<?php
$apiKey = "ik_your_api_key_here";
$url = "https://api.tillayevdev.uz/api/v1/stars/buy";
$data = [
"username" => "durov",
"amount" => 50,
"idempotency_key" => uniqid("ord_")
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"X-API-Key: " . $apiKey
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
print_r($result);
?>
Python (requests):
import requests
url = "https://api.tillayevdev.uz/api/v1/stars/buy"
headers = {
"X-API-Key": "ik_your_api_key_here",
"Content-Type": "application/json"
}
payload = {
"username": "durov",
"amount": 50,
"idempotency_key": "unique_key_123"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
Node.js (Axios):
const axios = require('axios');
async function buyStars() {
const res = await axios.post('https://api.tillayevdev.uz/api/v1/stars/buy', {
username: 'durov',
amount: 50,
idempotency_key: 'unique_key_123'
}, {
headers: {
'X-API-Key': 'ik_your_api_key_here',
'Content-Type': 'application/json'
}
});
console.log(res.data);
}
buyStars();
Xatolik Kodlari (Error Codes)
| HTTP Status | Xatolik Kodi | Tavsif |
|---|---|---|
401 |
INVALID_API_KEY |
API kalit kiritilmagan yoki yaroqsiz |
403 |
INSUFFICIENT_BALANCE |
Hisobingizda mablag' yetarli emas |
400 |
INVALID_PARAMETERS |
Kiritilgan parametrlar (username, miqdor) noto'g'ri |
404 |
USER_NOT_FOUND |
Telegram foydalanuvchisi topilmadi |
429 |
RATE_LIMIT_EXCEEDED |
Daqiqalik so'rovlar limiti oshib ketdi |