कमाई करने की सीमाओं की जांच करने से जुड़ी नीति

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

खास जानकारी

Monetizationसीमाsचेक नीति की मदद से, आपके किए गए एपीआई कॉल पर कमाई करने की सीमाएं लागू की जा सकती हैं अन्य ऐप्लिकेशन डेवलपर कर सकते हैं.

नीति के ट्रिगर होने के कुछ मामले यहां दिए गए हैं:

  • अगर कमाई करने वाले एपीआई को ऐक्सेस करने वाले किसी ऐप्लिकेशन डेवलपर ने संबंधित एपीआई प्रॉडक्ट
  • डेवलपर के खाते में कम पैसे हैं.
  • डेवलपर ने लेन-देन की सीमा पार कर ली है.

अपने API प्रॉक्सी में नीति अटैच करने के तरीके के बारे में जानकारी के लिए, देखें एपीआई प्रॉक्सी पर कमाई करने की सीमाएं लागू करें.

<MonetizationLimitsCheck> एलिमेंट

इससे MonetizationlimitsCheck नीति के बारे में जानकारी मिलती है.

डिफ़ॉल्ट वैल्यू लागू नहीं
ज़रूरी है? ज़रूरी है
स्ट्रीम किस तरह की है कॉम्प्लेक्स टाइप
पैरंट एलिमेंट लागू नहीं
चाइल्ड एलिमेंट <DisplayName>
<FaultResponse>
<IgnoreUnresolvedVariables>
<Variables>

नीचे दी गई टेबल में, <MonetizationLimitsCheck> के चाइल्ड एलिमेंट की खास जानकारी दी गई है:

चाइल्ड एलिमेंट ज़रूरी है? ब्यौरा
<DisplayName> वैकल्पिक नीति के लिए, पसंद के मुताबिक नाम.
<FaultResponse> वैकल्पिक अनुरोध करने वाले क्लाइंट को जवाब में भेजा गया मैसेज बताता है कि गलती को बढ़ा दिया गया है.
<IgnoreUnresolvedVariables> वैकल्पिक यह तय करता है कि बिना हल वाला वैरिएबल मिलने पर प्रोसेसिंग बंद हो जाती है या नहीं.
<Variables> वैकल्पिक कमाई करने से जुड़ी सीमाओं की जांच करने के लिए, फ़्लो वैरिएबल तय करता है.

<MonetizationLimitsCheck> एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:

सिंटैक्स

<?xml version="1.0" encoding="UTF-8"?>
<MonetizationLimitsCheck async="false" continueOnError="false" enabled="true" name="POLICY_NAME">
    <DisplayName>DISPLAY_NAME</DisplayName>
    <IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables>
    <Variables>
        <Product>VARIABLE_NAME</Product>
    </Variables>
    <FaultResponse>
        <Set>
            <Payload contentType="text/xml">
                <error>
                    <messages>
                        <message>MESSAGE_TEXT</message>
                        <message>MESSAGE_TEXT</message>
                    </messages>
                </error>
            </Payload>
            <StatusCode>HTTP_STATUS</StatusCode>
            <ReasonPhrase>REASON_TEXT</ReasonPhrase>
        </Set>
    </FaultResponse>
</MonetizationLimitsCheck>

उदाहरण

यहां दिए गए उदाहरण में, MonetizationLimitCheck नीति के बारे में बताया गया है:

<?xml version="1.0" encoding="UTF-8"?>
<MonetizationLimitsCheck async="false" continueOnError="false" enabled="true" name="Monetization-Limits-Check">
    <DisplayName>Monetization Limits Check</DisplayName>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <Variables>
        <Product>myproductvar.name</Product>
    </Variables>
	<FaultResponse>
	        <Set>
	            <Payload contentType="text/xml">
	                <error>
	                    <messages>
	                        <message>Developer has reached usage quota</message>
	                        <message>Is Developer Suspended - {monetizationLimits.isDeveloperSuspended} </message>
	                    </messages>
	                </error>
	            </Payload>
	            <StatusCode>403</StatusCode>
	            <ReasonPhrase>Forbidden</ReasonPhrase>
	        </Set>
	</FaultResponse>
 </MonetizationLimitsCheck>

This element has the following attributes that are common to all policies:

Attribute Default Required? Description
name N/A Required

The internal name of the policy. The value of the name attribute can contain letters, numbers, spaces, hyphens, underscores, and periods. This value cannot exceed 255 characters.

Optionally, use the <DisplayName> element to label the policy in the management UI proxy editor with a different, natural-language name.

continueOnError false Optional Set to "false" to return an error when a policy fails. This is expected behavior for most policies. Set to "true" to have flow execution continue even after a policy fails.
enabled true Optional Set to "true" to enforce the policy. Set to "false" to "turn off" the policy. The policy will not be enforced even if it remains attached to a flow.
async   false Deprecated This attribute is deprecated.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

चाइल्ड एलिमेंट का रेफ़रंस

इस सेक्शन में, <MonetizationLimitsCheck> के चाइल्ड एलिमेंट के बारे में बताया गया है.

<DisplayName>

Use in addition to the name attribute to label the policy in the management UI proxy editor with a different, more natural-sounding name.

The <DisplayName> element is common to all policies.

