ट्रांज़ैक्शन रिकॉर्डिंग से जुड़ी नीति कॉन्फ़िगर करना

आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं.
जानकारी

अपने एपीआई प्रॉडक्ट बंडल में मौजूद हर एपीआई प्रॉडक्ट के लिए, लेन-देन रिकॉर्ड करने की नीतियां कॉन्फ़िगर करें. इसके बारे में यहां बताया गया है.

परिचय

लेन-देन रिकॉर्ड करने की नीति की मदद से, कमाई करने की सुविधा चालू की जा सकती है. इससे लेन-देन के पैरामीटर और कस्टम एट्रिब्यूट कैप्चर किए जा सकते हैं. कमाई करने की सुविधा को इस जानकारी की ज़रूरत होती है, ताकि वह कमाई करने से जुड़ी प्रोसेस पूरी कर सके. जैसे, दर वाले प्लान लागू करना.

उदाहरण के लिए, अगर आपने रेवेन्यू के बंटवारे वाला कोई प्लान सेट अप किया है, तो कमाई करने वाले आपके एपीआई प्रॉडक्ट से जुड़े हर लेन-देन से जनरेट हुए रेवेन्यू का कुछ हिस्सा, अनुरोध करने वाले ऐप्लिकेशन के डेवलपर के साथ शेयर किया जाता है. रेवेन्यू शेयर, लेन-देन की कुल या नेट कीमत पर आधारित होता है. आपको यह तय करना होता है कि कौनसी कीमत इस्तेमाल करनी है. इसका मतलब है कि हर लेन-देन की कुल या नेट कीमत के प्रतिशत का इस्तेमाल, रेवेन्यू शेयर तय करने के लिए किया जाता है. इस वजह से, कमाई करने की सुविधा के लिए, लेन-देन की कुल या नेट कीमत की जानकारी होना ज़रूरी है. यह ट्रांज़ैक्शन रिकॉर्ड करने की नीति में की गई सेटिंग से, कुल या नेट कीमत का पता लगाता है.

अगर आपने रेट कार्ड प्लान सेट अप किया है, जिसमें डेवलपर से हर लेन-देन के लिए शुल्क लिया जाता है, तो प्लान के लिए दर सेट की जा सकती है. यह दर, किसी कस्टम एट्रिब्यूट के आधार पर तय की जाती है. जैसे, किसी लेन-देन में ट्रांसफ़र किए गए बाइट की संख्या. कमाई करने की सुविधा के लिए, यह जानना ज़रूरी है कि कस्टम एट्रिब्यूट क्या है और यह कहां मिलेगा. इसलिए, आपको लेन-देन रिकॉर्ड करने की नीति में कस्टम एट्रिब्यूट के बारे में बताना होगा.

लेन-देन रिकॉर्ड करने की नीति में लेन-देन के एट्रिब्यूट तय करने के साथ-साथ, लेन-देन पूरा होने की शर्तें भी तय की जा सकती हैं. इससे यह तय किया जा सकता है कि लेन-देन कब पूरा हुआ माना जाएगा (बिलिंग के लिए). लेन-देन पूरा होने की शर्तों को सेट करने के उदाहरणों के लिए, लेन-देन रिकॉर्ड करने की नीति में, लेन-देन पूरा होने की शर्तों को सेट करने के उदाहरण लेख पढ़ें. एपीआई प्रॉडक्ट के लिए कस्टम एट्रिब्यूट भी तय किए जा सकते हैं. एपीआई प्रॉडक्ट वह होता है जिसके आधार पर, रेट प्लान के शुल्क तय किए जाते हैं.

लेन-देन रिकॉर्ड करने की नीति को कॉन्फ़िगर करना

यहां दिए गए तरीके से, प्रॉडक्ट बंडल पेज को ऐक्सेस करें.

Edge

