मैं एक ऐसी परियोजना के लिए REST API डिज़ाइन कर रहा हूँ जहाँ उपयोगकर्ता हमेशा कई "योजनाओं" में से एक पर होते हैं - प्रत्येक योजना कुछ संसाधन सीमाओं को परिभाषित करती है, जैसे कि उन उपयोगकर्ताओं की अधिकतम संख्या जिनके पास या उनके द्वारा अपलोड की जा सकने वाली डेटा की अधिकतम संख्या हो सकती है। इन सीमाओं में से एक के पूरा हो जाने के बाद, उपयोगकर्ता अधिक संसाधन प्राप्त करने के लिए अपनी योजनाओं (अनिवार्य रूप से भुगतान) को अपग्रेड कर सकते हैं।
मैं एक विशेष स्थिति कोड को लौटाना चाहता हूं जो ऐसी स्थिति का संकेत देता है जहां खाता संसाधन सीमाओं के कारण कार्रवाई नहीं की जा सकती है, और योजना को अपग्रेड करने से यह हल हो जाएगा - उदाहरण के लिए यदि उपयोगकर्ता अपनी भंडारण क्षमता का 100% उपयोग करता है और एक अतिरिक्त फ़ाइल अपलोड करने का प्रयास करता है , उन्हें यह प्रतिक्रिया मिलेगी।
उम्मीदवार हैं, IMHO:
403 Forbidden
- हालांकि, मैं इस मामले और अन्य मामलों के बीच अंतर करना चाहूंगा जहां उपयोगकर्ता के पास इस कार्रवाई को करने की अनुमति नहीं है।401 Unauthorized
- अच्छा विचार नहीं है, हम इसका उपयोग प्रमाणीकरण संबंधी समस्याओं के लिए कर रहे हैं।402 Payment Required
- इस तरह की समझ में आता है, लेकिन मैं एक गैर-मानक अभी तक आरक्षित स्थिति कोड का उपयोग करने के बारे में चिंतित हूंकुछ भी कम मानक जैसे
423 Locked
कि इसकी संभावना नहीं है कि हम इसे भविष्य में किसी और चीज के लिए उपयोग करेंगे
एक अन्य विकल्प कुछ बहुत मानक के साथ जाना है जैसे कि 403
लेकिन प्रतिक्रिया शरीर में त्रुटि की बारीकियों को इंगित करें।
मैं सोच रहा हूं कि आपको कौन सा दृष्टिकोण विश्वास है कि (ए) लंबे समय में सबसे अच्छा काम करेगा और (बी) अन्य सिद्धांतों से अधिक अच्छी तरह से चिपक जाएगा।