Esta é a documentação do Apigee Edge.
  Acesse
     Documentação da Apigee X. informações
Visão geral
A política MonetizationLimitsCheck permite aplicar limites de monetização em chamadas de API feitas pelo desenvolvedor do app.
Estes são alguns dos casos em que a política é acionada:
- Se um desenvolvedor de apps que acessa a API monetizada não tiver comprado uma assinatura o produto de API associado
 - A conta do desenvolvedor não tem saldo suficiente.
 - O desenvolvedor excedeu o limite de volume de transações.
 
Para informações sobre como anexar a política ao proxy de API, consulte Aplique limites de monetização em proxies de API.
Elemento <MonetizationLimitsCheck>
Especifica a política MonetizationLimitsCheck.
| Valor padrão | N/A | 
| Obrigatório? | Obrigatório | 
| Tipo | Tipo complexo | 
| Elemento pai | N/A | 
| Elemento filho | 
        
          
            <DisplayName><FaultResponse><IgnoreUnresolvedVariables><Variables> | 
    
A tabela a seguir fornece uma descrição de alto nível dos elementos-filhos de <MonetizationLimitsCheck>:
| Elemento filho | Obrigatório? | Descrição | 
|---|---|---|
<DisplayName> | 
Opcional | Um nome personalizado para a política. | 
<FaultResponse> | 
Opcional | Especifica a mensagem de resposta retornada ao cliente solicitante quando a falha é gerada. | 
<IgnoreUnresolvedVariables> | 
Opcional | Determina se o processamento é interrompido quando uma variável não resolvida é encontrada. | 
<Variables> | 
Opcional | Especifica as variáveis de fluxo para verificar os limites de monetização. | 
O elemento <MonetizationLimitsCheck> usa a seguinte sintaxe:
Sintaxe
<?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>
Exemplo
O exemplo a seguir mostra a definição da política MonetizationLimitsCheck:
<?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>
Este elemento tem os seguintes atributos comuns a todas as políticas:
| Atributo | Padrão | Obrigatório? | Descrição | 
|---|---|---|---|
name | 
        N/A | Obrigatório | 
           O nome interno da política. O valor do atributo  Opcionalmente, use o elemento   | 
      
continueOnError | 
        falso | Opcional | Defina como "false" para retornar um erro quando uma política falhar. Esse é o comportamento esperado para a maioria das políticas. Defina como "true" para que a execução do fluxo continue mesmo após a falha de uma política. | 
enabled | 
        verdadeiro | Opcional | Defina como "true" para aplicar a política. Defina como "false" para "turn off" a política. A política não será aplicada mesmo que permaneça vinculada a um fluxo. | 
async   | 
        falso | Descontinuado | Esse atributo está obsoleto. | 
Referência a elementos filhos
Esta seção descreve os elementos filhos de<MonetizationLimitsCheck>.
    
  
 
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
      
    
  
  
  
<DisplayName>
  Use além do atributo name para rotular a política no editor de proxy da IU de gerenciamento com um nome de som diferente e mais natural.
O elemento <DisplayName> é comum a todas as políticas.
| Valor padrão | n/a | 
| Obrigatório? | Opcional. Se você omitir <DisplayName>, o valor do atributo name da política será usado | 
    
| Tipo | String | 
| Elemento pai | <PolicyElement> | 
| Elemento filho | Nenhum | 
O elemento <DisplayName> usa a seguinte sintaxe:
Sintaxe
<PolicyElement> <DisplayName>policy_display_name</DisplayName> ... </PolicyElement>
Exemplo
<PolicyElement> <DisplayName>My Validation Policy</DisplayName> </PolicyElement>
O elemento <DisplayName> não tem atributos ou elementos filhos.
<IgnoreUnresolvedVariables> 
Determina se o processamento da política deve ser interrompido quando a Apigee encontra uma variável não resolvida.
| Valor padrão | True | 
| Obrigatório? | Opcional | 
| Tipo | Booleano | 
| Elemento pai | 
        
          
            <MonetizationLimitsCheck> | 
    
| Elemento filho | Nenhum | 
Para ignorar variáveis não resolvidas e continuar o processamento, defina o valor como true.
   caso contrário, false. O valor padrão é true.
Definir <IgnoreUnresolvedVariables> como true é diferente de configurar o elemento <MonetizationLimitsCheck>
  continueOnError para true. Se você definir continueOnError como true, a Apigee ignorará as
  somente os erros de variáveis, mas todos os erros.
O elemento <IgnoreUnresolvedVariables> usa a seguinte sintaxe:
Sintaxe
<IgnoreUnresolvedVariables>[true|false]</IgnoreUnresolvedVariables>
Exemplo
O exemplo a seguir define <IgnoreUnresolvedVariables> como false:
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Variables> 
Especifica as variáveis de fluxo das quais você quer buscar o entidades ou recursos durante a execução da política.
É possível especificar apenas o elemento <Product> no <Variables>. A Apigee
  o nome do produto da API da variável de fluxo especificada no elemento <Product>. Se você
  não especificar o elemento <Variables>, a Apigee, por padrão, conseguirá o nome do produto da API da
  apiproduct.name. Ao usar o nome do produto da API, a Apigee
o plano de preços correspondente para o produto e realiza a verificação dos limites de monetização.
| Valor padrão | N/A | 
| Obrigatório? | Opcional | 
| Tipo | Tipo complexo | 
| Elemento pai | 
        
          
            <MonetizationLimitsCheck> | 
    
| Elemento filho | 
        
          
            <Product> | 
    
O elemento <Variables> usa a seguinte sintaxe:
Sintaxe
<Variables>
    <Product>VARIABLE_NAME</Product>
</Variables>Exemplo
O exemplo a seguir usa o nome do produto da API da variável de fluxo personalizado myproductvar.name.
    presentes no fluxo do proxy de API.
<Variables> <Product>myproductvar.name</Product> </Variables>
É possível definir variáveis de fluxo personalizadas usando políticas como AssignMessage ou JavaScript.
<Product> 
Especifica a variável que tem o nome do produto da API.
| Valor padrão | N/A | 
| Obrigatório? | Opcional | 
| Tipo | String | 
| Elemento pai | 
        
          
            <Variables> | 
    
| Elemento filho | Nenhuma | 
O elemento <Product> usa a seguinte sintaxe:
Sintaxe
<Product>VARIABLE_NAME</Product>
Exemplo
O exemplo a seguir usa o nome do produto da API da variável de fluxo personalizado myproductvar.name.
  presentes no fluxo do proxy de API.
<Product>myproductvar.name</Product>
É possível definir variáveis de fluxo personalizadas usando políticas como AssignMessage ou JavaScript.
<FaultResponse> 
Define a mensagem de resposta retornada ao cliente solicitante caso uma falha seja gerada. É possível personalizar a resposta mensagens com base nos seus requisitos. Para mais informações sobre o elemento e todos os seus elementos filhos, consulte FaultResponse.
Variáveis de fluxo
Se você definir o objeto <MonetizationLimitsCheck>
  ContinueOnError como verdadeiro, nenhuma falha é gerada. Nesse caso, o
  variáveis de fluxo, mint.limitsViolated, mint.isDeveloperSuspended, e
  mint.limitsPolicyError são definidas automaticamente. Essas variáveis podem ser usadas para
  e realizar o processamento adicional das exceções, se necessário.