Edge UI का इस्तेमाल करके, एपीआई प्रॉडक्ट बंडल जोड़ते समय, आपको लेन-देन रिकॉर्ड करने की नीति कॉन्फ़िगर करनी होगी. इसके लिए, यह तरीका अपनाएं:

  1. लेन-देन रिकॉर्ड करने की नीति सेक्शन में कॉन्फ़िगर करने के लिए, एपीआई प्रॉडक्ट चुनें. ऐसा तब करें, जब प्रॉडक्ट बंडल में एक से ज़्यादा एपीआई प्रॉडक्ट मौजूद हों.
  2. लेन-देन के एट्रिब्यूट कॉन्फ़िगर करें.
  3. कस्टम एट्रिब्यूट कॉन्फ़िगर करें.
  4. यूनीक लेन-देन आईडी वाले संसाधनों को लिंक करें.
  5. रिफ़ंड कॉन्फ़िगर करें.
  6. एपीआई प्रॉडक्ट बंडल में तय किए गए हर एपीआई प्रॉडक्ट के लिए, इस प्रोसेस को दोहराएं.

Classic Edge (Private Cloud)

Classic Edge यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, लेन-देन रिकॉर्ड करने की नीति को कॉन्फ़िगर करने के लिए:

  1. http://ms-ip:9000 में साइन इन करें. यहां ms-ip, मैनेजमेंट सर्वर नोड का आईपी पता या डीएनएस नाम है.
  2. सबसे ऊपर मौजूद नेविगेशन बार में, पब्लिश करें > प्रॉडक्ट को चुनें.
  3. लागू होने वाले एपीआई प्रॉडक्ट की लाइन में, + लेन-देन रिकॉर्ड करने की नीति पर क्लिक करें. 'लेन-देन रिकॉर्ड करने की नई नीति' विंडो दिखती है.
  4. लेन-देन रिकॉर्ड करने की नीति को कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:
  5. सेव करें पर क्लिक करें.

लेन-देन की विशेषताओं को कॉन्फ़िगर करना