Default Value n/a
Required? Optional. If you omit <DisplayName>, the value of the policy's name attribute is used
Type String
Parent Element <PolicyElement>
Child Elements None

The <DisplayName> element uses the following syntax:

Syntax

<PolicyElement>
  <DisplayName>policy_display_name</DisplayName>
  ...
</PolicyElement>

Example

<PolicyElement>
  <DisplayName>My Validation Policy</DisplayName>
</PolicyElement>

The <DisplayName> element has no attributes or child elements.

<IgnoreUnresolvedVariables>

यह तय करता है कि जब Apigee को कोई समाधान न किया गया वैरिएबल मिलता है, तो नीति को प्रोसेस करना बंद होना चाहिए या नहीं.

डिफ़ॉल्ट वैल्यू सही
ज़रूरी है? वैकल्पिक
स्ट्रीम किस तरह की है बूलियन
पैरंट एलिमेंट <MonetizationLimitsCheck>
चाइल्ड एलिमेंट कोई नहीं

बिना हल वाले वैरिएबल को अनदेखा करने और प्रोसेस जारी रखने के लिए, वैल्यू को true पर सेट करें; नहीं तो false. डिफ़ॉल्ट वैल्यू true है.

<IgnoreUnresolvedVariables> को true पर सेट करना, <MonetizationLimitsCheck> एलिमेंट के continueOnError से true. अगर continueOnError को true पर सेट किया जाता है, तो Apigee इसे अनदेखा नहीं करता है सिर्फ़ वैरिएबल की गड़बड़ियों को छोड़कर बाकी सभी गड़बड़ियां दिखेंगी.

<IgnoreUnresolvedVariables> एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:

सिंटैक्स

<IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables>

उदाहरण

यहां दिए गए उदाहरण में, <IgnoreUnresolvedVariables> को false पर सेट किया गया है:

<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>

<Variables>

उन फ़्लो वैरिएबल के बारे में बताता है जिनसे आप नीति लागू होने के दौरान इकाई या संसाधन के नाम.

आपके पास <Variables> एलिमेंट में सिर्फ़ <Product> एलिमेंट की जानकारी देने का विकल्प होता है. Apigee को यह मिलता है <Product> एलिमेंट में दिए गए फ़्लो वैरिएबल से एपीआई प्रॉडक्ट का नाम. अगर आपको <Variables> एलिमेंट की जानकारी न देने पर, Apigee को डिफ़ॉल्ट रूप से एपीआई प्रॉडक्ट का नाम apiproduct.name कॉन्टेक्स्ट वैरिएबल. एपीआई प्रॉडक्ट का नाम इस्तेमाल करने पर, Apigee को के हिसाब से दर प्लान. साथ ही, कमाई करने की सीमा से जुड़ी जांच करता है.

डिफ़ॉल्ट वैल्यू लागू नहीं
ज़रूरी है? वैकल्पिक
स्ट्रीम किस तरह की है कॉम्प्लेक्स टाइप
पैरंट एलिमेंट <MonetizationLimitsCheck>
चाइल्ड एलिमेंट <Product>

<Variables> एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:

सिंटैक्स

<Variables>
    <Product>VARIABLE_NAME</Product>
</Variables>

उदाहरण

इस उदाहरण में, एपीआई प्रॉडक्ट का नाम, myproductvar.name कस्टम फ़्लो वैरिएबल से लिया गया है जो आपके API प्रॉक्सी फ़्लो में मौजूद है.

<Variables>
    <Product>myproductvar.name</Product>
</Variables>

AssignMessage या JavaScript जैसी नीतियों का इस्तेमाल करके, कस्टम फ़्लो वैरिएबल सेट किए जा सकते हैं.

<Product>

एपीआई प्रॉडक्ट नाम वाले वैरिएबल के बारे में बताता है.

डिफ़ॉल्ट वैल्यू लागू नहीं
ज़रूरी है? वैकल्पिक
स्ट्रीम किस तरह की है स्ट्रिंग
पैरंट एलिमेंट <Variables>
चाइल्ड एलिमेंट कोई नहीं

<Product> एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:

सिंटैक्स

<Product>VARIABLE_NAME</Product>

उदाहरण

इस उदाहरण में, एपीआई प्रॉडक्ट का नाम, myproductvar.name कस्टम फ़्लो वैरिएबल से लिया गया है जो आपके API प्रॉक्सी फ़्लो में मौजूद है.

<Product>myproductvar.name</Product>

AssignMessage या JavaScript जैसी नीतियों का इस्तेमाल करके, कस्टम फ़्लो वैरिएबल सेट किए जा सकते हैं.

<FaultResponse>

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

फ़्लो वैरिएबल

अगर आप <MonetizationLimitsCheck> एलिमेंट के ContinueOnError एट्रिब्यूट को 'सही' के तौर पर मार्क किया गया है, कोई गलती नहीं बताई गई है. इस मामले में, फ़्लो वैरिएबल, mint.limitsViolated, mint.isDeveloperSuspended, और mint.limitsPolicyError अपने-आप सेट हो जाते हैं. इन वैरिएबल का इस्तेमाल इन कामों के लिए किया जा सकता है ज़रूरत पड़ने पर और अपवाद मैनेज करना.