Sipariş Yaşam Döngüsü
Bir VPS siparişi oluşturmaktan servisin aktif hale gelmesine kadar geçen akış asenkrondur: sipariş anında oluşur, gerçek VPS kurulumu arka planda tamamlanır.
1. Sipariş Oluşturma — POST /orders
Idempotency-Key zorunludur (çift sipariş koruması).
curl -X POST https://api.rabisu.com/api/v1/orders \
-u "rsk_live_xxx:rsks_yyy" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 9f1c2d3e-4b5a-6c7d-8e9f-0a1b2c3d4e5f" \
-d '{
"product_id": 101,
"period": "monthly",
"config_options": { "12": 3, "15": 1 },
"extra": { "domain": "vps01.musteri.com" }
}'
Yanıt (202 Accepted) bir provizyon kaydı döner. id alanı bayi tarafındaki
korelasyon anahtarınızdır (yerel kaydınızda saklayın):
{
"success": true,
"data": {
"id": 5001,
"status": "pending_provision",
"order_id": 88123,
"service_id": null,
"payment_applied": true
},
"meta": { "trace_id": "...", "timestamp": "..." }
}
2. Kredi Uygulama (auto_apply_credit)
Sipariş oluşturulunca fatura kesilir. auto_apply_credit bayrağınıza göre:
- Açık (varsayılan): Fatura otomatik olarak bayi kredinizden ödenir. Yeterli
kredi varsa provizyon kuyruğa girer (
pending_provision). - Kapalı: Kredi uygulanmaz, sipariş
pending_paymentkalır. Ödemeyi sonra manuel olarak yaparsınız (bkz. adım 4). Bu, kurulum öncesi inceleme penceresi sağlar (fraud/hostname kontrolü vb.).
Kredi yetersizse insufficient_credit bilgisi döner ve sipariş pending_payment
durumunda bekler.
3. Provizyon Durumu — GET /orders/{id}
VPS kurulumu tamamlanınca service_id atanır ve durum active olur. Durumu
sorgulayın:
curl -u "rsk_live_xxx:rsks_yyy" \
https://api.rabisu.com/api/v1/orders/5001
Provizyon durumları:
| Durum | Anlamı |
|---|---|
pending_payment | Ödeme bekleniyor (kredi uygulanmadı) |
pending_provision | Ödeme tamam, VPS kurulumu kuyrukta |
active | VPS kuruldu, service_id atandı |
failed | Provizyon başarısız |
İpucu: Sürekli polling yerine Webhooks kullanın —
service.createdolayı VPS hazır olduğunda anında bildirilir.
4. Bekleyen Ödemeyi Tahsil Etme — POST /orders/{id}/settle
Sipariş pending_payment durumundaysa (kredi yetersizdi veya auto-apply kapalıydı),
bakiye yükledikten sonra ödemeyi tetikleyin:
curl -X POST https://api.rabisu.com/api/v1/orders/5001/settle \
-u "rsk_live_xxx:rsks_yyy"
Bu uç nokta doğal olarak idempotenttir: zaten ödenmiş bir sipariş already_applied
ile no-op döner. Başarılı tahsil sonrası provizyon kuyruğa girer.
5. Servisi Yönetme
Servis active olduktan sonra servis uç noktalarını kullanabilirsiniz:
GET /services/{id}— özet (IP, hostname, durum)GET /services/{id}/status— anlık CPU/RAM/diskPOST /services/{id}/power/{action}— start/stop/restart/poweroffPOST /services/{id}/rebuild— işletim sistemi yeniden kurulumuPOST /services/{id}/upgrade— kaynak yükseltme (prorata fark faturası)POST /services/{id}/suspend·/unsuspend— askıya al / kaldırDELETE /services/{id}— iptal (disk silinir,Idempotency-Keyzorunlu)
Tüm alan detayları için OpenAPI referansına bakın.