लेन-देन के एट्रिब्यूट सेक्शन में, वे शर्तें तय करें जिनसे पता चलता है कि कमाई करने से जुड़ा लेन-देन पूरा हो गया है.

  1. लेन-देन पूरा होने की शर्तें फ़ील्ड में, स्टेटस एट्रिब्यूट की वैल्यू के आधार पर एक्सप्रेशन डालें. स्टेटस एट्रिब्यूट के बारे में यहां बताया गया है. इससे यह तय किया जा सकेगा कि लेन-देन कब पूरा हुआ (बिलिंग के लिए). जो लेन-देन पूरे नहीं होते (यानी कि वे एक्सप्रेशन में दी गई शर्तों को पूरा नहीं करते) उन्हें रिकॉर्ड किया जाता है. हालांकि, उन पर किराया प्लान लागू नहीं होते. उदाहरण के लिए:

    txProviderStatus == 'OK'

  2. Status एट्रिब्यूट में वह वैल्यू होती है जिसका इस्तेमाल, लेन-देन पूरा होने की शर्तें फ़ील्ड में कॉन्फ़िगर किए गए एक्सप्रेशन से किया जाता है. इन फ़ील्ड की जानकारी देकर, स्टेटस एट्रिब्यूट को कॉन्फ़िगर करें:
    फ़ील्ड ब्यौरा
    एपीआई संसाधन एपीआई प्रॉडक्ट में तय किए गए यूआरआई पैटर्न. इनका इस्तेमाल, कमाई करने वाले लेन-देन की पहचान करने के लिए किया जाएगा.
    जवाब की जगह जवाब की वह जगह जहां एट्रिब्यूट की जानकारी दी गई है. मान्य वैल्यू में ये शामिल हैं: फ़्लो वैरिएबल, हेडर, JSON बॉडी, और XML बॉडी.
    वैल्यू जवाब की वैल्यू. एक से ज़्यादा वैल्यू तय करने के लिए, + x जोड़ें पर क्लिक करें. उदाहरण के लिए, + फ़्लो वैरिएबल जोड़ें.
  3. लेन-देन के वैकल्पिक एट्रिब्यूट कॉन्फ़िगर करने के लिए, वैकल्पिक एट्रिब्यूट इस्तेमाल करें टॉगल को चालू करें. इसके बाद, यहां दी गई टेबल में बताए गए लेन-देन के किसी भी एट्रिब्यूट को कॉन्फ़िगर करें.
    एट्रिब्यूट ब्यौरा
    कुल कीमत

    यह एट्रिब्यूट, सिर्फ़ उन किराया प्लान के लिए लागू होता है जिनमें रेवेन्यू शेयर करने का मॉडल इस्तेमाल किया जाता है. किराये के इन प्लान के लिए, कुल किराया या नेट किराया बताना ज़रूरी है. पक्का करें कि संख्यात्मक वैल्यू को String टाइप के तौर पर दिखाया गया हो. किसी लेन-देन के लिए कुल कीमत. रेवेन्यू शेयर करने वाले प्लान के लिए, आपको सकल कीमत एट्रिब्यूट या नेट कीमत एट्रिब्यूट में से किसी एक को रिकॉर्ड करना होगा. रेवेन्यू के बंटवारे के आधार पर, यह तय होता है कि कौनसे एट्रिब्यूट की वैल्यू सबमिट करना ज़रूरी है. उदाहरण के लिए, रेवेन्यू शेयर करने का ऐसा प्लान सेट अप किया जा सकता है जो किसी ट्रांज़ैक्शन की कुल कीमत पर आधारित हो. ऐसे में, कुल कीमत फ़ील्ड में जानकारी देना ज़रूरी है.

    शुद्ध मूल्य

    यह एट्रिब्यूट, सिर्फ़ उन किराया प्लान के लिए लागू होता है जिनमें रेवेन्यू शेयर करने का मॉडल इस्तेमाल किया जाता है. किराये के इन प्लान के लिए, कुल किराया या नेट किराया बताना ज़रूरी है. पक्का करें कि संख्यात्मक वैल्यू को String टाइप के तौर पर दिखाया गया हो. किसी ट्रांजै़क्शन के लिए नेट कीमत. रेवेन्यू शेयर करने वाले प्लान के लिए, आपको नेट प्राइस फ़ील्ड या ग्रॉस प्राइस फ़ील्ड में से किसी एक को रिकॉर्ड करना होगा. रेवेन्यू के बंटवारे के आधार पर, यह तय होता है कि कौनसे फ़ील्ड भरने ज़रूरी हैं. उदाहरण के लिए, रेवेन्यू शेयर करने की दर वाला ऐसा प्लान सेट अप किया जा सकता है जो किसी ट्रांज़ैक्शन की नेट कीमत पर आधारित हो. ऐसे में, नेट कीमत फ़ील्ड में जानकारी देना ज़रूरी है.

    मुद्रा

    यह एट्रिब्यूट, रेवेन्यू के बंटवारे वाले मॉडल का इस्तेमाल करने वाले किराया प्लान के लिए ज़रूरी है. लेन-देन के लिए इस्तेमाल की जाने वाली मुद्रा का टाइप.

    गड़बड़ी कोड

    लेन-देन से जुड़ा गड़बड़ी कोड. इससे लेन-देन पूरा न होने के बारे में ज़्यादा जानकारी मिलती है.

    आइटम का विवरण

    ट्रांजै़क्शन का विवरण.

    टैक्स

    यह एट्रिब्यूट सिर्फ़ रेवेन्यू शेयर करने वाले मॉडल के लिए काम का है. साथ ही, यह सिर्फ़ तब काम करता है, जब एपीआई कॉल में टैक्स की रकम कैप्चर की गई हो. पक्का करें कि संख्यात्मक वैल्यू को String टाइप के तौर पर दिखाया गया हो. खरीदारी पर लगने वाले टैक्स की रकम. कुल कीमत + टैक्स = कुल किराया.

उदाहरण के लिए, यहां दी गई वैल्यू सेट करने पर, कमाई करने की सुविधा को मैसेज के जवाब में मौजूद फ़्लो वैरिएबल की वैल्यू मिलती है. यह वैल्यू, response.reason.phrase नाम के वैरिएबल में होती है. अगर वैल्यू ठीक है और Monetization Limits Check policy को एपीआई प्रॉक्सी ProxyEndpoint अनुरोध से अटैच किया गया है, तो कमाई करने की सुविधा इसे लेन-देन के तौर पर गिनती है.

फ़ील्ड वैल्यू
ट्रांजै़क्शन पूरा होने की शर्तें txProviderStatus == 'OK'
स्थिति: एपीआई संसाधन **
स्थिति: जवाब की जगह की जानकारी फ़्लो वैरिएबल
स्थिति: फ़्लो वैरिएबल response.reason.phrase

कस्टम एट्रिब्यूट कॉन्फ़िगर करना

