خرابی کوڈز اور نگرانی

API خرابیوں کو سمجھیں اور سنبھالیں

خرابی کے ردعمل کی شکل

تمام خرابی کے ردعمل ایک یکساں شکل استعمال کرتے ہیں:

{
  "error": {
    "code": "ERROR_CODE",
    "message": "انسانی قابل مطالعہ خرابی کا پیغام",
    "details": "اضافی سیاق و سباق (اختیاری)"
  }
}

💡 error.code کو مستحکم شرط کے طور پر استعمال کریں (خرابی کا پیغام بدل سکتا ہے)

HTTP حیثیت کوڈز

200 OK

درخواست کامیاب رہی

200

201 Created

وسائل کامیابی سے بنایا گیا

201

400 Bad Request

درخواست کے پیرامیٹرز غلط ہیں

400
{
  "code": "INVALID_REQUEST",
  "message": "درخواست کی شکل غلط ہے"
}

401 Unauthorized

تصدیق نہیں ہوئی یا API کلید غلط ہے

401
{
  "code": "UNAUTHORIZED",
  "message": "غلط یا ختم شدہ API کلید"
}

403 Forbidden

ناکافی اکاؤنٹ بیلنس یا اجازت نہیں

403
{
  "code": "INSUFFICIENT_BALANCE",
  "message": "ناکافی اکاؤنٹ بیلنس"
}

404 Not Found

وسائل موجود نہیں ہیں

404
{
  "code": "ORDER_NOT_FOUND",
  "message": "آرڈر موجود نہیں ہے"
}

409 Conflict

وسائل کی تضاد

409
{
  "code": "ADDRESS_EXISTS",
  "message": "پتہ پہلے سے موجود ہے"
}

429 Too Many Requests

API کلید کی شرح کی حد سے تجاوز

429
{
  "code": "RATE_LIMITED",
  "message": "شرح کی حد سے تجاوز"
}

500 Internal Server Error

اندرونی سرور کی خرابی

500
{
  "code": "INTERNAL_ERROR",
  "message": "ایک غیر متوقع خرابی واقع ہوئی"
}

503 Service Unavailable

سروس عارضی طور پر دستیاب نہیں ہے (بحالی جاری ہے)

503
{
  "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 (کلائنٹ سائیڈ خرابیوں) کے ساتھ دوبارہ کوشش نہ کریں