خرابی کوڈز اور نگرانی
API خرابیوں کو سمجھیں اور سنبھالیں
خرابی کے ردعمل کی شکل
تمام خرابی کے ردعمل ایک یکساں شکل استعمال کرتے ہیں:
{
"error": {
"code": "ERROR_CODE",
"message": "انسانی قابل مطالعہ خرابی کا پیغام",
"details": "اضافی سیاق و سباق (اختیاری)"
}
} 💡 error.code کو مستحکم شرط کے طور پر استعمال کریں (خرابی کا پیغام بدل سکتا ہے)
HTTP حیثیت کوڈز
200 OK
درخواست کامیاب رہی
201 Created
وسائل کامیابی سے بنایا گیا
400 Bad Request
درخواست کے پیرامیٹرز غلط ہیں
{
"code": "INVALID_REQUEST",
"message": "درخواست کی شکل غلط ہے"
} 401 Unauthorized
تصدیق نہیں ہوئی یا API کلید غلط ہے
{
"code": "UNAUTHORIZED",
"message": "غلط یا ختم شدہ API کلید"
} 403 Forbidden
ناکافی اکاؤنٹ بیلنس یا اجازت نہیں
{
"code": "INSUFFICIENT_BALANCE",
"message": "ناکافی اکاؤنٹ بیلنس"
} 404 Not Found
وسائل موجود نہیں ہیں
{
"code": "ORDER_NOT_FOUND",
"message": "آرڈر موجود نہیں ہے"
} 409 Conflict
وسائل کی تضاد
{
"code": "ADDRESS_EXISTS",
"message": "پتہ پہلے سے موجود ہے"
} 429 Too Many Requests
API کلید کی شرح کی حد سے تجاوز
{
"code": "RATE_LIMITED",
"message": "شرح کی حد سے تجاوز"
} 500 Internal Server Error
اندرونی سرور کی خرابی
{
"code": "INTERNAL_ERROR",
"message": "ایک غیر متوقع خرابی واقع ہوئی"
} 503 Service Unavailable
سروس عارضی طور پر دستیاب نہیں ہے (بحالی جاری ہے)
{
"code": "SERVICE_UNAVAILABLE",
"message": "سروس عارضی طور پر دستیاب نہیں ہے"
} عام خرابی کوڈز
| Error Code | Status | Description | Solution |
|---|---|---|---|
| UNAUTHORIZED | 401 | غلط، ختم شدہ یا منسوخ شدہ API کلید | چیک کریں کہ API کلید درست ہے، ضرورت پڑنے پر نیا بنائیں |
| INSUFFICIENT_BALANCE | 403 | ناکافی اکاؤنٹ بیلنس | اکاؤنٹ ریچارج کریں |
| INVALID_ADDRESS | 400 | غلط TRON پتے کی شکل | چیک کریں کہ پتہ ایک درست TRON پتہ ہے (T سے شروع ہوتا ہے) |
| INVALID_ENERGY_AMOUNT | 400 | غلط انرجی کی مقدار | انرجی کی مقدار ایک مثبت عدد صحیح ہونی چاہیے، USDT منتقلی کے لیے 65000 تجویز کیا جاتا ہے |
| INVALID_DURATION | 400 | غلط کرایہ کی مدت | ایک درست مدت استعمال کریں: 1H، 1D، 3D، 7D، 14D، 30D |
| ORDER_NOT_FOUND | 404 | کوئی آرڈر نہیں | چیک کریں کہ آرڈر ID درست ہے |
| ADDRESS_EXISTS | 409 | پتہ پہلے سے موجود ہے | چیک کریں کہ پتہ پہلے سے شامل ہے یا موجودہ پتہ استعمال کریں |
| RATE_LIMITED | 429 | API کلید کی شرح کی حد سے تجاوز (فی الوقت صرف POST /v1/wallet/recharges پر لاگو) | ایکسپونینشل بیک آف کے ساتھ دوبارہ کوشش کریں یا درخواست کی شرح کم کریں |
نگرانی کے طریقے
| Error | Handling |
|---|---|
| 401 UNAUTHORIZED | API کلید چیک کریں/روٹیٹ کریں |
| 403 INSUFFICIENT_BALANCE | ریچارج کریں یا درخواست کی مقدار کم کریں |
| 409 ADDRESS_EXISTS | استفسار/آئیڈمپوٹینٹ پروسیسنگ پر سوئچ کریں |
| 429 RATE_LIMITED | انتظار کے ساتھ دوبارہ کوشش کریں (اگر دستیاب ہو تو Retry-After کی پیروی کریں، ورنہ ایکسپونینشل بیک آف استعمال کریں) |
| 5xx | دوبارہ کوشش کریں + درخواست کا سیاق و سباق لاگ کریں |
دوبارہ کوشش کی ہدایات
- • زیادہ سے زیادہ دوبارہ کوشش: 3 بار
- • انتظار: ایکسپونینشل (1 سیکنڈ، 2 سیکنڈ، 4 سیکنڈ...)
- • صرف 429/5xx کے ساتھ دوبارہ کوشش کریں
- • 4xx (کلائنٹ سائیڈ خرابیوں) کے ساتھ دوبارہ کوشش نہ کریں