कस्टम एट्रिब्यूट सेक्शन में, आपको उन कस्टम एट्रिब्यूट की पहचान करनी होती है जिन्हें लेन-देन रिकॉर्ड करने की नीति में शामिल करना है. उदाहरण के लिए, अगर आपने रेट कार्ड प्लान सेट अप किया है, जिसमें डेवलपर से हर लेन-देन के लिए शुल्क लिया जाता है, तो प्लान के लिए शुल्क तय किया जा सकता है. इसके लिए, कस्टम एट्रिब्यूट का इस्तेमाल किया जा सकता है. जैसे, किसी लेन-देन में ट्रांसफ़र किए गए बाइट की संख्या. इसके बाद, आपको उस कस्टम एट्रिब्यूट को लेन-देन रिकॉर्ड करने की नीति में शामिल करना होगा.

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

लेन-देन रिकॉर्ड करने की नीति में तय किए गए कस्टम एट्रिब्यूट को, रेवेन्यू की खास जानकारी वाली रिपोर्ट में शामिल किया जा सकता है. इसके बारे में रेवेन्यू की खास जानकारी वाली रिपोर्ट में कस्टम लेन-देन एट्रिब्यूट शामिल करना लेख में बताया गया है.

कस्टम एट्रिब्यूट कॉन्फ़िगर करने के लिए, कस्टम एट्रिब्यूट इस्तेमाल करें टॉगल चालू करें. इसके बाद, ज़्यादा से ज़्यादा 10 कस्टम एट्रिब्यूट तय करें. लेन-देन रिकॉर्ड करने की नीति में शामिल किए गए हर कस्टम एट्रिब्यूट के लिए, आपको यह जानकारी देनी होगी.

फ़ील्ड ब्यौरा
कस्टम एट्रिब्यूट का नाम कस्टम एट्रिब्यूट के बारे में बताने वाला कोई नाम डालें. अगर किराया प्लान, किसी कस्टम एट्रिब्यूट पर आधारित है, तो यह नाम उपयोगकर्ता को किराया प्लान की जानकारी में दिखता है. उदाहरण के लिए, अगर कस्टम एट्रिब्यूट में अवधि की जानकारी दी गई है, तो आपको एट्रिब्यूट का नाम अवधि रखना चाहिए. कस्टम एट्रिब्यूट के लिए असल यूनिट (जैसे, घंटे, मिनट या सेकंड) को रेटिंग यूनिट फ़ील्ड में सेट किया जाता है. ऐसा तब किया जाता है, जब कस्टम एट्रिब्यूट के लिए किराया प्लान बनाया जाता है (कस्टम एट्रिब्यूट की जानकारी के साथ किराया प्लान तय करना लेख पढ़ें).
एपीआई संसाधन लेन-देन में ऐक्सेस की गई एपीआई संसाधन के एक या उससे ज़्यादा यूआरआई सफ़िक्स (यानी, बेस पाथ के बाद आने वाला यूआरआई फ़्रैगमेंट) चुनें. उपलब्ध संसाधन, लेन-देन के एट्रिब्यूट के लिए उपलब्ध संसाधनों के जैसे ही होते हैं.
जवाब की जगह जवाब में वह जगह चुनें जहां एट्रिब्यूट की जानकारी दी गई है. मान्य वैल्यू में ये शामिल हैं: फ़्लो वैरिएबल, हेडर, JSON बॉडी, और XML बॉडी.
वैल्यू कस्टम एट्रिब्यूट के लिए कोई वैल्यू डालें. आपकी दी गई हर वैल्यू, किसी फ़ील्ड, पैरामीटर या कॉन्टेंट एलिमेंट से मेल खाती है. यह एलिमेंट, आपकी तय की गई जगह पर कस्टम एट्रिब्यूट की वैल्यू देता है. एक से ज़्यादा वैल्यू तय करने के लिए, + x जोड़ें पर क्लिक करें. उदाहरण के लिए, + फ़्लो वैरिएबल जोड़ें.

उदाहरण के लिए, अगर आपने कॉन्टेंट की लंबाई नाम का कोई कस्टम एट्रिब्यूट कॉन्फ़िगर किया है और जवाब की जगह के तौर पर हेडर चुना है, तो अगर कॉन्टेंट की लंबाई की वैल्यू, एचटीटीपी कॉन्टेंट की लंबाई वाले फ़ील्ड में दी गई है, तो आपको वैल्यू के तौर पर Content-Length डालना होगा.

