गड़बड़ी के मामले

गड़बड़ी होने पर, डीपीए से उम्मीद की जाती है कि वह एचटीटीपी स्टेटस कोड के साथ-साथ एचटीटीपी रिस्पॉन्स भी देगा. इस रिस्पॉन्स में एक JSON ऑब्जेक्ट शामिल होना चाहिए, जिसमें गड़बड़ी के बारे में ज़्यादा जानकारी दी गई हो. गड़बड़ी के जवाब के मुख्य हिस्से में, ErrorResponse का एक इंस्टेंस होना चाहिए.

{
  "errorMessage": string,
  "cause": enum(ErrorCause)
}

डीपीए से मिलने वाला गड़बड़ी का जवाब, इन शर्तों के मुताबिक होना चाहिए:

  • उपयोगकर्ता फ़िलहाल रोमिंग में है और इस उपयोगकर्ता के लिए डीपीए क्वेरी बंद है. डेटा प्रोसेसिंग समझौते (डीपीए) के तहत, USER_ROAMING को गड़बड़ी की वजह के तौर पर बताते हुए 403 गड़बड़ी का मैसेज दिखता है.
  • डीपीए, 404 NOT_FOUND गड़बड़ी कोड दिखाता है. इससे GTAF को पता चलता है कि user_key अमान्य है. इसका मतलब है कि user_key मौजूद नहीं है. साथ ही, INVALID_NUMBER गड़बड़ी कोड भी दिखता है.
  • डीपीए, 410 GONE गड़बड़ी कोड दिखाता है. इसमें गड़बड़ी की वजह BAD_CPID होती है. इससे GTAF को पता चलता है कि अगर key_type = CPID है और CPID की समयसीमा खत्म हो गई है, तो क्लाइंट को नया user key मिलना चाहिए.
  • डीपीए, 501 NOT_IMPLEMENTED गड़बड़ी कोड दिखाता है. इससे पता चलता है कि यह SERVICE_UNAVAILABLE गड़बड़ी की वजह से इस कॉल का समर्थन नहीं करता.
  • डीपीए, 429 TOO MANY REQUESTS स्टेटस कोड दिखाता है. साथ ही, TOO_MANY_REQUESTS गड़बड़ी की वजह बताता है. इसके अलावा, Retry-After हेडर से पता चलता है कि GTAF, डीपीए को बहुत ज़्यादा अनुरोध भेज रहा है.
  • डीपीए, 409 CONFLICT गड़बड़ी दिखाता है. इससे पता चलता है कि डीपीए की मौजूदा स्थिति की वजह से, अनुरोध पूरा नहीं किया जा सकता.
  • यह सेवा कुछ समय के लिए उपलब्ध नहीं है. डीपीए, 503 SERVICE UNAVAILABLE गड़बड़ी कोड दिखाता है. साथ ही, Retry-After हेडर दिखाता है, जिससे यह पता चलता है कि नया अनुरोध कब किया जा सकता है.
  • डीपीए, अन्य सभी गड़बड़ियों के लिए 500 INTERNAL SERVER ERROR गड़बड़ी कोड दिखाता है. इन गड़बड़ियों के बारे में नहीं बताया गया होता है. साथ ही, ERROR_CAUSE_UNSPECIFIED को गड़बड़ी की वजह के तौर पर दिखाता है.

खरीदारी के दौरान आने वाली गड़बड़ियों के मामले में, यहां दिए गए गड़बड़ी कोड से पता चलता है कि लेन-देन पूरा नहीं हो सका:

  • डेटा प्रोसेसिंग समझौते (डीपीए) के तहत काम करने वाली कंपनी, GTAF को 400 BAD REQUEST गड़बड़ी कोड भेजती है. इससे GTAF को पता चलता है कि खरीदा गया प्लान आईडी अमान्य है.
  • डेटा प्रोसेसिंग समझौते (डीपीए) के तहत, 402 PAYMENT REQUIRED गड़बड़ी कोड मिलता है. इससे GTAF को पता चलता है कि उपयोगकर्ता के पास खरीदारी पूरी करने के लिए ज़रूरी बैलेंस नहीं है.
  • डीपीए, 409 CONFLICT गड़बड़ी कोड दिखाता है. इससे GTAF को पता चलता है कि खरीदा जाने वाला प्लान, उपयोगकर्ता के मौजूदा प्रॉडक्ट मिक्स के साथ काम नहीं करता. उदाहरण के लिए, अगर ऑपरेटर के डेटा प्लान से जुड़ी नीति के तहत, पोस्टपेड और प्रीपेड प्लान को एक साथ इस्तेमाल करने की अनुमति नहीं है, तो पोस्टपेड प्लान इस्तेमाल करने वाले व्यक्ति के लिए प्रीपेड प्लान खरीदने की कोशिश करने पर, 409 CONFLICT गड़बड़ी दिखेगी.
  • डेटा प्रोसेसिंग समझौते (डीपीए) के तहत, 403 FORBIDDEN गड़बड़ी कोड मिलता है. इससे GTAF को पता चलता है कि मौजूदा लेन-देन, पहले किए गए लेन-देन का डुप्लीकेट है. डेटा प्रोसेसिंग समझौते (डीपीए) के तहत, इन वजहों से गड़बड़ी हुई है:
    • अगर पिछला लेन-देन पूरा नहीं हुआ था, तो गड़बड़ी की वजह बताने वाला कोड.
    • अगर पिछला लेन-देन पूरा हो गया है, तो DUPLICATE_TRANSACTION.
    • अगर पिछला लेन-देन अब भी कतार में है, तो REQUEST_QUEUED.