मुख्य सामग्री पर जाएं

Errors and retry behavior

Non-success responses इस envelope का उपयोग करते हैं:
{
  "error": {
    "code": "SOME_CODE",
    "message": "Human-readable explanation",
    "issues": []
  }
}

Retry guidance

  • ट्रांसपोर्ट विफलताओं पर रीट्राई करें।
  • उसी Idempotency-Key के साथ idempotent writes को रीट्राई करें।
  • पहली response को पूर्ण मानने के बजाय async work के बाद durable state को दोबारा पढ़ें।

Practical rules

  • server-side failures को केवल तभी रीट्राई कैंडिडेट मानें जब मूल write में एक स्थिर idempotency key इस्तेमाल की गई हो।
  • नए export download URLs को अस्थायी मानें और आवश्यकता होने पर उन्हें GET /exports/{exportId} से दोबारा पढ़ें।
  • यदि कोई mutation पहले से प्रगति में है या वर्तमान state के साथ टकराव कर रहा है, तो लौटाए गए code की जाँच करें और केवल तभी रीट्राई करें जब ऑपरेशन अभी भी तार्किक रूप से सुरक्षित हो।

Machine-readable clients

शिप किया गया Node.js SDK और CLI errors को structured objects में normalize करते हैं, जिनमें शामिल हैं:
  • code
  • message
  • status
  • retryable
इससे free-form strings को parse किए बिना automation logic को branch करना सुरक्षित हो जाता है।