कुछ लेन-देन आसान होते हैं. इनमें एक संसाधन के लिए एपीआई कॉल शामिल होता है. हालांकि, अन्य लेन-देन ज़्यादा मुश्किल हो सकते हैं. उदाहरण के लिए, मान लें कि किसी मोबाइल गेमिंग ऐप्लिकेशन में इन-ऐप्लिकेशन प्रॉडक्ट खरीदने के लिए किए गए लेन-देन में कई संसाधन कॉल शामिल हैं:

  • रिज़र्व एपीआई को कॉल किया जाता है. इससे यह पक्का किया जाता है कि प्रीपेड उपयोगकर्ता के पास प्रॉडक्ट खरीदने के लिए ज़रूरी क्रेडिट है. साथ ही, खरीदारी के लिए फ़ंड को बांटा जाता है ("रिज़र्व" किया जाता है).
  • चार्ज एपीआई को कॉल किया जाता है, ताकि प्रीपेड उपयोगकर्ता के खाते से पैसे काटे जा सकें.

पूरे लेन-देन को प्रोसेस करने के लिए, कमाई करने की सुविधा को पहले संसाधन (रिज़र्व एपीआई से कॉल और जवाब) को दूसरे संसाधन (चार्ज एपीआई से कॉल और जवाब) से लिंक करने का तरीका चाहिए. इसके लिए, यह उस जानकारी पर निर्भर करता है जो आपने यूनीक लेन-देन आईडी के साथ संसाधन लिंक करें सेक्शन में दी है.

कस्टम एट्रिब्यूट कॉन्फ़िगर करने के लिए, यूनीक लेन-देन आईडी इस्तेमाल करें टॉगल को चालू करें और लेन-देन लिंक करें. हर ट्रांज़ैक्शन के लिए, आपको एक संसाधन, रिस्पॉन्स की जगह, और एट्रिब्यूट की वैल्यू तय करनी होती है. यह वैल्यू, अन्य ट्रांज़ैक्शन में मौजूद मिलती-जुलती वैल्यू से जुड़ी होती है.

उदाहरण के लिए, मान लें कि रिज़र्व करने के लिए एपीआई कॉल और शुल्क लेने के लिए एपीआई कॉल को इस तरह लिंक किया गया है: रिज़र्व करने के लिए एपीआई के रिस्पॉन्स हेडर में मौजूद session_id नाम का फ़ील्ड, शुल्क लेने के लिए एपीआई के reference_id नाम के रिस्पॉन्स हेडर से मेल खाता है. इस मामले में, यूनीक लेन-देन आईडी के साथ संसाधन लिंक करें सेक्शन में मौजूद एंट्री इस तरह सेट की जा सकती हैं:

संसाधन जवाब की जगह वैल्यू
reserve/{id}**

हेडर

session_id
/charge/{id}**

हेडर

reference_id

रिफ़ंड कॉन्फ़िगर करना

रिफ़ंड सेक्शन में, आपको ऐसे एट्रिब्यूट तय करने होते हैं जिनका इस्तेमाल कमाई करने की सुविधा, रिफ़ंड प्रोसेस करने के लिए करती है.

उदाहरण के लिए, मान लें कि कोई उपयोगकर्ता, ऐसे मोबाइल ऐप्लिकेशन से कोई प्रॉडक्ट खरीदता है जो आपके कमाई करने वाले एपीआई का इस्तेमाल करता है. लेन-देन से कमाई करने की सुविधा, शेयर किए गए रेवेन्यू प्लान के आधार पर चालू की जाती है. हालांकि, मान लें कि खरीदार प्रॉडक्ट से संतुष्ट नहीं है और उसे वापस करना चाहता है. अगर रिफ़ंड करने वाले एपीआई को कॉल करके प्रॉडक्ट का रिफ़ंड किया जाता है, तो कमाई करने की सुविधा से जुड़े ज़रूरी बदलाव किए जाते हैं. यह ऐसा, लेन-देन रिकॉर्ड करने की नीति के रिफ़ंड सेक्शन में दी गई जानकारी के आधार पर करता है.

