İçeriğe geç

Bakiye ve olaylar

Yetki billing:read. Bakiye yükleme kişisel panelde yapılır.

{
"balance": "124.30",
"currency": "USD"
}

Yetki billing:read. Parametreler: offset, limit, type.

Sıralama sabittir ve ayarlanamaz: en yeniler üstte, created_at değerine göre, eşitlikte id değerine göre. Sıralama parametresi yoktur.

type: deposit, purchase, refund, commission, bonus - her birinin anlamı için Bakiye yükleme ve bonuslar sayfasına bakın.

external_reference - hareketi doğuran dış olaydır, işlem kimliği değildir (kimlik id alanıdır).

promo_code, bonus türündeki satırlarda doludur - bonusun verildiği koddur. Diğer türlerde null olur.

GET /api/v1/events, yetki events:read. ?after=<id> noktasından ileriye doğru okunur, eskiler üstte. Parametreler: after, limit, type.

{
"events": [
{
"id": 881,
"type": "order.completed",
"occurred_at": "2026-08-28T12:00:04+00:00",
"order_id": 128,
"package_id": 42,
"data": {
"family": "traffic_gateway",
"client_reference": "deal-8891"
}
},
{
"id": 882,
"type": "package.traffic_low",
"occurred_at": "2026-08-28T18:31:00+00:00",
"order_id": 128,
"package_id": 42,
"data": {
"purchased_gb": "35.000",
"left_gb": "3.410"
}
}
],
"next_after": 882
}
TürNe zamandata
order.provisioningsipariş sağlamaya gönderildifamily, client_reference
order.completedsağlama tamamlandı; adres uzatmada da gelirfamily, client_reference
order.failedsipariş gerçekleşmedi+ refunded
order.refundedpara iade edildi+ refunded
package.traffic_lowkalan miktar %10’un altına düştüpurchased_gb, left_gb
package.traffic_exhaustedhacim tükendipurchased_gb, left_gb
package.expiredsabit adres paketinin süresi doldu, adresler yanıt vermiyorexpired_at, cut_off (true - parola devre dışı, uzatma yeni bir parola verir)
topup.creditedyükleme hesaba geçtiamount, external_reference
api_key.revokedanahtar iptal edildiapi_key_id, name

package.* olaylarında order_id alanı, paketin satın alındığı sipariştir.

  • Teslimat at-least-once: id ile tekilleştirin.
  • next_after - sonraki istek için konum; null, yeni olay olmadığı anlamına gelir.
  • Boş events, günlüğe yetiştiğiniz anlamına gelir.
  • Olaylar 30 gün saklanır.
after = load_position()
while True:
params = {"limit": 200} | ({"after": after} if after else {})
body = session.get(f"{BASE}/api/v1/events", params=params, headers=AUTH).json()
for event in body["events"]:
if not already_handled(event["id"]):
handle(event)
mark_handled(event["id"])
if body["next_after"] is not None:
after = body["next_after"]
save_position(after)
if not body["events"]:
sleep(15)

Teslimat yalnızca günlüğün sorgulanmasıyla yapılır.