Kullanıcıya Göre Token Yak
Belirli bir kullanıcıya ait token'ları yakın (imha edin). Bu işlem token'ları dolaşımdan kalıcı olarak kaldırır.
Endpoint
POST /v2/users/tokens/{token_id}/users/{user_id}/burn
Headers
| Header | Değer |
|---|---|
| Content-Type | application/json |
| Authorization | Bearer {token} |
Yol Parametreleri
| Parametre | Tip | Gerekli | Açıklama |
|---|---|---|---|
| token_id | string | Evet | Yakılacak token'ın benzersiz tanımlayıcısı |
| user_id | string | Evet | Token'ları yakılacak kullanıcının benzersiz tanımlayıcısı |
İstek Gövdesi
{
"quantity": "number",
"reason": "string"
}
Parametreler
| Parametre | Tip | Gerekli | Açıklama |
|---|---|---|---|
| quantity | number | Hayır | Yakılacak token sayısı. Belirtilmezse tüm kullanıcı token'ları yakılır |
| reason | string | Hayır | Token'ları yakma nedeni |
Yanıt
Yakma işleminin onayını döndürür.
Başarılı Yanıt (200 OK)
{
"success": true,
"message": "Token'lar başarıyla yakıldı",
"data": {
"token_id": "string",
"user_id": "string",
"burned_quantity": "number",
"remaining_quantity": "number",
"transaction_hash": "string",
"burned_at": "string"
}
}
Örnek
İstek
curl -X POST "\{\{baseUrl\}\}/v2/users/tokens/68aeb272d9336c619ce249f6/users/680c02896d91ca0145cfeb81/burn" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer \{\{token\}\}" \
-d '{
"quantity": 10,
"reason": "Kullanıcı token yakma talebinde bulundu"
}'
Yanıt
{
"success": true,
"message": "Token'lar başarıyla yakıldı",
"data": {
"token_id": "68aeb272d9336c619ce249f6",
"user_id": "680c02896d91ca0145cfeb81",
"burned_quantity": 10,
"remaining_quantity": 40,
"transaction_hash": "0x1234567890abcdef1234567890abcdef12345678",
"burned_at": "2024-01-15T14:30:00Z"
}
}
Hata Yanıtları
400 Bad Request
{
"error": "Geçersiz parametreler",
"details": "Miktar 0'dan büyük olmalı"
}
401 Unauthorized
{
"error": "Kimlik doğrulaması gerekli"
}
403 Forbidden
{
"error": "Erişim reddedildi",
"details": "Token yakma için yetersiz izin"
}
404 Not Found
{
"error": "Kaynak bulunamadı",
"details": "Token veya kullanıcı bulunamadı"
}
422 Unprocessable Entity
{
"error": "Yetersiz token bakiyesi",
"details": "Kullanıcının yakacak kadar token'ı yok"
}
500 Internal Server Error
{
"error": "İç sunucu hatası"
}
Önemli Notlar
- Geri Alınamaz İşlem: Token yakma kalıcıdır ve geri alınamaz
- Bakiye Kontrolü: Sistem, yakmadan önce kullanıcının yeterli token bakiyesine sahip olduğunu doğrular
- İşlem Kaydı: Tüm yakma işlemleri blockchain'de kaydedilir
- İzinler: Sadece yetkili kullanıcılar yakma işlemleri gerçekleştirebilir
- Denetim İzi: Tüm yakma işlemleri denetim amaçları için kaydedilir