धनवापसी की सुविधा कॉन्फ़िगर करने के लिए, धनवापसी के एट्रिब्यूट इस्तेमाल करें टॉगल को चालू करें और धनवापसी की जानकारी दें:

  1. रिफ़ंड के मानदंड तय करने के लिए, यहां दिए गए फ़ील्ड की जानकारी दें:
    फ़ील्ड ब्यौरा
    जवाब की जगह रिफ़ंड के लेन-देन के लिए संसाधन. अगर एपीआई प्रॉडक्ट कई संसाधन उपलब्ध कराता है, तो सिर्फ़ उस संसाधन को चुना जा सकता है जो रिफ़ंड करता है.
    रिफ़ंड मिलने की ज़रूरी शर्तें स्टेटस एट्रिब्यूट की वैल्यू के आधार पर एक्सप्रेशन (इसके बारे में आगे बताया गया है). इससे यह तय किया जाता है कि रिफ़ंड का लेन-देन कब पूरा हुआ (बिलिंग के लिए). रिफ़ंड के ऐसे लेन-देन रिकॉर्ड किए जाते हैं जो पूरे नहीं हुए हैं. इसका मतलब है कि वे एक्सप्रेशन में दी गई शर्तों को पूरा नहीं करते. हालांकि, इन पर किराया प्लान लागू नहीं होते. उदाहरण के लिए:

    txProviderStatus == 'OK'

  2. इन फ़ील्ड की जानकारी देकर, स्टेटस एट्रिब्यूट को कॉन्फ़िगर करें:
    फ़ील्ड ब्यौरा
    जवाब की जगह जवाब की वह जगह जहां एट्रिब्यूट की जानकारी दी गई है. मान्य वैल्यू में ये शामिल हैं: फ़्लो वैरिएबल, हेडर, JSON बॉडी, और XML बॉडी.
    वैल्यू जवाब की वैल्यू. एक से ज़्यादा वैल्यू तय करने के लिए, + x जोड़ें पर क्लिक करें. उदाहरण के लिए, + फ़्लो वैरिएबल जोड़ें.
  3. इन फ़ील्ड की वैल्यू तय करके, माता-पिता का आईडी एट्रिब्यूट कॉन्फ़िगर करें:
    फ़ील्ड ब्यौरा
    जवाब की जगह जवाब की वह जगह जहां एट्रिब्यूट की जानकारी दी गई है. मान्य वैल्यू में ये शामिल हैं: फ़्लो वैरिएबल, हेडर, JSON बॉडी, और XML बॉडी.
    वैल्यू उस लेन-देन का आईडी जिसके लिए रिफ़ंड प्रोसेस किया गया है. उदाहरण के लिए, अगर कोई व्यक्ति कोई प्रॉडक्ट खरीदता है और फिर रिफ़ंड का अनुरोध करता है, तो पैरंट लेन-देन आईडी, खरीदारी के लेन-देन का आईडी होता है. एक से ज़्यादा वैल्यू तय करने के लिए, + x जोड़ें पर क्लिक करें. उदाहरण के लिए, + फ़्लो वैरिएबल जोड़ें.
  4. रिफ़ंड के लिए उपलब्ध एट्रिब्यूट कॉन्फ़िगर करने के लिए, रिफ़ंड के लिए उपलब्ध एट्रिब्यूट इस्तेमाल करें टॉगल को चालू करें और एट्रिब्यूट कॉन्फ़िगर करें. रिफ़ंड के लिए इस्तेमाल किए जाने वाले एट्रिब्यूट, लेन-देन के लिए इस्तेमाल किए जाने वाले एट्रिब्यूट के जैसे ही होते हैं. इनके बारे में लेन-देन के एट्रिब्यूट कॉन्फ़िगर करना लेख में बताया गया है.

एपीआई का इस्तेमाल करके, लेन-देन रिकॉर्ड करने की नीतियों को मैनेज करना

यहां दिए गए सेक्शन में, एपीआई का इस्तेमाल करके लेन-देन रिकॉर्ड करने से जुड़ी नीतियों को मैनेज करने का तरीका बताया गया है.

एपीआई का इस्तेमाल करके, लेन-देन रिकॉर्ड करने की नीति बनाना

