API Hujjatlar

Swagger UI ↗

StarsPaymee REST API v1 — barcha endpointlar, so'rov formatlari va javob misollari. Base URL: https://api.starstg.uz/api/purchase/v1

Autentifikatsiya

Har bir so'rovda API kalitingizni quyidagi usullardan biri bilan yuboring:

# Header orqali
X-API-Key: sj_your_api_key
# Bearer token
Authorization: Bearer sj_your_api_key
ℹ️

API kalitingiz — USDT hamyoningiz. Balansni to'ldirish orqali kerakli summa yuklanadi va har buyurtmada avtomatik ayiriladi.

Endpointlar

GEThttps://api.starstg.uz/api/purchase/v1/healthHealth

API va Fragment holati

Javob (200 OK)
{
  "success": true,
  "fragment_ready": true,
  "api_configured": true,
  "version": "1.0.0"
}
GEThttps://api.starstg.uz/api/purchase/v1/balanceHealth🔑 Auth

USDT balansni ko'rish

Javob (200 OK)
{
  "success": true,
  "balance_usdt": 28.50,
  "currency": "USDT"
}
GEThttps://api.starstg.uz/api/purchase/v1/pricingHealth🔑 Auth

Joriy narxlar

Javob (200 OK)
{
  "success": true,
  "stars": {
    "min": 50, "max": 10000,
    "usdt_per_star": 0.015
  },
  "premium": {
    "months": [3, 6, 12],
    "usdt": { "3": 12, "6": 16, "12": 29 }
  }
}
POSThttps://api.starstg.uz/api/purchase/v1/searchSearch🔑 Auth

Recipient profil qidirish

Faqat ma'lumot tekshiruvi — pul yechilmaydi. Stars, premium yoki ads sotib olishdan oldin username'ni tekshirish uchun ishlatiladi.

So'rov (Request Body)
{
  "product_type": "stars",
  "query": "durov",
  "quantity": "500"
}
Javob (200 OK)
{
  "success": true,
  "found": {
    "myself": false,
    "name": "Pavel Durov",
    "photo": "https://cdn.example.com/photo.jpg",
    "recipient": "durov"
  }
}
POSThttps://api.starstg.uz/api/purchase/v1/starsStars🔑 Auth

Telegram Stars yuborish

So'rov (Request Body)
{
  "username": "durov",
  "stars": 500,
  "idempotency_key": "order-uuid-12345"
}
Javob (200 OK)
{
  "success": true,
  "order_id": 42,
  "product_type": "stars",
  "username": "durov",
  "stars": 500,
  "usdt_charged": 7.50,
  "status": "completed",
  "transaction_id": "abcdef123456",
  "balance_remaining_usdt": 21.00,
  "created_at": "2025-01-01T12:00:00Z"
}
POSThttps://api.starstg.uz/api/purchase/v1/premiumPremium🔑 Auth

Telegram Premium yuborish

So'rov (Request Body)
{
  "username": "durov",
  "months": 3,
  "idempotency_key": "prem-uuid-99"
}
Javob (200 OK)
{
  "success": true,
  "order_id": 43,
  "product_type": "premium",
  "username": "durov",
  "months": 3,
  "usdt_charged": 12.00,
  "status": "completed",
  "transaction_id": "xyz789...",
  "balance_remaining_usdt": 9.00,
  "created_at": "2025-01-01T12:01:00Z"
}
GEThttps://api.starstg.uz/api/purchase/v1/orders/{order_id}Orders🔑 Auth

Buyurtma holatini ko'rish

Javob (200 OK)
{
  "success": true,
  "order_id": 42,
  "status": "completed",
  "product_type": "stars",
  "username": "durov",
  "stars": 500,
  "usdt_charged": 7.50,
  "transaction_id": "abcdef123456",
  "created_at": "2025-01-01T12:00:00Z",
  "completed_at": "2025-01-01T12:00:02Z"
}

Xato kodlar

HTTP KodMa'no
400Validatsiya xatosi (noto'g'ri maydon)
401API kalit yo'q yoki noto'g'ri
402USDT balans yetarli emas
403API kalit bloklangan
404Recipient yoki buyurtma topilmadi
429Rate limit: 60 so'rov/daqiqa
502Fragment xatosi (balans qaytariladi)
503Fragment sozlanmagan

💡 Idempotency qanday ishlaydi?

So'rovda idempotency_key bersangiz, tarmoq uzilishida qayta yuborsa ham pul ikki marta yechilmaydi. Bir xil kalit bilan qayta so'rov yuborsangiz, avvalgi natija qaytariladi. Har buyurtmaga unikal UUID ishlating (masalan, crypto.randomUUID()).

Kod misollari

Node.js / TypeScript
const res = await fetch(
  "https://api.starstg.uz/api/purchase/v1/stars",
  {
    method: "POST",
    headers: {
      "X-API-Key": process.env.STARSPAYMEE_API_KEY!,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      username: "durov",
      stars: 500,
      idempotency_key: crypto.randomUUID(),
    }),
  }
);

const data = await res.json();
if (data.success) {
  console.log("Stars yetkazildi! tx:", data.transaction_id);
}
Python
import httpx, uuid

response = httpx.post(
    "https://api.starstg.uz/api/purchase/v1/stars",
    headers={"X-API-Key": "sj_your_key"},
    json={
        "username": "durov",
        "stars": 500,
        "idempotency_key": str(uuid.uuid4()),
    },
)

data = response.json()
if data["success"]:
    print("Stars yetkazildi! tx:", data["transaction_id"])
cURL
curl -X POST https://api.starstg.uz/api/purchase/v1/stars \
  -H "X-API-Key: sj_your_key" \
  -H "Content-Type: application/json" \
  -d '{"username":"durov","stars":500,"idempotency_key":"abc-123"}'
📋

Barcha endpointlarni Swagger UI da sinang

Interaktiv API explorer — hujjat o'qib o'tirmay to'g'ridan-to'g'ri sinab ko'ring.

Swagger UI ni ochish ↗