लेन-देन रिकॉर्ड करने की नीति को, एपीआई प्रॉडक्ट के एट्रिब्यूट के तौर पर तय किया जाता है. इस एट्रिब्यूट की वैल्यू से यह पता चलता है कि:

  • यह उस प्रॉडक्ट रिसोर्स का यूआरआई सफ़िक्स है जिससे लेन-देन रिकॉर्ड करने की नीति जुड़ी है. सफ़िक्स में एक पैटर्न वैरिएबल शामिल है, जिसे कर्ली ब्रेसिज़ में रखा गया है. पैटर्न वैरिएबल का आकलन, एपीआई सेवाओं के ज़रिए रनटाइम में किया जाता है. उदाहरण के लिए, यहां दिए गए यूआरआई सफ़िक्स में पैटर्न वैरिएबल {id} शामिल है.
    /reserve/{id}**

    इस मामले में, एपीआई सेवाएं संसाधन के यूआरआई सफ़िक्स का आकलन इस तरह करती हैं: /reserve इसके बाद, कोई भी ऐसी सब-डायरेक्ट्री जो एपीआई उपलब्ध कराने वाली कंपनी के तय किए गए आईडी से शुरू होती है.

  • जवाब में मौजूद वह संसाधन जिससे यह अटैच है. किसी एपीआई प्रॉडक्ट में कई रिसॉर्स हो सकते हैं. साथ ही, हर रिसॉर्स के रिस्पॉन्स से, लेन-देन रिकॉर्ड करने की नीति जुड़ी हो सकती है.
  • यह एक एक्सट्रैक्ट वैरिएबल नीति है. यह लेन-देन रिकॉर्ड करने की नीति को, जवाब के मैसेज से कॉन्टेंट निकालने की अनुमति देती है. इससे, लेन-देन के उन पैरामीटर को कैप्चर किया जा सकता है जिन्हें आपको कैप्चर करना है.
लेख पढ़ें.

किसी एपीआई प्रॉडक्ट में लेन-देन रिकॉर्ड करने की नीति एट्रिब्यूट जोड़ने के लिए, मैनेजमेंट एपीआई को PUT अनुरोध भेजें https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id} (न कि कमाई करने से जुड़े एपीआई को).

एपीआई का इस्तेमाल करके, लेन-देन के पूरा होने की शर्तें तय करना

लेन-देन पूरा होने की शर्तें तय की जा सकती हैं. इससे यह तय किया जा सकता है कि लेन-देन कब पूरा माना जाएगा (बिलिंग के लिए). जो लेन-देन पूरे नहीं होते (यानी कि वे एक्सप्रेशन में दी गई शर्तों को पूरा नहीं करते), उन्हें रिकॉर्ड किया जाता है. हालांकि, उन पर किराया प्लान लागू नहीं होते. लेन-देन पूरा होने की स्थिति सेट करने के उदाहरणों के लिए, लेन-देन रिकॉर्ड करने की नीति में, लेन-देन पूरा होने की स्थिति सेट करने के उदाहरण लेख पढ़ें.

लेन-देन के पूरा होने की शर्तों को, एपीआई प्रॉडक्ट के एट्रिब्यूट के तौर पर तय किया जाता है. इसके लिए, मैनेजमेंट एपीआई को PUT अनुरोध भेजें https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id} (न कि कमाई करने से जुड़े एपीआई को).

उदाहरण के लिए, इस अनुरोध में लेन-देन तब पूरा होता है, जब txProviderStatus की वैल्यू success होती है. लेन-देन पूरा होने की शर्तों से जुड़ी खास जानकारी को हाइलाइट किया गया है.

$ curl -H "Content-Type: application/json" -X PUT -d \ 
'{
        "apiResources": [
        "/reserve/{id}**"       
        ],
        "approvalType": "auto",
        "attributes": [                         
        {
                "name": "MINT_TRANSACTION_SUCCESS_CRITERIA",
                "value": "txProviderStatus == 'OK'"
        }
        ],
        "description": "Payment",
        "displayName": "Payment",
        "environments": [
        "dev"
        ],
        "name": "payment",
        "proxies": [],
        "scopes": [
        ""
        ]
}' \
"https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/payment" \
-u email:password

एपीआई का इस्तेमाल करके कस्टम एट्रिब्यूट तय करना

एपीआई प्रॉडक्ट के लिए कस्टम एट्रिब्यूट तय किए जा सकते हैं. इन एट्रिब्यूट के आधार पर, रेट प्लान के शुल्क तय किए जाते हैं. उदाहरण के लिए, अगर आपने रेट कार्ड प्लान सेट अप किया है, जिसमें हर लेन-देन के लिए डेवलपर से शुल्क लिया जाता है, तो प्लान के लिए रेट सेट किया जा सकता है. यह रेट, कस्टम एट्रिब्यूट के आधार पर सेट किया जा सकता है. जैसे, किसी लेन-देन में ट्रांसफ़र किए गए बाइट की संख्या. किराया प्लान बनाते समय, एक या उससे ज़्यादा कस्टम एट्रिब्यूट तय किए जा सकते हैं. इनके आधार पर, प्लान का किराया तय किया जाता है. हालांकि, किसी रेट प्लान में मौजूद किसी प्रॉडक्ट के लिए, सिर्फ़ एक कस्टम एट्रिब्यूट हो सकता है. प्लान के लिए किराया तय करने का आधार यही एट्रिब्यूट होता है.

कस्टम एट्रिब्यूट को एपीआई प्रॉडक्ट के एट्रिब्यूट के तौर पर सेट किया जाता है. इसके लिए, मैनेजमेंट एपीआई को PUT अनुरोध भेजें https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id} (न कि कमाई करने से जुड़े एपीआई को).

एपीआई प्रॉडक्ट में जोड़े गए हर कस्टम एट्रिब्यूट के लिए, आपको एक नाम और एट्रिब्यूट की वैल्यू देनी होगी. नाम MINT_CUSTOM_ATTRIBUTE_{num} के फ़ॉर्म में होना चाहिए. यहां {num} एक पूर्णांक है.

उदाहरण के लिए, यहां दिए गए अनुरोध में तीन कस्टम एट्रिब्यूट के बारे में बताया गया है.

$ curl -H "Content-Type: application/json" -X PUT -d \
'{
        "apiResources": [
        "/reserve/{id}**",
        "/charge/{id}**"
        ],
        "approvalType": "auto",
        "attributes": [
        {
                "name": "MINT_CUSTOM_ATTRIBUTE_1",
                "value": "test1"
        },
        {
                "name": "MINT_CUSTOM_ATTRIBUTE_2",
                "value": "test2"
        }
 
        ],
        "name": "payment",
        "proxies": [],
        "scopes": [
                ""
        ]
}' \
"https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/payment" \
-u email:password

लेन-देन रिकॉर्ड करने की नीति में, लेन-देन पूरा होने की शर्तें सेट करने के उदाहरण

यहां दी गई टेबल में, लेन-देन के सफल और असफल होने के उदाहरण दिए गए हैं. ये उदाहरण, लेन-देन के सफल होने की शर्त के एक्सप्रेशन और एपीआई प्रॉक्सी से मिली txProviderStatus वैल्यू के आधार पर दिए गए हैं. txProviderStatus एक इंटरनल वैरिएबल है. इसका इस्तेमाल कमाई करने की सुविधा, लेन-देन के पूरा होने की स्थिति का पता लगाने के लिए करती है.

सक्सेस क्राइटेरिया एक्सप्रेशन क्या यह मान्य एक्सप्रेशन है? एपीआई प्रॉक्सी से txProviderStatus वैल्यू इवैलुएशन का नतीजा
null सही "200" गलत
"" गलत "200" गलत
" " गलत "200" गलत
"sdfsdfsdf" गलत "200" गलत
"txProviderStatus =='100'" सही "200" गलत
"txProviderStatus =='200'" सही "200" सही
"true" सही "200" सही
"txProviderStatus=='OK' OR
txProviderStatus=='Not Found' OR
txProviderStatus=='Bad Request'"
सही "OK" सही
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" सही "OK" सही
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" सही "Not Found" सही
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" सही "Bad Request" सही
"(txProviderStatus?:'') matches '(?i)(OK)|(Not Found)|(Bad Request)'" सही "Bad Request" सही
"(txProviderStatus?:'') matches '(?i)(OK)|(Not Found)|(Bad Request)'" सही null गलत
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" सही "bad request" सही
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" सही "Redirect" गलत
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" सही "heeeelllooo" गलत
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" सही null गलत
"txProviderStatus == 100" सही "200" गलत