Referência de erro de política

Esta página se aplica à Apigee e à Apigee híbrida.

Confira a documentação da Apigee Edge.

Política AccessControl

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
accesscontrol.IPDeniedAccess 403 O endereço IP do cliente, ou um endereço IP transmitido na solicitação de API, corresponde a um endereço IP especificado no elemento <SourceAddress> dentro do elemento <MatchRule> da política de controle de acesso e o atributo action do elemento <MatchRule> está definido como DENY.
accesscontrol.InvalidIPAddressInVariable 500 A variável de fluxo em <ClientIPVariable> contém um endereço IP inválido.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte Variáveis específicas para erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "IPDeniedAccess"
acl.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. acl.AC-AllowAccess.failed = true

Exemplo de resposta com falha

{
   "fault":{
     "faultstring":"Access Denied for client ip : 52.211.243.3"
      "detail":{
         "errorcode":"steps.accesscontrol.IPDeniedAccess"
      }
   }
}

Exemplo de regra de falha

<FaultRule name="IPDeniedAccess">
    <Step>
        <Name>AM-IPDeniedAccess</Name>
        <Condition>(fault.name Matches "IPDeniedAccess") </Condition>
    </Step>
    <Condition>(acl.failed = true) </Condition>
</FaultRule>

Política de AccessEntity

Para informações relacionadas, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Nenhum.

Erros de implantação

Nome do erro String de falha Status HTTP Ocorre quando
InvalidEntityType Invalid type [entity_type] in ACCESSENTITYStepDefinition [policy_name] N/A O tipo de entidade usado precisa ser um dos tipos compatíveis.

Política AssignMessage

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.assignmessage.SetVariableFailed 500 Não foi possível definir uma variável na política. Veja a string de falha para o nome da variável não resolvida.
steps.assignmessage.VariableOfNonMsgType 500

Esse erro ocorrerá se o atributo source no elemento <Copy> estiver definido como uma variável diferente do tipo message.

As variáveis do tipo Message representam solicitações e respostas HTTP completas. As variáveis integradas do fluxo da Apigee request, response e message são do tipo "menssagem". Para saber mais sobre variáveis de mensagens, consulte a referência de variáveis.

steps.assignmessage.UnresolvedVariable 500

Esse erro ocorrerá se uma variável especificada na política AssignMessage:

  • Fora do escopo (não disponível no fluxo específico em que a política está sendo executada)
  • ou
  • Não é possível resolver (não está definida)

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidIndex Se o índice especificado nos elementos <Copy> e/ou <Remove> da política AssignMessage for 0 ou um número negativo, a implantação do proxy da API falhará.
InvalidVariableName Se o elemento filho <Name> estiver vazio ou não for especificado no elemento <AssignVariable>, a implantação do proxy de API falhará porque não há um nome de variável válido para atribuir um valor. Um nome de variável válido é obrigatório.
InvalidPayload Um payload especificado na política é inválido.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="FAULT_NAME" FAULT_NAME é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "UnresolvedVariable"
assignmessage.POLICY_NAME.failed POLICY_NAME é o nome especificado pelo usuário da política que causou a falha. assignmessage.AM-SetResponse.failed = true

Exemplo de resposta de erro

{  
   "fault":{  
      "detail":{  
         "errorcode":"steps.assignmessage.VariableOfNonMsgType"
      },
      "faultstring":"AssignMessage[AM-SetResponse]: value of variable is not of type Message"
   }
}

Exemplo de regra de falha

<FaultRule name="Assign Message Faults">
    <Step>
        <Name>AM-CustomNonMessageTypeErrorResponse</Name>
        <Condition>(fault.name Matches "VariableOfNonMsgType") </Condition>
    </Step>
    <Step>
        <Name>AM-CustomSetVariableErrorResponse</Name>
        <Condition>(fault.name = "SetVariableFailed")</Condition>
    </Step>
    <Condition>(assignmessage.failed = true) </Condition>
</FaultRule>

Política BasicAuthentication

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com erros. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.basicauthentication.InvalidBasicAuthenticationSource 500 Em um decodificação quando a string codificada Base64 recebida não contém um valor válido ou o cabeçalho é inválido (por exemplo, não começa com Basic).
steps.basicauthentication.UnresolvedVariable 500 As variáveis de origem necessárias para decodificar ou codificar não estão presentes. Este erro só poderá ocorrer se IgnoreUnresolvedVariables for falso.

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Ocorre quando Correção
UserNameRequired O elemento <User> precisa estar presente na operação nomeada.
PasswordRequired O elemento <Password> precisa estar presente na operação nomeada.
AssignToRequired O elemento <AssignTo> precisa estar presente na operação nomeada.
SourceRequired O elemento <Source> precisa estar presente na operação nomeada.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "UnresolvedVariable"
BasicAuthentication.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. BasicAuthentication.BA-Authenticate.failed = true

Exemplo de resposta de erro

{  
   "fault":{  
      "detail":{  
         "errorcode":"steps.basicauthentication.UnresolvedVariable"
      },
      "faultstring":"Unresolved variable : request.queryparam.password"
   }
}

Exemplo de regra de falha

<FaultRule name="Basic Authentication Faults">
    <Step>
        <Name>AM-UnresolvedVariable</Name>
        <Condition>(fault.name Matches "UnresolvedVariable") </Condition>
    </Step>
    <Step>
        <Name>AM-AuthFailedResponse</Name>
        <Condition>(fault.name = "InvalidBasicAuthenticationSource")</Condition>
    </Step>
    <Condition>(BasicAuthentication.BA-Authentication.failed = true) </Condition>
</FaultRule>

Política DecodeJWS

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Ocorre quando
steps.jws.FailedToDecode 401 A política não conseguiu decodificar o JWS. A JWS está possivelmente corrompida.
steps.jws.FailedToResolveVariable 401 Ocorre quando a variável de fluxo especificada no elemento <Source> da política não existe.
steps.jws.InvalidClaim 401 Uma falta de reivindicação ou incompatibilidade de reivindicação ou falta de cabeçalho ou cabeçalho incompatível.
steps.jws.InvalidJsonFormat 401 JSON inválido encontrado no cabeçalho JWS.
steps.jws.InvalidJws 401 Esse erro ocorre quando a verificação de assinatura do JWS falha.
steps.jws.InvalidPayload 401 O payload do JWS é inválido.
steps.jws.InvalidSignature 401 <DetachedContent> é omitido e o JWS tem um payload de conteúdo separado.
steps.jws.MissingPayload 401 O payload do JWS está ausente.
steps.jws.NoAlgorithmFoundInHeader 401 Ocorre quando a JWS omite o cabeçalho do algoritmo.
steps.jws.UnknownException 401 Ocorreu uma exceção desconhecida.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Erro de nome Ocorre quando
InvalidAlgorithm Os únicos valores válidos são: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512.

EmptyElementForKeyConfiguration

FailedToResolveVariable

InvalidConfigurationForActionAndAlgorithmFamily

InvalidConfigurationForVerify

InvalidEmptyElement

InvalidFamiliesForAlgorithm

InvalidKeyConfiguration

InvalidNameForAdditionalClaim

InvalidNameForAdditionalHeader

InvalidPublicKeyId

InvalidPublicKeyValue

InvalidSecretInConfig

InvalidTypeForAdditionalClaim

InvalidTypeForAdditionalHeader

InvalidValueForElement

InvalidValueOfArrayAttribute

InvalidVariableNameForSecret

MissingConfigurationElement

MissingElementForKeyConfiguration

MissingNameForAdditionalClaim

MissingNameForAdditionalHeader

Outros erros de implantação possíveis.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "TokenExpired"
JWS.failed Todas as políticas de JWS definem a mesma variável em caso de falha. jws.JWS-Policy.failed = true

Exemplo de resposta de erro

Para gerenciar erros, a prática recomendada é interceptar a parte errorcode da resposta de erro. Não confie no texto em faultstring, porque ele pode mudar.

Exemplo de regra de falha

<FaultRules>
    <FaultRule name="JWS Policy Errors">
        <Step>
            <Name>JavaScript-1</Name>
            <Condition>(fault.name Matches "TokenExpired")</Condition>
        </Step>
        <Condition>JWS.failed=true</Condition>
    </FaultRule>
</FaultRules>

Política chamada de retorno

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falhas para lidar com elas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.jwt.FailedToDecode 401 Ocorre quando a política não pode decodificar o JWT. O JWT pode estar incorreto, inválido ou não descodificável.
steps.jwt.FailedToResolveVariable 401 Ocorre quando a variável de fluxo especificada no elemento <Source> da política não existe.
steps.jwt.InvalidToken 401 Ocorre quando a variável de fluxo especificada no elemento <Source> da política está fora do escopo ou não pode ser resolvida.

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidEmptyElement Ocorre quando a variável do fluxo que contém o JWT a ser decodificada não é especificada no elemento <Source> da política.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "InvalidToken"
JWT.failed Todas as políticas do JWT definem a mesma variável em caso de falha. JWT.failed = true

Exemplo de resposta de erro

Códigos de falha de política JWT

Para gerenciar erros, a prática recomendada é interceptar a parte errorcode da resposta de erro. Não confie no texto em faultstring, porque ele pode mudar.

Exemplo de regra de falha

    <FaultRules>
        <FaultRule name="JWT Policy Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "InvalidToken")</Condition>
            </Step>
            <Condition>JWT.failed=true</Condition>
        </FaultRule>
    </FaultRules>
    

Política ExtractVariables

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.extractvariables.ExecutionFailed 500

Esse erro ocorre quando:

  • O payload de entrada (JSON, XML) está vazio.
  • A entrada (JSON, XML etc.) passada para a política é inválida ou está incorreta.
steps.extractvariables.ImmutableVariable 500 Uma variável usada na política é imutável. A política não conseguiu definir essa variável. N/A
steps.extractvariables.InvalidJSONPath 500 Esse erro ocorrerá se um caminho JSON inválido for usado no elemento JSONPath da política. Por exemplo, se um payload JSON não tiver o objeto Name, mas você especificar Name como o caminho na política, esse erro ocorrerá.
steps.extractvariables.JsonPathParsingFailure 500 Esse erro ocorre quando a política não consegue analisar um caminho JSON e extrair dados da variável de fluxo especificada no elemento Source. Normalmente, isso acontece se a variável de fluxo especificada no elemento Source não existir no fluxo atual.
steps.extractvariables.SetVariableFailed 500 Esse erro ocorre se a política não puder definir o valor como uma variável. O erro geralmente acontece se você tentar atribuir valores a diversas variáveis com nomes que começam com as mesmas palavras em um formato aninhado separado por ponto.
steps.extractvariables.SourceMessageNotAvailable 500 Esse erro ocorrerá se a variável message especificada no elemento Source da política for:
  • Fora do escopo (não disponível no fluxo específico em que a política está sendo executada) ou
  • Não é possível resolver (não está definida)
steps.extractvariables.UnableToCast 500 Esse erro ocorre se a política não conseguiu converter o valor extraído para uma variável. Normalmente, isso ocorre quando você tenta definir o valor de um tipo de dados para uma variável de outro tipo de dados.

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
NothingToExtract Se a política não tiver nenhum dos elementos URIPath, QueryParam, Header, FormParam, XMLPayload ou JSONPayload, a implantação do proxy da API falha, porque não há nada para extrair.
NONEmptyPrefixMappedToEmptyURI Esse erro ocorre se a política tiver um prefixo definido no elemento Namespace no elemento XMLPayload, mas nenhum URI será definido.
DuplicatePrefix Esse erro ocorre se a política tiver o mesmo prefixo definido mais de uma vez no elemento Namespace no elemento XMLPayload.
NoXPathsToEvaluate Se a política não tiver o elemento XPath dentro do elemento XMLPayload, a implantação do proxy de API falhará com este erro.
EmptyXPathExpression Se a política tiver uma expressão XPath vazia no elemento XMLPayload, a implantação do proxy da API falhará.
NoJSONPathsToEvaluate Se a política não tiver o elemento JSONPath dentro do elemento JSONPayload, a implantação do proxy de API falhará com este erro.
EmptyJSONPathExpression Se a política tiver uma expressão XPath vazia no elemento XMLPayload, a implantação do proxy da API falhará.
MissingName Se a política não tiver o atributo name em nenhum dos elementos da política, como QueryParam, Header, FormParam ou Variable, quando necessário, a implantação do proxy da API falhará.
PatternWithoutVariable Se a política não tiver uma variável especificada no elemento Pattern, a implantação do proxy de API falhará. O elemento Pattern requer o nome da variável em que os dados extraídos serão armazenados.
CannotBeConvertedToNodeset Se a política tiver uma expressão XPath em que o tipo Variable é definido como nodeset, mas a expressão não pode ser convertida em nodeset, a implantação do proxy de API falhará.
JSONPathCompilationFailed A política não conseguiu compilar um caminho JSON especificado. N/A
InstantiationFailed Não foi possível instanciar a política. N/A
XPathCompilationFailed Se o prefixo ou o valor usado no elemento XPath não fizer parte de nenhum dos namespaces declarados na política, a implantação do proxy de API falhará.
InvalidPattern Se a definição de elemento Pattern for inválida em qualquer um dos elementos como URIPath, QueryParam, Header, FormParam, XMLPayload ou JSONPayload na política, a implantação do proxy de API falhará.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "SourceMessageNotAvailable"
extractvariables.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. extractvariables.EV-ParseJsonResponse.failed = true

Exemplo de resposta de erro

{
   "fault":{
      "detail":{
         "errorcode":"steps.extractvariables.SourceMessageNotAvailable"
      },
      "faultstring":"request message is not available for ExtractVariable: EV-ParseJsonResponse"
   }
}

Exemplo de regra de falha

<FaultRule name="Extract Variable Faults">
    <Step>
        <Name>AM-CustomErrorMessage</Name>
        <Condition>(fault.name = "SourceMessageNotAvailable") </Condition>
    </Step>
    <Condition>(extractvariables.EM-ParseJsonResponse.failed = true) </Condition>
</FaultRule>

Política GenerateJWS

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Ocorre quando
steps.jws.GenerationFailed 401 A política não pôde gerar o JWS.
steps.jws.InsufficientKeyLength 401 Para uma chave menor que 32 bytes para o algoritmo HS256
steps.jws.InvalidClaim 401 Uma falta de reivindicação ou incompatibilidade de reivindicação ou falta de cabeçalho ou cabeçalho incompatível.
steps.jws.InvalidCurve 401 A curva especificada pela chave não é válida para o algoritmo de curva elíptica.
steps.jws.InvalidJsonFormat 401 JSON inválido encontrado no cabeçalho JWS.
steps.jws.InvalidPayload 401 O payload do JWS é inválido.
steps.jws.InvalidSignature 401 <DetachedContent> é omitido e o JWS tem um payload de conteúdo separado.
steps.jws.KeyIdMissing 401 A política de verificação usa um JWKS como fonte para chaves públicas, mas a JWS assinada não inclui uma propriedade kid no cabeçalho.
steps.jws.KeyParsingFailed 401 Não foi possível analisar a chave pública com as informações de chave fornecidas.
steps.jws.MissingPayload 401 O payload do JWS está ausente.
steps.jws.NoAlgorithmFoundInHeader 401 Ocorre quando a JWS omite o cabeçalho do algoritmo.
steps.jws.SigningFailed 401 Em GenerateJWS, para uma chave menor que o tamanho mínimo dos algoritmos HS384 ou HS512
steps.jws.UnknownException 401 Ocorreu uma exceção desconhecida.
steps.jws.WrongKeyType 401 Tipo incorreto de chave especificado. Por exemplo, se você especificar uma chave RSA para um algoritmo de curva elíptica ou uma chave de curva para um algoritmo RSA.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Erro de nome Ocorre quando
InvalidAlgorithm Os únicos valores válidos são: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512.

EmptyElementForKeyConfiguration

FailedToResolveVariable

InvalidConfigurationForActionAndAlgorithmFamily

InvalidConfigurationForVerify

InvalidEmptyElement

InvalidFamiliesForAlgorithm

InvalidKeyConfiguration

InvalidNameForAdditionalClaim

InvalidNameForAdditionalHeader

InvalidPublicKeyId

InvalidPublicKeyValue

InvalidSecretInConfig

InvalidTypeForAdditionalClaim

InvalidTypeForAdditionalHeader

InvalidValueForElement

InvalidValueOfArrayAttribute

InvalidVariableNameForSecret

MissingConfigurationElement

MissingElementForKeyConfiguration

MissingNameForAdditionalClaim

MissingNameForAdditionalHeader

Outros erros de implantação possíveis.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "TokenExpired"
JWS.failed Todas as políticas de JWS definem a mesma variável em caso de falha. jws.JWS-Policy.failed = true

Exemplo de resposta de erro

Para gerenciar erros, a prática recomendada é interceptar a parte errorcode da resposta de erro. Não confie no texto em faultstring, porque ele pode mudar.

Exemplo de regra de falha

<FaultRules>
    <FaultRule name="JWS Policy Errors">
        <Step>
            <Name>JavaScript-1</Name>
            <Condition>(fault.name Matches "TokenExpired")</Condition>
        </Step>
        <Condition>JWS.failed=true</Condition>
    </FaultRule>
</FaultRules>

Política GenerateJWT

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falhas para lidar com elas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Ocorre quando
steps.jwt.AlgorithmInTokenNotPresentInConfiguration 401 Ocorre quando a política de verificação tem vários algoritmos.
steps.jwt.AlgorithmMismatch 401 O algoritmo especificado na política de geração não corresponde ao esperado na política de verificação. Os algoritmos especificados precisam corresponder.
steps.jwt.EncryptionFailed 401 Falha na criação de um JWT criptografado por um motivo não específico
steps.jwt.FailedToDecode 401 A política não conseguiu decodificar o JWT. É possível que o JWT esteja corrompido.
steps.jwt.GenerationFailed 401 A política não pôde gerar o JWT.
steps.jwt.InsufficientKeyLength 401 Para uma chave com menos de 32 bytes para o algoritmo HS256, menos de 48 bytes para o algoritmo HS386 e menos de 64 bytes para o algoritmo HS512.
steps.jwt.InvalidClaim 401 Uma falta de reivindicação ou incompatibilidade de reivindicação ou falta de cabeçalho ou cabeçalho incompatível.
steps.jwt.InvalidConfiguration 401 Os elementos <Algorithm> e <Algorithms> estão presentes.
steps.jwt.InvalidCurve 401 A curva especificada pela chave não é válida para o algoritmo de curva elíptica.
steps.jwt.InvalidJsonFormat 401 JSON inválido encontrado no cabeçalho ou payload.
steps.jwt.InvalidPasswordKey 401 A chave especificada não atendeu aos requisitos.
steps.jwt.InvalidPrivateKey 401 A chave especificada não atendeu aos requisitos.
steps.jwt.InvalidPublicKey 401 A chave especificada não atendeu aos requisitos.
steps.jwt.InvalidSecretKey 401 A chave especificada não atendeu aos requisitos.
steps.jwt.InvalidToken 401 Esse erro ocorre quando a verificação de assinatura do JWT falha.
steps.jwt.JwtAudienceMismatch 401 A declaração de público falhou na verificação do token.
steps.jwt.JwtIssuerMismatch 401 A declaração do emissor falhou na verificação do token.
steps.jwt.JwtSubjectMismatch 401 A declaração do assunto falhou na verificação do token.
steps.jwt.KeyIdMissing 401 A política de verificação usa um JWKS como fonte para chaves públicas, mas o JWT assinado não inclui uma propriedade kid no cabeçalho.
steps.jwt.KeyParsingFailed 401 Não foi possível analisar a chave pública com as informações de chave fornecidas.
steps.jwt.NoAlgorithmFoundInHeader 401 Ocorre quando o JWT não contém cabeçalho de algoritmo.
steps.jwt.NoMatchingPublicKey 401 A política de verificação usa uma JWKS como fonte para chaves públicas, mas o kid no JWT assinado não está listado na JWKS.
steps.jwt.SigningFailed 401 Em GenerateJWT, para uma chave menor que o tamanho mínimo para os algoritmos HS384 ou HS512
steps.jwt.TokenExpired 401 A política tenta verificar um token expirado.
steps.jwt.TokenNotYetValid 401 O token ainda não é válido.
steps.jwt.UnhandledCriticalHeader 401 Um cabeçalho encontrado pela política de verificação de JWT no cabeçalho crit não está listado em KnownHeaders.
steps.jwt.UnknownException 401 Ocorreu uma exceção desconhecida.
steps.jwt.WrongKeyType 401 Tipo incorreto de chave especificado. Por exemplo, se você especificar uma chave RSA para um algoritmo de curva elíptica ou uma chave de curva para um algoritmo RSA.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidNameForAdditionalClaim A implantação falhará se a reivindicação usada no elemento filho <Claim> do elemento <AdditionalClaims> é um dos seguintes nomes registrados: kid, iss, sub, aud, iat, exp, nbf ou jti.
InvalidTypeForAdditionalClaim Se a declaração usada no elemento filho <Claim> do elemento <AdditionalClaims> não for do tipo string, number, boolean ou map, a implantação falhará.
MissingNameForAdditionalClaim Se o nome da declaração não for especificado no elemento filho <Claim> do elemento <AdditionalClaims>, a implantação falhará.
InvalidNameForAdditionalHeader Esse erro ocorre quando o nome da declaração usado no elemento filho <Claim> do elemento <AdditionalClaims> é alg ou typ.
InvalidTypeForAdditionalHeader Se o tipo de declaração usado no elemento filho <Claim> do elemento <AdditionalClaims> não for do tipo string, number, boolean ou map, a implantação falhará.
InvalidValueOfArrayAttribute Este erro ocorre quando o valor do atributo de matriz no elemento filho <Claim> do elemento <AdditionalClaims> não está definido como true ou false.
InvalidConfigurationForActionAndAlgorithm Se o elemento <PrivateKey> é usado com os algoritmos da família HS ou o elemento <SecretKey> é usado com os algoritmos da família RSA, a implantação falhará.
InvalidValueForElement Se o valor especificado no elemento <Algorithm> não for um valor compatível, a implantação falhará.
MissingConfigurationElement Esse erro ocorrerá se o elemento <PrivateKey> não for usado com algoritmos de família RSA ou se o elemento <SecretKey> não for usado com algoritmos da família HS.
InvalidKeyConfiguration Se o elemento filho <Value> não estiver definido nos elementos <PrivateKey> ou <SecretKey>, a implantação falhará.
EmptyElementForKeyConfiguration Se o atributo de referência do elemento filho <Value> dos elementos <PrivateKey> ou <SecretKey> estiver vazio ou não especificado, a implantação falhará.
InvalidVariableNameForSecret Esse erro ocorrerá se o nome da variável de fluxo especificado no atributo ref do elemento filho <Value> dos elementos <PrivateKey> ou <SecretKey> não incluir o prefixo privado ((private.)).
InvalidSecretInConfig Esse erro ocorrerá se o elemento filho <Value> dos elementos <PrivateKey> ou <SecretKey> não contiver o prefixo privado (private.).
InvalidTimeFormat Se o valor especificado no elemento <NotBefore> não usar um formato compatível, a implantação falhará.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "InvalidToken"
JWT.failed Todas as políticas do JWT definem a mesma variável em caso de falha. JWT.failed = true

Exemplo de resposta de erro

Códigos de falha de política JWT

Para gerenciar erros, a prática recomendada é interceptar a parte errorcode da resposta de erro. Não confie no texto em faultstring, porque ele pode mudar.

Exemplo de regra de falha

    <FaultRules>
        <FaultRule name="JWT Policy Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "InvalidToken")</Condition>
            </Step>
            <Condition>JWT.failed=true</Condition>
        </FaultRule>
    </FaultRules>
    

Política de destaque de Java

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.javacallout.ExecutionError 500 Ocorre quando o código Java gera uma exceção ou retorna nulo durante a execução de um JavaCallout policy.

Erros na implantação

Esses erros podem ocorrer quando o proxy que contém a política é implantado.

Nome do erro String de falha Status HTTP Ocorre quando
ResourceDoesNotExist Resource with name [name] and type [type] does not exist N/A O arquivo especificado no elemento <ResourceURL> não existe.
JavaCalloutInstantiationFailed Failed to instantiate the JavaCallout Class [classname] N/A O arquivo de classe especificado no elemento <ClassName> não está no jar.
IncompatibleJavaVersion Failed to load java class [classname] definition due to - [reason] N/A Consulte string de falha. As versões Java compatíveis incluem: Oracle JDK 7/8 e OpenJDK 7/8
JavaClassNotFoundInJavaResource Failed to find the ClassName in java resource [jar_name] - [class_name] N/A Consulte string de falha.
JavaClassDefinitionNotFound Failed to load java class [class_name] definition due to - [reason] N/A Consulte string de falha.
NoAppropriateConstructor No appropriate constructor found in JavaCallout class [class_name] N/A Consulte string de falha.
NoResourceForURL Could not locate a resource with URL [string] N/A Consulte string de falha.

Variáveis de falha

Essas variáveis são definidas quando esta política aciona um erro. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "ExecutionError"
javacallout.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. javacallout.JC-GetUserData.failed = true

Exemplo de resposta de erro

{  
   "fault":{  
      "faultstring":"Failed to execute JavaCallout. [policy_name]",
      "detail":{  
         "errorcode":"javacallout.ExecutionError"
      }
   }
}

Exemplo de regra de falha

<FaultRule name="JavaCalloutFailed">
    <Step>
        <Name>AM-JavaCalloutError</Name>
    </Step>
    <Condition>(fault.name Matches "ExecutionError") </Condition>
</FaultRule>

Política de JavaScript

Nesta seção, descrevemos os códigos de falha e as mensagens de erro retornadas e as variáveis com falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.javascript.ScriptExecutionFailed 500 A política JavaScript pode gerar vários tipos diferentes de erros ScriptExecutionFailed. Os tipos de erros vistos com mais frequência incluem RangeError, ReferenceError, SyntaxError, TypeError, e URIError.
steps.javascript.ScriptExecutionFailedLineNumber 500 Ocorreu um erro no código JavaScript. Veja a string de falha para mais detalhes. N/A
steps.javascript.ScriptSecurityError 500 Ocorreu um erro de segurança quando o JavaScript foi executado. Consulte a string de falha para mais detalhes. N/A

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidResourceUrlFormat Se o formato do URL do recurso especificado no <ResourceURL> ou no elemento <IncludeURL> da política JavaScript for inválido, a implantação do proxy da API falhará.
InvalidResourceUrlReference Se os elementos <ResourceURL> ou <IncludeURL> fizerem referência a um arquivo JavaScript que não existe, a implantação do proxy da API falhará. O arquivo de origem referenciado precisa existir no proxy, no ambiente ou no nível da organização da API.
WrongResourceType Esse erro ocorrerá durante a implantação se os elementos <ResourceURL> ou <IncludeURL> da política JavaScript se referirem a qualquer tipo de recurso diferente de jsc (arquivo JavaScript).
NoResourceURLOrSource A implantação da política JavaScript pode falhar com esse erro se o elemento <ResourceURL> não for declarado ou se o URL do recurso não estiver definido nesse elemento. O elemento <ResourceURL> é obrigatório. Ou o elemento <IncludeURL> é declarado, mas o URL do recurso não está definido nesse elemento. O elemento <IncludeURL> é opcional, mas, se declarado, o URL do recurso precisa ser especificado no elemento <IncludeURL>.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "ScriptExecutionFailed"
javascript.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. javascript.JavaScript-1.failed = true

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "Execution of SetResponse failed with error: Javascript runtime error: "ReferenceError: "status" is not defined. (setresponse.js:6)\"",
    "detail": {
      "errorcode": "steps.javascript.ScriptExecutionFailed"
    }
  }
}

Exemplo de regra de falha

<FaultRule name="JavaScript Policy Faults">
    <Step>
        <Name>AM-CustomErrorResponse</Name>
        <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition>
    </Step>
    <Condition>(javascript.JavaScript-1.failed = true) </Condition>
</FaultRule>

Política JSONThreatProtection

Nesta seção, descrevemos os códigos de falha e as mensagens de erro retornadas e as variáveis com falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.jsonthreatprotection.ExecutionFailed 500 A política JSONThreatProtection pode gerar vários tipos diferentes de erros ExecutionFailed. A maioria desses erros ocorre quando um limite específico definido na política é excedido. Esses tipos de erros incluem: tamanho do nome de entrada do objeto, contagem de entradas de objetos, contagem de elementos da matriz, profundidade do contêiner e tamanho do valor da string. Esse erro também ocorre quando o payload contém um objeto JSON inválido.
steps.jsonthreatprotection.SourceUnavailable 500 Esse erro ocorrerá se a variável message especificada no elemento <Source> for:
  • Fora do escopo (não disponível no fluxo específico em que a política está sendo executada)
  • Não for um dos valores válidos request, response ou message
steps.jsonthreatprotection.NonMessageVariable 500 Esse erro ocorrerá se o elemento <Source> estiver definido como uma variável que não é do tipo message.

Erros na implantação

Nenhum.

Variáveis de falha

Essas variáveis são definidas quando esta política aciona um erro. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "SourceUnavailable"
jsonattack.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. jsonattack.JTP-SecureRequest.failed = true

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "JSONThreatProtection[JPT-SecureRequest]: Execution failed. reason: JSONThreatProtection[JTP-SecureRequest]: Exceeded object entry name length at line 2",
    "detail": {
      "errorcode": "steps.jsonthreatprotection.ExecutionFailed"
    }
  }
}

Exemplo de regra de falha

<FaultRule name="JSONThreatProtection Policy Faults">
    <Step>
        <Name>AM-CustomErrorResponse</Name>
        <Condition>(fault.name Matches "ExecutionFailed") </Condition>
    </Step>
    <Condition>(jsonattack.JPT-SecureRequest.failed = true) </Condition>
</FaultRule>

Os tipos de políticas JSONThreatProtection definem os seguintes códigos de erro:

Política JSONtoXML

Nesta seção, descrevemos os códigos de falha e as mensagens de erro retornadas e as variáveis com falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.jsontoxml.ExecutionFailed 500 O payload de entrada (JSON) está vazio ou a entrada (JSON) transmitida para a política JSON para XML é inválida ou está malformada.
steps.jsontoxml.InCompatibleTypes 500 Esse erro ocorrerá se o tipo da variável definido no elemento <Source> e o elemento <OutputVariable> não forem os mesmos. É obrigatório que o tipo das variáveis contidas no elemento <Source> e no elemento <OutputVariable> seja igual. Os tipos válidos são message e string.
steps.jsontoxml.InvalidSourceType 500 Este erro ocorrerá se o tipo da variável usado para definir o elemento <Source> for inválido. Os tipos válidos de variável são message e string.
steps.jsontoxml.OutputVariableIsNotAvailable 500 Esse erro ocorrerá se a variável especificada no elemento <Source> da política JSON para XML for do tipo string e o elemento <OutputVariable> não for definido. O elemento <OutputVariable> é obrigatório quando a variável definida no elemento <Source> é do tipo string.
steps.jsontoxml.SourceUnavailable 500 Esse erro ocorrerá se a variável message especificada no elemento <Source> da política JSON para XML se enquadrar em uma destas situações:
  • Fora do escopo (não disponível no fluxo específico em que a política está sendo executada) ou
  • Não é possível resolver (não está definida)

Erros na implantação

Nenhum.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "SourceUnavailable"
jsontoxml.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. jsontoxml.JSON-to-XML-1.failed = true

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "JSONToXML[JSON-to-XML-1]: Source xyz is not available",
    "detail": {
      "errorcode": "steps.json2xml.SourceUnavailable"
    }
  }
}

Exemplo de regra de falha

<FaultRule name="JSON To XML Faults">
    <Step>
        <Name>AM-SourceUnavailableMessage</Name>
        <Condition>(fault.name Matches "SourceUnavailable") </Condition>
    </Step>
    <Step>
        <Name>AM-BadJSON</Name>
        <Condition>(fault.name = "ExecutionFailed")</Condition>
    </Step>
    <Condition>(jsontoxml.JSON-to-XML-1.failed = true) </Condition>
</FaultRule>

Política KeyValueMapOperations

Nesta seção, descrevemos os códigos de falha e as mensagens de erro retornadas e as variáveis com falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Corrigir
steps.keyvaluemapoperations.UnsupportedOperationException 500

Esse erro ocorrerá se o atributo mapIdentifier estiver definido como uma string vazia na política KeyValueMapOperations.

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Erro de nome Causa Correção
InvalidIndex Se o atributo index especificado no elemento <Get> da política KeyValueMapOperations for zero ou um número negativo, a implantação do proxy da API falhará. O índice começa em 1, portanto, um índice de zero ou inteiro negativo é considerado inválido.
KeyIsMissing Esse erro ocorrerá se o elemento <Key> estiver completamente ausente ou o elemento <Parameter> estiver ausente no elemento <Key> abaixo do <Entry> do elemento <InitialEntries> de KeyValueMapOperations.
ValueIsMissing Esse erro ocorrerá se o elemento <Value> estiver ausente do elemento <Entry> do elemento <InitialEntries> da política KeyValueMapOperations.

Política MessageLogging

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa
steps.messagelogging.StepDefinitionExecutionFailed 500 Consulte string de falha.
steps.messagelogging.InvalidGoogleCloudLogName 500 Esse erro é gerado quando o LogName não é avaliado para o formato válido de projects/{project}/logs/{logid}.
steps.messagelogging.InvalidJsonMessage 500 Esse erro é gerado quando o valor dos atributos contentType é selecionado como application/json, mas o valor da mensagem real não é uma string JSON válida.
steps.messagelogging.TooManyPendingLoggingRequest 500 Esse erro é gerado quando há mais de 2.500 solicitações pendentes que ainda não foram gravadas no Cloud Logging. O limite de 2.500 é para cada pod de ambiente de execução da Apigee. Por exemplo, se o tráfego for distribuído em duas instâncias de pods do ambiente de execução da Apigee, o limite efetivo será de 5.000 solicitações.
-

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidProtocol A implantação da política MessageLogging poderá falhar com este erro se o protocolo especificado no elemento <Protocol> não for válido. Os protocolos válidos são TCP e UDP. Para enviar mensagens syslog por TLS/SSL, apenas TCP é aceito.
InvalidPort A implantação da política MessageLogging poderá falhar com este erro se o número de porta não for especificado no elemento <Port> ou se ele não for válido. O número da porta precisa ser um número inteiro maior que zero.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "StepDefinitionExecutionFailed"
messagelogging.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. messagelogging.ML-LogMessages.failed = true

Exemplo de resposta de erro

{  
   "fault":{
      "detail":{
         "errorcode":"steps.messagelogging.StepDefinitionExecutionFailed"
      },
      "faultstring":"Execution failed"
   }
}

Exemplo de regra de falha

<FaultRule name="MessageLogging">
    <Step>
        <Name>ML-LogMessages</Name>
        <Condition>(fault.name Matches "StepDefinitionExecutionFailed") </Condition>
    </Step>
    <Condition>(messagelogging.ML-LogMessages.failed = true) </Condition>
</FaultRule>

Política OASValidation

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa
steps.oasvalidation.Failed 400 O corpo da mensagem da solicitação não pode ser validado de acordo com a especificação OpenAPI fornecida.
steps.oasvalidation.Failed 500 Não é possível validar o corpo da mensagem de resposta em relação à especificação OpenAPI fornecida.
steps.oasvalidation.SourceMessageNotAvailable 500

A variável especificada no elemento <Source> da política está fora do escopo ou não pode ser resolvida.

steps.oasvalidation.NonMessageVariable 500

O elemento <Source> é definido como uma variável que não é do tipo message.

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa
ResourceDoesNotExist A especificação OpenAPI referenciada no elemento <OASResource> não existe.
ResourceCompileFailed A especificação OpenAPI incluída na implantação contém erros que impedem que ela seja compilada. Geralmente, isso indica que a especificação não é uma Especificação OpenAPI 3.0 bem formada.
BadResourceURL A especificação OpenAPI referenciada no elemento <OASResource> não pode ser processada. Isso poderá ocorrer se o arquivo não for JSON ou YAML ou se o URL do arquivo não estiver especificado corretamente.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variável Descrição Exemplo
fault.category A categoria da falha. Quando a política rejeitar uma solicitação, ela sempre conterá Step. fault.category = "Step"
fault.name O nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "ResourceDoesNotExist"
fault.reason O motivo da falha. É uma string legível explicando o motivo da falha. OASValidation OAS-1 with resource "oas://my-spec1.yaml": failed with reason: "[ERROR - POST operation not allowed on path '/persons/13'.: []]"
fault.subcategory A subcategoria da falha. Quando a política rejeita uma solicitação, ela sempre conterá OASValidationFailure. fault.subcategory = "OASValidationFailure"
OASValidation.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. OASValidation.myoaspolicy.failed = true

Política PopulateCache

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status do HTTP Ocorre quando
policies.populatecache.EntryCannotBeCached 500 Uma entrada não pode ser armazenada em cache. O objeto de mensagem em cache não é uma instância de uma classe que é serializável.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidCacheResourceReference Esse erro ocorrerá se o elemento <CacheResource> na política PopulateCache for definido como um nome que não existe no ambiente em que o proxy de API está sendo implantado.
CacheNotFound O cache especificado no elemento <CacheResource> não existe.

Variáveis de falha

Essas variáveis são definidas quando esta política aciona um erro. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "EntryCannotBeCached"
populatecache.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. populatecache.POP-CACHE-1.failed = true

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "[entry] can not be cached. Only serializable entries are cached.",
    "detail": {
      "errorcode": "steps.populatecache.EntryCannotBeCached"
    }
  }
}

Exemplo de regra de falha

<FaultRule name="Populate Cache Fault">
    <Step>
        <Name>AM-EntryCannotBeCached</Name>
        <Condition>(fault.name Matches "EntryCannotBeCached") </Condition>
    </Step>
    <Condition>(populatecache.POP-CACHE-1.failed = true) </Condition>
</FaultRule>

Política LookupCache

Nesta seção, descrevemos as mensagens de erro e as variáveis de fluxo que são definidas quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para um proxy. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Prefixo do código de erro

N/A

Erros de execução

Essa política não gera erros de ambiente de execução.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Erro de nome Causa Correção
InvalidCacheResourceReference Esse erro ocorrerá se o elemento <CacheResource> estiver definido como um nome que não existe no ambiente em que o proxy de API está sendo implantado.
InvalidTimeout Se o elemento <CacheLookupTimeoutInSeconds> estiver definido como um número negativo, a implantação do proxy de API falhará.
CacheNotFound Esse erro ocorre quando o cache específico mencionado na mensagem de erro não tiver sido criado em um componente de processador de mensagens específico.

Variáveis de falha

N/A

Exemplo de resposta de erro

N/A

Política InvalidateCache

Nesta seção, descrevemos as mensagens de erro e as variáveis de fluxo que são definidas quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para um proxy. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Prefixo do código de erro

N/A

Erros de execução

Essa política não gera erros de ambiente de execução.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Erro de nome Causa Correção
InvalidCacheResourceReference Esse erro ocorrerá se o elemento <CacheResource> na política InvalidateCache estiver definido como um nome que não exista no ambiente em que o proxy de API está sendo implantado.
CacheNotFound Esse erro ocorre quando o cache específico mencionado na mensagem de erro não tiver sido criado em um componente de processador de mensagens específico.

Variáveis de falha

N/A

Exemplo de resposta de erro

N/A

Política ResponseCache

Nesta seção, descrevemos as mensagens de erro e as variáveis de fluxo que são definidas quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para um proxy. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Prefixo do código de erro

N/A

Erros de execução

Essa política não gera erros de ambiente de execução.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidTimeout Se o elemento <CacheLookupTimeoutInSeconds> de uma política ResponseCache estiver definida como um número negativo, a implantação do proxy da API falhará.
InvalidCacheResourceReference Esse erro ocorrerá se o elemento <CacheResource> na política ResponseCache estiver definido como um nome que não exista no ambiente em que o proxy de API está sendo implantado.
ResponseCacheStepAttachmentNotAllowedReq Este erro ocorre quando a mesma política ResponseCache está anexada a vários caminhos de solicitação em qualquer fluxo de um proxy de API.
ResponseCacheStepAttachmentNotAllowedResp Esse erro ocorre quando a mesma política ResponseCache está anexada a vários caminhos de resposta em qualquer fluxo de um proxy de API.
InvalidMessagePatternForErrorCode Esse erro ocorre quando o elemento <SkipCacheLookup> ou <SkipCachePopulation> em uma política ResponseCache tem uma condição inválida.
CacheNotFound Esse erro ocorre quando o cache específico mencionado na mensagem de erro não tiver sido criado em um componente de processador de mensagens específico.

Variáveis de falha

N/A

Exemplo de resposta de erro

N/A

Política do OAuthV2

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Lançada por operações
steps.oauth.v2.access_token_expired 401 O token de acesso expirou.

VerifyAccessToken
InvalidateToken

steps.oauth.v2.access_token_not_approved 401 O token de acesso foi revogado. VerifyAccessToken
steps.oauth.v2.apiresource_doesnot_exist 401 O recurso solicitado não existe nos produtos de API associados ao token de acesso. VerifyAccessToken
steps.oauth.v2.FailedToResolveAccessToken 500 A política esperada encontrou um token de acesso em uma variável especificada no elemento <AccessToken>, mas não foi possível resolver a variável. GenerateAccessToken
steps.oauth.v2.FailedToResolveAuthorizationCode 500 A política esperada encontrou um código de autorização em uma variável especificada no elemento <Code>, mas não foi possível resolver a variável. GenerateAuthorizationCode
steps.oauth.v2.FailedToResolveClientId 500 A política esperada encontra o ID do cliente em uma variável especificada no elemento <ClientId>, mas não foi possível resolver a variável. GenerateAccessToken
GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
RefreshAccessToken
steps.oauth.v2.FailedToResolveRefreshToken 500 A política esperada encontrou um token de atualização em uma variável especificada no elemento <RefreshToken>, mas não foi possível resolver a variável. RefreshAccessToken
steps.oauth.v2.FailedToResolveToken 500 A política esperada encontrou um token em uma variável especificada no elemento <Tokens>, mas não foi possível resolver a variável.

ValidateToken
InvalidateToken

steps.oauth.v2.InsufficientScope 403 O token de acesso apresentado na solicitação tem um escopo que não corresponde ao escopo especificado na política de verificação de tokens de acesso. Para saber mais sobre o escopo, consulte Como trabalhar com escopos do OAuth2. VerifyAccessToken
steps.oauth.v2.invalid_access_token 401 O token de acesso enviado do cliente é inválido. VerifyAccessToken
steps.oauth.v2.invalid_client 401

Esse nome de erro é retornado quando a propriedade <GenerateResponse> da política é definida como true e o ID do cliente enviado na solicitação é inválido. Verifique se você está usando os valores corretos de secret e de chave do cliente do app para o app do desenvolvedor associado ao seu proxy. Normalmente, esses valores são enviados como um cabeçalho de autorização básica codificado em Base64.

GenerateAccessToken
RefreshAccessToken
steps.oauth.v2.invalid_request 400 Esse nome é usado para vários tipos diferentes de erro, geralmente para parâmetros ausentes ou incorretos enviados na solicitação. Se <GenerateResponse> estiver definido como false, use variáveis de falha (descritas abaixo) para recuperar detalhes sobre o erro, como o nome e a causa da falha. GenerateAccessToken
GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
RefreshAccessToken
steps.oauth.v2.InvalidAccessToken 401 O cabeçalho de autorização não tem a palavra Bearer, que é obrigatória. Por exemplo: Authorization: Bearer your_access_token VerifyAccessToken
steps.oauth.v2.InvalidAPICallAsNo\
ApiProductMatchFound
401

O proxy ou operação de API em execução no momento não está no produto associado ao token de acesso.

Dicas: verifique se o produto associado ao token de acesso está configurado corretamente. Por exemplo, se você usar caracteres curinga em caminhos de recursos, verifique se os caracteres curinga estão sendo usados corretamente. Consulte os detalhes em Como gerenciar produtos da API.

Consulte também Verificação do token de acesso do Oauth2.0 gera um erro "Chamada de API inválida como nenhuma correspondência de apiproduct encontrada" para ver detalhes sobre as causas desse erro.

VerifyAccessToken
steps.oauth.v2.InvalidClientIdentifier 500

Esse nome de erro é retornado quando a propriedade <GenerateResponse> da política é definida como false e o ID do cliente enviado na solicitação é inválido. Verifique se você está usando os valores corretos de secret e de chave do cliente do app para o app do desenvolvedor associado ao seu proxy. Normalmente, esses valores são enviados como um cabeçalho de autorização básica codificado em Base64.

GenerateAccessToken
RefreshAccessToken

steps.oauth.v2.InvalidParameter 500 A política precisa especificar um token de acesso ou um código de autorização, mas não ambos. GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
steps.oauth.v2.InvalidTokenType 500 O elemento <Tokens>/<Token> requer que você especifique o tipo de token (por exemplo, refreshtoken). Se o cliente transmitir o tipo errado, esse erro será gerado. ValidateToken
InvalidateToken
steps.oauth.v2.MissingParameter 500 O tipo de resposta é token, mas nenhum tipo de concessão é especificado. GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
steps.oauth.v2.UnSupportedGrantType 500

O cliente especificou um tipo de concessão que não é compatível com a política (não listada no elemento <SupportedGrantTypes>).

GenerateAccessToken
GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
RefreshAccessToken

Erros de ambiente de execução específicos do token JWT

Os códigos de erro do ambiente de execução e as descrições dos fluxos de token de autenticação do JWT dependem do contexto do fluxo OAuth2:

Códigos de erro para fluxos de geração e atualização de tokens JWT

Para fluxos do OAuth2 que geram ou atualizam tokens JWT, as respostas de erro obedecem às respostas de erro especificadas em RFC6749. Para mais detalhes, consulte a Seção 5.2 Erro de resposta.

Códigos de erro para o fluxo de verificação de token

Os códigos de erro listados na tabela a seguir se aplicam apenas à operação VerifyAccessToken.

Código de falha Status HTTP Causa Lançada por operações
oauth.v2.JWTSigningFailed 401 A política não conseguiu assinar o JWT.

GenerateJWTAccessToken

oauth.v2.InvalidValueForJWTAlgorithm 401 Isso ocorre quando o algoritmo não está presente no token de acesso JWT ou quando o valor não é compatível.

GenerateJWTAccessToken
VerifyJWTAccessToken

oauth.v2.InsufficientKeyLength 401 Na geração do JWT, para uma chave menor que o tamanho mínimo dos algoritmos HS384 ou HS512;

GenerateJWTAccessToken
VerifyJWTAccessToken

oauth.v2.JWTAlgorithmMismatch 401 O algoritmo especificado na política de geração não corresponde ao esperado na política de verificação. Os algoritmos especificados precisam corresponder.

VerifyJWTAccessToken

oauth.v2.JWTDecodingFailed 401 A política não conseguiu decodificar o JWT. É possível que o JWT esteja corrompido.

VerifyJWTAccessToken

oauth.v2.MissingMandatoryClaimsInJWT 401 Ocorre quando as reivindicações obrigatórias não estão presentes no token de acesso do Jwt.

VerifyJWTAccessToken

oauth.v2.InvalidJWTSignature 401 Isso ocorre quando não é possível verificar a assinatura do token de acesso JWT ou quando a assinatura é inválida.

VerifyJWTAccessToken

oauth.v2.InvalidTypeInJWTHeader 401 Ocorre quando o tipo do JWT não é at+Jwt

VerifyJWTAccessToken

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa
InvalidValueForExpiresIn

Para o elemento <ExpiresIn>, os valores válidos são números inteiros positivos e -1.

InvalidValueForRefreshTokenExpiresIn Para o elemento <RefreshTokenExpiresIn>, os valores válidos são números inteiros positivos e -1.
InvalidGrantType Um tipo de concessão inválido é especificado no elemento <SupportedGrantTypes>. Consulte a referência da política para ver uma lista de tipos válidos.
ExpiresInNotApplicableForOperation Verifique se as operações especificadas no elemento <Operations> são compatíveis com a expiração. Por exemplo, a operação VerifyToken não é.
RefreshTokenExpiresInNotApplicableForOperation Verifique se as operações especificadas no elemento <Operations> são compatíveis com a expiração do token de atualização. Por exemplo, a operação VerifyToken não.
GrantTypesNotApplicableForOperation Verifique se os tipos de concessão especificados em <SupportedGrantTypes> são compatíveis com a operação especificada.
OperationRequired

Especifique uma operação nessa política usando o elemento <Operation>.

InvalidOperation

Especifique uma operação válida nesta política usando o elemento <Operation>.

TokenValueRequired Especifique um valor de token <Token> no elemento <Tokens>.

Erros de implantação específicos do token JWT

Esses erros de implantação são específicos às políticas que usam operações de token JWT.

Nome do erro Causa
InvalidValueForAlgorithm O algoritmo especificado no elemento <Algorithm> não está entre a lista de algoritmos disponíveis ou não está presente.
MissingKeyConfiguration Os elementos necessários <SecretKey>, <PrivateKey> ou <PublicKey> estão ausentes, dependendo do algoritmo usado.
EmptyValueElementForKeyConfiguration O elemento filho obrigatório <Value> não está definido nos elementos <PrivateKey>, <PublicKey> ou <SecretKey>
InvalidKeyConfiguration O elemento <PrivateKey> não é usado com algoritmos da família RSA ou o elemento <SecretKey> não é usado com algoritmos da família HS.
EmptyRefAttributeForKeyconfiguration O atributo ref do elemento filho <Value> dos elementos <PrivateKey>, <PublicKey> ou <SecretKey> está vazio.
InvalidVariableNameForKey O nome da variável de fluxo especificada no atributo ref do elemento filho <Value> dos elementos <PrivateKey>, <PublicKey> ou <SecretKey> não contém os Prefixo private.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "invalid_request"
oauthV2.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.GenerateAccesstoken.failed = true
oauthV2.policy_name.fault.name policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.GenerateAccesstoken.fault.name = invalid_request
oauthV2.policy_name.fault.cause policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.GenerateAccesstoken.cause = Required param : grant_type

Exemplo de resposta de erro

Essas respostas serão enviadas de volta ao cliente se o elemento <GenerateResponse> for true.

Se <GenerateResponse> for true, a política retornará erros nesse formato para operações que geram tokens e códigos. Para uma lista completa, consulte a Referência de resposta de erro HTTP do OAuth.

{"ErrorCode" : "invalid_client", "Error" :"ClientId is Invalid"}

Se <GenerateResponse> for true, a política retornará erros nesse formato para verificar e validar operações. Para uma lista completa, consulte a Referência de resposta de erro HTTP do OAuth.

{  
   {  
      "fault":{  
         "faultstring":"Invalid Access Token",
         "detail":{  
            "errorcode":"keymanagement.service.invalid_access_token"
         }
      }
   }

Exemplo de regra de falha

<FaultRule name="OAuthV2 Faults">
    <Step>
        <Name>AM-InvalidClientResponse</Name>
        <Condition>(fault.name = "invalid_client") OR (fault.name = "InvalidClientIdentifier")</Condition>
    </Step>
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
        <Condition>(fault.name = "invalid_access_token")</Condition>
    </Step>
    <Condition>(oauthV2.failed = true) </Condition>
</FaultRule>

Política GetOAuthV2Info

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada. Os nomes de erro mostrados abaixo são as strings atribuídas à variável fault.name quando ocorre um erro. Consulte a seção "Variáveis de falha" abaixo para mais detalhes.

Código de falha Status HTTP Causa
steps.oauth.v2.access_token_expired 500 O token de acesso enviado para a política expirou.
steps.oauth.v2.authorization_code_expired 500 O código de autorização enviado para a política expirou.
steps.oauth.v2.invalid_access_token 500 O token de acesso enviado para a política é inválido.
steps.oauth.v2.invalid_client-invalid_client_id 500 O ID do cliente enviado para a política é inválido.
steps.oauth.v2.invalid_refresh_token 500 O token de atualização enviado para a política é inválido.
steps.oauth.v2.invalid_request-authorization_code_invalid 500 O código de autorização enviado para a política é inválido.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 Consulte A verificação do token de acesso do Oauth2.0 gera um erro "Chamada de API inválida como nenhuma correspondência de apiproduct foi encontrada" para mais informações sobre como solucionar este erro.
steps.oauth.v2.refresh_token_expired 500 O token de atualização enviado para a política expirou.

Erros de implantação

Consulte a mensagem relatada na IU para informações sobre erros de implantação.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "IPDeniedAccess"
oauthV2.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.GetTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.GetToKenInfo.fault.name = invalid_client-invalid_client_id
oauthV2.policy_name.fault.cause policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.GetTokenInfo.cause = ClientID is Invalid

Exemplo de resposta de erro

{  
   "fault":{  
      "faultstring":"ClientId is Invalid",
      "detail":{  
         "errorcode":"keymanagement.service.invalid_client-invalid_client_id"
      }
   }
}

Exemplo de regra de falha

<FaultRule name="OAuthV2 Faults">
    <Step>
        <Name>AM-InvalidClientIdResponse</Name>
    </Step>
    <Condition>(fault.name = "invalid_client-invalid_client_id")</Condition>
</FaultRule>

Política SetOAuthV2Info

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa
steps.oauth.v2.access_token_expired 500 O token de acesso enviado para a política expirou.
steps.oauth.v2.invalid_access_token 500 O token de acesso enviado para a política é inválido.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 Consulte A verificação do token de acesso do Oauth2.0 gera um erro "Chamada de API inválida como nenhuma correspondência de apiproduct foi encontrada" para mais informações sobre como solucionar este erro.

Erros na implantação

Consulte a mensagem relatada na IU para informações sobre erros de implantação.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "invalid_access_token"
oauthV2.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.SetTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.SetTokenInfo.fault.name = invalid_access_token
oauthv2.policy_name.fault.cause policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.SetTokenInfo.cause = Invalid Access Token

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "Invalid Access Token",
    "detail": {
      "errorcode": "keymanagement.service.invalid_access_token"
    }
  }
}

Exemplo de regra de falha

<FaultRule name=SetOAuthV2Info Faults">
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
        <Condition>(fault.name = "invalid_access_token")</Condition>
    </Step>
    <Condition>(oauthV2.failed = true) </Condition>
</FaultRule>

Política DeleteOAuthV2Info

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa
steps.oauth.v2.invalid_access_token 401 O token de acesso enviado para a política é inválido.
steps.oauth.v2.invalid_request-authorization_code_invalid 401 O código de autorização enviado para a política é inválido.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 Consulte A verificação do token de acesso do Oauth2.0 gera um erro "Chamada de API inválida como nenhuma correspondência de apiproduct foi encontrada" para mais informações sobre como solucionar este erro.

Erros na implantação

Consulte a mensagem relatada na IU para informações sobre erros de implantação.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "invalid_access_token"
oauthV2.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.DeleteTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.DeleteTokenInfo.fault.name = invalid_access_token
oauthv2.policy_name.fault.cause policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.DeleteTokenInfo.cause = Invalid Access Token

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "Invalid Access Token",
    "detail": {
      "errorcode": "keymanagement.service.invalid_access_token"
    }
  }
}

Exemplo de regra de falha

<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults">
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
    </Step>
    <Condition>(fault.name = "invalid_access_token")</Condition>
</FaultRule>

Política PythonScript

Nesta seção, descrevemos os códigos de falha e as mensagens de erro retornadas e as variáveis com falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
steps.script.ScriptEvaluationFailed 500 A política PythonScript pode gerar vários tipos diferentes de erros ScriptExecutionFailed. Alguns dos tipos de erros mais comuns são NameError e ZeroDivisionError.

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidResourceUrlFormat Se o formato do URL do recurso especificado no <ResourceURL> ou no elemento <IncludeURL> da política PythonScript for inválido, a implantação do proxy da API falhará.
InvalidResourceUrlReference Se os elementos <ResourceURL> ou <IncludeURL> fizerem referência a um arquivo PythonScript que não existe, a implantação do proxy da API falhará. O arquivo de origem referenciado precisa existir no proxy, no ambiente ou no nível da organização da API.

Variáveis de falha

Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "ScriptExecutionFailed"
pythonscript.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. pythonscript.PythonScript-1.failed = true

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "Execution of SetResponse failed with error: Pythonscript runtime error: "ReferenceError: "status" is not defined.\"",
    "detail": {
      "errorcode": "steps.script.ScriptExecutionFailed"
    }
  }
}

Exemplo de regra de falha

<FaultRule name="PythonScript Policy Faults">
    <Step>
        <Name>AM-CustomErrorResponse</Name>
        <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition>
    </Step>
    <Condition>(pythonscript.PythonScript-1.failed = true) </Condition>
</FaultRule>

Política de cotas

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
policies.ratelimit.FailedToResolveQuotaIntervalReference 500 Ocorre se o elemento <Interval> não estiver definido na política Quota. Esse elemento é obrigatório e usado para especificar o intervalo de tempo aplicável à cota. O intervalo de tempo pode ser minutos, horas, dias, semanas ou meses, conforme definido com o elemento <TimeUnit>.
policies.ratelimit.FailedToResolveQuotaIntervalTimeUnitReference 500 Ocorre se o elemento <TimeUnit> não estiver definido na política Quota. Esse elemento é obrigatório e é usado para especificar a unidade de tempo aplicável à cota. O intervalo de tempo pode ser de minutos, horas, dias, semanas ou meses.
policies.ratelimit.InvalidMessageWeight 500 Ocorre se o valor do elemento <MessageWeight> especificado por meio de uma variável de fluxo for inválido (um valor não inteiro).
policies.ratelimit.QuotaViolation 500 O limite de cota foi excedido. N/A

Erros na implantação

Nome do erro Causa Correção
InvalidQuotaInterval Se o intervalo de cota especificado no elemento <Interval> não for um número inteiro, a implantação do proxy de API falhará. Por exemplo, se o intervalo de cota especificado for 0.1 no elemento <Interval>, a implantação do proxy de API falhará.
InvalidQuotaTimeUnit Se a unidade de tempo especificada no elemento <TimeUnit> não for compatível, a implantação do proxy de API falhará. As unidades de tempo compatíveis são minute, hour, day, week e month.
InvalidQuotaType Se o tipo de cota especificado pelo atributo type no elemento <Quota> for inválido, a implantação do proxy da API falhará. Os tipos de cota compatíveis são default, calendar, flexi e rollingwindow.
InvalidStartTime Se o formato do tempo especificado no elemento <StartTime> for inválido, a implantação do proxy de API falhará. O formato válido é yyyy-MM-dd HH:mm:ss, que é o formato de data e hora ISO 8601. Por exemplo, se o tempo especificado no elemento <StartTime> for 7-16-2017 12:00:00, a implantação do proxy da API falhará.
StartTimeNotSupported Se o elemento <StartTime> for especificado e tem um tipo de cota que não é calendar, a implantação do proxy da API falhará. O elemento <StartTime> é compatível apenas com o tipo de cota calendar. Por exemplo, se o atributo type estiver definido como flexi ou rolling window no elemento <Quota>, a implantação do proxy da API falhará.
InvalidTimeUnitForDistributedQuota Se o elemento <Distributed> estiver definido como true e o elemento <TimeUnit> estiver definido como second, a implantação do proxy de API falhará. A unidade de tempo second é inválida para uma cota distribuída.
InvalidSynchronizeIntervalForAsyncConfiguration Se o valor especificado para o elemento <SyncIntervalInSeconds> dentro do elemento <AsynchronousConfiguration> em uma política Quota for menor que zero, a implantação do proxy de API falhará.
InvalidAsynchronizeConfigurationForSynchronousQuota Se o valor do elemento <AsynchronousConfiguration> estiver definido como true em uma política Quota, que também tem uma configuração assíncrona definida usando o elemento <AsynchronousConfiguration>, a implantação do proxy de API falhará.

Variáveis de falha

Essas variáveis são definidas quando esta política aciona um erro. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "QuotaViolation"
ratelimit.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. ratelimit.QT-QuotaPolicy.failed = true

Exemplo de resposta de erro

{  
   "fault":{  
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      },
      "faultstring":"Rate limit quota violation. Quota limit  exceeded. Identifier : _default"
   }
}

Exemplo de regra de falha

<FaultRules>
    <FaultRule name="Quota Errors">
        <Step>
            <Name>JavaScript-1</Name>
            <Condition>(fault.name Matches "QuotaViolation") </Condition>
        </Step>
        <Condition>ratelimit.Quota-1.failed=true</Condition>
    </FaultRule>
</FaultRules>

Política ResetQuota

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Correção
policies.resetquota.InvalidRLPolicy 500 A política Quota especificada no elemento <Quota> da política ResetQuota não é definida no proxy da API e, portanto, não está disponível durante o fluxo. O elemento <Quota> é obrigatório e identifica a política de destino Quota cujo contador deve ser atualizado por meio da política ResetQuota.
policies.resetquota.FailedToResolveAllowCountRef N/A Não é possível resolver o valor da referência na variável que contém a contagem de permissões no elemento <Allow> da política. Esse elemento é obrigatório e especifica o valor para diminuir o contador de cotas.
policies.resetquota.FailedToResolveRLPolicy 500 A variável referenciada pelo atributo ref no elemento <Quota> não pode ser resolvida.

Erros na implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
InvalidCount Se o valor de contagem especificado no elemento <Allow> da política ResetQuota não for um número inteiro, a implantação do proxy da API falhará.

RaiseFaultpolicy

Nesta seção, descrevemos os códigos de falha e as mensagens de erro retornadas e as variáveis com falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa
steps.raisefault.RaiseFault 500 Consulte string de falha.

Erros de implantação

Nenhum.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "RaiseFault"
raisefault.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. raisefault.RF-ThrowError.failed = true

Exemplo de resposta de erro

{
   "fault":{
      "detail":{
         "errorcode":"steps.raisefault.RaiseFault"
      },
      "faultstring":"Raising fault. Fault name: [name]"
   }
}

Política RegularExpressionProtection

Nesta seção, descrevemos os códigos de erro e as mensagens retornadas, bem como as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Se você quiser capturar um erro e criar seu próprio erro personalizado, defina o atributo continueOnError="true" no elemento raiz da política. Para mais informações, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de erro Mensagem
ExecutionFailed Failed to execute the RegularExpressionProtection StepDefinition {0}. Reason: {1}
InstantiationFailed Failed to instantiate the RegularExpressionProtection StepDefinition {0}
NonMessageVariable Variable {0} does not resolve to a Message
SourceMessageNotAvailable {0} message is not available for RegularExpressionProtection StepDefinition {1}
ThreatDetected Regular Expression Threat Detected in {0}: regex: {1} input: {2}
VariableResolutionFailed Failed to resolve variable {0}

Erros na implantação

Código de erro Mensagem Correção
CannotBeConvertedToNodeset RegularExpressionProtection {0}: Result of xpath {1} cannot be converted to nodeset. Context {2}
DuplicatePrefix RegularExpressionProtection {0}: Duplicate prefix {1}
EmptyJSONPathExpression RegularExpressionProtection {0}: Empty JSONPath expression
EmptyXPathExpression RegularExpressionProtection {0}: Empty XPath expression
InvalidRegularExpression RegularExpressionProtection {0}: Invalid Regular Expression {1}, Context {2}
JSONPathCompilationFailed RegularExpressionProtection {0}: Failed to compile jsonpath {1}. Context {2}
NONEmptyPrefixMappedToEmptyURI RegularExpressionProtection {0}: Non-empty prefix {1} cannot be mapped to empty uri
NoPatternsToEnforce RegularExpressionProtection {0}: No patterns to enforce in {1}
NothingToEnforce RegularExpressionProtection {0}: at least one of URIPath, QueryParam, Header, FormParam, XMLPayload, JSONPayload is mandatory
XPathCompilationFailed RegularExpressionProtection {0}: Failed to compile xpath {1}. Context {2}

Variáveis de falha

Essas variáveis são definidas quando esta política aciona um erro. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela acima. fault.name Matches "ThreatDetected"
regularexpressionprotection.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. regularexpressionprotection.Regular-Expressions-Protection-1.failed = true

Política SAMLAssertion

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de implantação

Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

Nome do erro Causa Correção
SourceNotConfigured Um ou mais dos seguintes elementos da política ValidateSAMLAssertion não está definido ou está vazio: <Source>, <XPath>, <Namespaces>, <Namespace>.
TrustStoreNotConfigured Se o elemento <TrustStore> estiver vazio ou não for especificado na política ValidateSAMLAssertion, a implantação do proxy de API falhará. Uma truststore válido é obrigatório.
NullKeyStoreAlias Se o elemento filho <Alias> estiver vazio ou não especificado no elemento <Keystore> da política GenerateSAMLAssertion, a implantação do proxy de API falhará. Um alias de keystore válido é obrigatório.
NullKeyStore Se o elemento filho <Name> estiver vazio ou não especificado no elemento <Keystore> da política GenerateSAMLAssertion, a implantação do proxy de API falhará. Um nome válido de keystore é obrigatório.
NullIssuer Se o elemento <Issuer> estiver vazio ou não for especificado na política GenerateSAMLAssertion, a implantação do proxy de API falhará. Um valor de <Issuer> válido é necessário.

Variáveis de falha

Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

Variáveis Onde Exemplo
fault.name="fault_name" fault_name é o nome da falha. O nome da falha é a última parte do código de falha. fault.name = "InvalidMediaTpe"
GenerateSAMLAssertion.failed Para uma configuração de política de declaração SAML válida, o prefixo do erro é ValidateSAMLAssertion. GenerateSAMLAssertion.failed = true

Exemplo de resposta de erro

{
  "fault": {
    "faultstring": "GenerateSAMLAssertion[GenSAMLAssert]: Invalid media type",
    "detail": {
      "errorcode": "steps.saml.generate.InvalidMediaTpe"
    }
  }
}

Exemplo de regra de falha

<FaultRules>
    <FaultRule name="invalid_saml_rule">
        <Step>
            <Name>invalid-saml</Name>
        </Step>
        <Condition>(GenerateSAMLAssertion.failed = "true")</Condition>
    </FaultRule>
</FaultRules>

Política ServiceCallout

Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

Erros de execução

Esses erros podem ocorrer quando a política é executada.

Código de falha Status HTTP Causa Corrigir
steps.servicecallout.ExecutionFailed 500

Esse erro pode ocorrer quando:

  • a política precisa lidar com entradas malformadas ou inválidas.
  • O serviço de destino de back-end retorna um status de erro (por padrão, 4xx ou 5xx).
steps.servicecallout.RequestVariableNotMessageType 500 A variável Request especificada na política não é do tipo Message. Por exemplo, no caso de uma string ou outro tipo de mensagem que não é uma mensagem, você vê esse erro.
steps.servicecallout.RequestVariableNotRequestMessageType 500 A variável Request especificada na política não é do tipo RequestMessage. Por exemplo, se for um tipo de resposta, você verá esse erro.
googletoken.EmptyIDTokenAudience 500

<GoogleIDToken> está ativado, mas useTargetUrl está definido como falso, e nenhum valor é fornecido para <Audience> diretamente ou por referência no momento do erro.

messaging.adaptors.http.filter.GoogleTokenGenerationFailure 500 Esse erro pode acontecer se o proxy de API estiver configurado com o elemento <Authentication>. Estas são as possíveis causas:
  • A conta de serviço implantada com o proxy:
    • não existe em seu projeto
    • foi desativado
    • (Somente híbridos da Apigee) não concedeu o papel roles/iam.serviceAccountTokenCreator à conta de serviço apigee-runtime.
  • A API IAMCredentials está desativada no projeto de origem da conta de serviço apigee-runtime.
  • O elemento <GoogleAccessToken> é usado e um ou mais escopos inválidos são fornecidos. Por exemplo, procure erros de digitação ou escopos vazios.
  • Somente para a Apigee híbrida, verifique o registro do contêiner de ambiente de execução e procure GoogleTokenGenerationFailure para encontrar mensagens de erro mais detalhadas que podem ajudar na depuração do problema.

    Erros na implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

    Nome do erro Causa Corrigir
    URLMissing O elemento <URL> dentro de <HTTPTargetConnection> está ausente ou vazio.
    ConnectionInfoMissing Esse erro ocorrerá se a política não tiver um elemento <HTTPTargetConnection> ou <LocalTargetConnection>.
    InvalidTimeoutValue Este erro ocorrerá se o valor <Timeout> for negativo ou zero.
    FAILED_PRECONDITION Esse erro ocorrerá se a conta de serviço estiver ausente quando o proxy estiver configurado com a tag <Authentication>.

    Exemplo:

    Deployment of \"organizations/foo/apis/apiproxy/revisions/1\" requires a service
              account identity, but one was not provided with the request.
    PERMISSION_DENIED Esse erro ocorrerá se houver um problema de permissão com a conta de serviço se o proxy estiver configurado com a tag <Authentication>. Causas possíveis:
    • A conta de serviço não existe.
    • A conta de serviço não foi criada no mesmo projeto do Google Cloud que a organização da Apigee.
    • O implantador tem a permissão iam.serviceAccounts.actAs na conta de serviço. Para ver detalhes, consulte Sobre as permissões da conta de serviço.

    Variáveis de falha

    Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "RequestVariableNotMessageType"
    servicecallout.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. servicecallout.SC-GetUserData.failed = true

    Exemplo de resposta de erro

    {
       "fault":{
          "detail":{
             "errorcode":"steps.servicecallout.RequestVariableNotMessageType"
          },
          "faultstring":"ServiceCallout[ServiceCalloutGetMockResponse]:
                request variable data_str value is not of type Message"
       }
    }

    Exemplo de regra de falha

    <FaultRule name="RequestVariableNotMessageType">
        <Step>
            <Name>AM-RequestVariableNotMessageType</Name>
        </Step>
        <Condition>(fault.name = "RequestVariableNotMessageType")</Condition>
    </FaultRule>

    Política SOAPMessageValidation

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Causa Correção
    steps.messagevalidation.SourceMessageNotAvailable 500

    Esse erro ocorre se uma variável especificada no elemento <Source> da política for:

    • estiver fora do escopo (não disponível no fluxo específico em que a política está sendo executada);
    • ou
    • Não é possível resolver (não está definida)
    steps.messagevalidation.NonMessageVariable 500

    Esse erro ocorrerá se o elemento <Source> na política SOAPMessageValidation estiver definido como uma variável que não seja do tipo Message.

    As variáveis do tipo Message representam solicitações e respostas HTTP completas. As variáveis integradas do fluxo da Apigee request, response e message são do tipo "menssagem". Para saber mais sobre variáveis de mensagens, consulte a referência de variáveis.

    steps.messagevalidation.Failed 500 Esse erro ocorrerá se a política SOAPMessageValidation não validar o payload da mensagem de entrada no esquema XSD ou na definição WSDL. Isso também ocorrerá se houver JSON ou XML malformado na mensagem de payload.

    Erros na implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém essa política.

    Nome do erro Causa Corrigir
    InvalidResourceType O elemento <ResourceURL> na política SOAPMessageValidation é definido como um tipo de recurso não compatível com a política.
    ResourceCompileFailed O script de recurso referenciado no elemento <ResourceURL> da política SOAPMessageValidation contém um erro que o impede de compilar.
    RootElementNameUnspecified O elemento <Element> na política SOAPMessageValidation não contém o nome do elemento raiz.
    InvalidRootElementName O elemento <Element> na política SOAPMessageValidation contém um nome de elemento raiz que não adere a regras XML para nomeação de elemento válida.

    Política de Detenção de pico

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Causa Corrigir
    policies.ratelimit.FailedToResolveSpikeArrestRate 500 Esse erro ocorrerá se a referência à variável que contém a configuração de taxa no elemento <Rate> não puder ser resolvida como um valor na política SpikeArrest. Esse elemento é obrigatório e usado para especificar a taxa de parada de pico na forma de intpm ou intps.
    policies.ratelimit.InvalidMessageWeight 500 Esse erro ocorrerá se o valor especificado para o elemento <MessageWeight> por meio de uma variável de fluxo for inválido (um valor não inteiro).
    policies.ratelimit.SpikeArrestViolation 429 O limite de taxa foi excedido.

    Erros de implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

    Nome do erro Causa Corrigir
    InvalidAllowedRate Se a taxa de detenção de pico especificada no elemento <Rate> da política SpikeArrest não é um número inteiro ou se a taxa não tem ps ou pm como sufixo, a implantação do proxy da API falhará.

    Variáveis de falha

    Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "SpikeArrestViolation"
    ratelimit.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. ratelimit.SA-SpikeArrestPolicy.failed = true

    Exemplo de resposta de erro

    Veja abaixo um exemplo de resposta de erro:

    {  
       "fault":{  
          "detail":{  
             "errorcode":"policies.ratelimit.SpikeArrestViolation"
          },
          "faultstring":"Spike arrest violation. Allowed rate : 10ps"
       }
    }

    Exemplo de regra de falha

    Veja abaixo um exemplo de regra de falha para lidar com uma falha SpikeArrestViolation:

    <FaultRules>
        <FaultRule name="Spike Arrest Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "SpikeArrestViolation") </Condition>
            </Step>
            <Condition>ratelimit.Spike-Arrest-1.failed=true</Condition>
        </FaultRule>
    </FaultRules>

    Política VerifyAPIKey

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Causa
    keymanagement.service.consumer_key_missing_api_product_association 400

    A credencial do aplicativo não tem uma associação do produto da API. Associe o aplicativo da chave a um produto de API. Isso se aplica a todos os tipos de aplicativos, como apps de desenvolvedores e do AppGroup.

    keymanagement.service.DeveloperStatusNotActive 401

    O desenvolvedor que criou o app Developer que tem a chave de API que você está usando tem um status inativo. Quando o status de um desenvolvedor de apps é definido como inativo, todos os apps Developer criados por ele são desativados. Um usuário administrador com as devidas permissões, como administrador da organização, pode alterar o status do desenvolvedor das seguintes maneiras:

    keymanagement.service.invalid_client-app_not_approved 401 O app Developer associado à chave de API foi revogado. Um app revogado não pode acessar nenhum produto de API e não pode invocar qualquer API gerenciada pela Apigee. Um administrador da organização pode alterar o status de um app Developer usando a API Apigee. Consulte Gerar par de chaves ou Atualizar status do app do desenvolvedor.
    oauth.v2.FailedToResolveAPIKey 401 A política espera encontrar a chave de API em uma variável especificada no elemento <APIKey> da política. Esse erro ocorre quando a variável esperada não existe (ela não pode ser resolvida).
    oauth.v2.InvalidApiKey 401 Uma chave de API foi recebida pela Apigee, mas é inválida. Quando a Apigee procura a chave no banco de dados, ela precisa corresponder exatamente àquela que foi enviada na solicitação. Se a API já funcionou antes, verifique se a chave não foi gerada novamente. Se a chave tiver sido gerada novamente, você verá este erro se tentar usar a chave antiga. Para mais detalhes, consulte Como controlar o acesso às suas APIs registrando aplicativos.
    oauth.v2.InvalidApiKeyForGivenResource 401 Uma chave de API foi recebida pela Apigee e é válida; no entanto, ela não corresponde a uma chave aprovada no app Developer associado ao seu proxy de API por meio de um produto.

    Erros na implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

    Nome do erro Causa
    SpecifyValueOrRefApiKey O elemento <APIKey> não tem um valor ou uma chave especificada.

    Variáveis de falha

    Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "FailedToResolveAPIKey"
    oauthV2.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. oauthV2.VK-VerifyAPIKey.failed = true

    Exemplos de respostas de erros

    {  
       "fault":{  
          "faultstring":"Invalid ApiKey",
          "detail":{  
             "errorcode":"oauth.v2.InvalidApiKey"
          }
       }
    }
    {  
       "fault":{  
          "detail":{  
             "errorcode":"keymanagement.service.DeveloperStatusNotActive"
          },
          "faultstring":"Developer Status is not Active"
       }
    }

    Exemplo de regra de falha

    <FaultRule name="FailedToResolveAPIKey">
        <Step>
            <Name>AM-FailedToResolveAPIKey</Name>
        </Step>
        <Condition>(fault.name Matches "FailedToResolveAPIKey") </Condition>
    </FaultRule>

    Política VerifyIAM

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Causa
    steps.verifyiam.CredentialSourceRefUnresolved 400 Não foi possível resolver a variável de fluxo fornecida na origem de credenciais.
    steps.verifyiam.CredentialValueNotProvided 400 Credencial não encontrada. Se a referência da origem da credencial não for fornecida, vamos analisar o local padrão, como o cabeçalho de autorização.
    steps.verifyiam.Forbidden 403 Não foi possível encaminhar a solicitação devido à falta de permissões suficientes ou à falta de escopos de acesso ou a outros problemas relacionados.
    steps.verifyiam.MiscellaneousAuthorizationConfigurationError 500 Um problema com a solicitação de autenticação para o IAM. O produtor da API precisa corrigir esse erro com base nos detalhes na resposta de erro.
    steps.verifyiam.Unauthorized 401 Problema com a credencial, como o valor inválido ou expirado.
    steps.verifyiam.UnexpectedAuthorizationInfrastructureError 500 Erro interno.

    Erros de implantação

    Essa política não retorna erros de implantação específicos da política.

    Variáveis de falha

    Essas variáveis são definidas quando essa política aciona um erro no ambiente de execução.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name="Unauthorized"
    verifyiam.policy_name.failed policy_name é o nome da política especificada pelo usuário que gerou a falha. verifyiam.Verify-IAMToken.failed = true

    Política VerifyJWS

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Ocorre quando
    steps.jws.AlgorithmInTokenNotPresentInConfiguration 401 Ocorre quando a política de verificação tem vários algoritmos
    steps.jws.AlgorithmMismatch 401 O algoritmo especificado no cabeçalho pela política Generate não correspondia ao esperado na política Verify. Os algoritmos especificados precisam corresponder.
    steps.jws.ContentIsNotDetached 401 <DetachedContent> é especificado quando o JWS não contém um payload de conteúdo separado.
    steps.jws.FailedToDecode 401 A política não conseguiu decodificar o JWS. A JWS está possivelmente corrompida.
    steps.jws.InsufficientKeyLength 401 Para uma chave menor que 32 bytes para o algoritmo HS256
    steps.jws.InvalidClaim 401 Uma falta de reivindicação ou incompatibilidade de reivindicação ou falta de cabeçalho ou cabeçalho incompatível.
    steps.jws.InvalidCurve 401 A curva especificada pela chave não é válida para o algoritmo de curva elíptica.
    steps.jws.InvalidJsonFormat 401 JSON inválido encontrado no cabeçalho JWS.
    steps.jws.InvalidJws 401 Esse erro ocorre quando a verificação de assinatura do JWS falha.
    steps.jws.InvalidPayload 401 O payload do JWS é inválido.
    steps.jws.InvalidSignature 401 <DetachedContent> é omitido e o JWS tem um payload de conteúdo separado.
    steps.jws.KeyIdMissing 401 A política de Verify usa um JWKS como fonte para chaves públicas, mas o JWS assinado não inclui uma propriedade kid no cabeçalho.
    steps.jws.KeyParsingFailed 401 Não foi possível analisar a chave pública com as informações de chave fornecidas.
    steps.jws.MissingPayload 401 O payload do JWS está ausente.
    steps.jws.NoAlgorithmFoundInHeader 401 Ocorre quando a JWS omite o cabeçalho do algoritmo.
    steps.jws.NoMatchingPublicKey 401 A política de Verify usa um JWKS como fonte para chaves públicas, mas o kid no JWS assinado não está listado no JWKS.
    steps.jws.UnhandledCriticalHeader 401 Um cabeçalho encontrado pela política Verify JWS no cabeçalho crit não está listado em KnownHeaders.
    steps.jws.UnknownException 401 Ocorreu uma exceção desconhecida.
    steps.jws.WrongKeyType 401 Tipo incorreto de chave especificado. Por exemplo, se você especificar uma chave RSA para um algoritmo de curva elíptica ou uma chave de curva para um algoritmo RSA.

    Erros de implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

    Erro de nome Ocorre quando
    InvalidAlgorithm Os únicos valores válidos são: RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512.

    EmptyElementForKeyConfiguration

    FailedToResolveVariable

    InvalidConfigurationForActionAndAlgorithmFamily

    InvalidConfigurationForVerify

    InvalidEmptyElement

    InvalidFamiliesForAlgorithm

    InvalidKeyConfiguration

    InvalidNameForAdditionalClaim

    InvalidNameForAdditionalHeader

    InvalidPublicKeyId

    InvalidPublicKeyValue

    InvalidSecretInConfig

    InvalidTypeForAdditionalClaim

    InvalidTypeForAdditionalHeader

    InvalidValueForElement

    InvalidValueOfArrayAttribute

    InvalidVariableNameForSecret

    MissingConfigurationElement

    MissingElementForKeyConfiguration

    MissingNameForAdditionalClaim

    MissingNameForAdditionalHeader

    Outros erros de implantação possíveis.

    Variáveis de falha

    Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "TokenExpired"
    JWS.failed Todas as políticas de JWS definem a mesma variável em caso de falha. jws.JWS-Policy.failed = true

    Exemplo de resposta de erro

    Para gerenciar erros, a prática recomendada é interceptar a parte errorcode da resposta de erro. Não confie no texto em faultstring, porque ele pode mudar.

    Exemplo de regra de falha

    <FaultRules>
        <FaultRule name="JWS Policy Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "TokenExpired")</Condition>
            </Step>
            <Condition>JWS.failed=true</Condition>
        </FaultRule>
    </FaultRules>

    Política VerifyJWT

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falhas para lidar com elas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Ocorre quando
    steps.jwt.AlgorithmInTokenNotPresentInConfiguration 401 Ocorre quando a política de verificação tem vários algoritmos.
    steps.jwt.AlgorithmMismatch 401 O algoritmo especificado na política Generate não correspondeu ao esperado na política Verify. Os algoritmos especificados precisam corresponder.
    steps.jwt.FailedToDecode 401 A política não conseguiu decodificar o JWT. É possível que o JWT esteja corrompido.
    steps.jwt.GenerationFailed 401 A política não pôde gerar o JWT.
    steps.jwt.InsufficientKeyLength 401 Para uma chave com menos de 32 bytes para o algoritmo HS256, menos de 48 bytes para o algoritmo HS386 e menos de 64 bytes para o algoritmo HS512.
    steps.jwt.InvalidClaim 401 Uma falta de reivindicação ou incompatibilidade de reivindicação ou falta de cabeçalho ou cabeçalho incompatível.
    steps.jwt.InvalidConfiguration 401 Os elementos <Algorithm> e <Algorithms> estão presentes.
    steps.jwt.InvalidCurve 401 A curva especificada pela chave não é válida para o algoritmo de curva elíptica.
    steps.jwt.InvalidIterationCount 401 A contagem de iterações usada no JWT criptografado não é igual à contagem de iteração especificada na configuração da política "Verificar JWT". Isso se aplica apenas ao JWT que usa <PasswordKey>.
    steps.jwt.InvalidJsonFormat 401 JSON inválido encontrado no cabeçalho ou payload.
    steps.jwt.InvalidKeyConfiguration 401 JWKS no elemento <PublicKey> é inválido. O motivo pode ser que o endpoint do URI JWKS não pode ser acessado pela instância da Apigee. Teste a conectividade com o endpoint criando um proxy de passagem e usando o endpoint JWKS como destino.
    steps.jwt.InvalidSaltLength 401 O comprimento de sal usado no JWT criptografado não é igual ao comprimento de sal especificado na configuração da política "VerifyJWT". Isso se aplica apenas ao JWT que usa <PasswordKey>.
    steps.jwt.InvalidPasswordKey 401 A chave especificada não atendeu aos requisitos.
    steps.jwt.InvalidPrivateKey 401 A chave especificada não atendeu aos requisitos.
    steps.jwt.InvalidPublicKey 401 A chave especificada não atendeu aos requisitos.
    steps.jwt.InvalidSecretKey 401 A chave especificada não atendeu aos requisitos.
    steps.jwt.InvalidToken 401 Esse erro ocorre quando a verificação de assinatura do JWT falha.
    steps.jwt.JwtAudienceMismatch 401 A declaração de público falhou na verificação do token.
    steps.jwt.JwtIssuerMismatch 401 A declaração do emissor falhou na verificação do token.
    steps.jwt.JwtSubjectMismatch 401 A declaração do assunto falhou na verificação do token.
    steps.jwt.KeyIdMissing 401 A política Verify usa um JWKS como fonte para chaves públicas, mas o JWT assinado não inclui uma propriedade kid no cabeçalho.
    steps.jwt.KeyParsingFailed 401 Não foi possível analisar a chave pública com as informações de chave fornecidas.
    steps.jwt.NoAlgorithmFoundInHeader 401 Ocorre quando o JWT não contém cabeçalho de algoritmo.
    steps.jwt.NoMatchingPublicKey 401 A política Verify usa um JWKS como fonte para chaves públicas, mas o kid no JWT assinado não está listado no JWKS.
    steps.jwt.SigningFailed 401 Em GenerateJWT, para uma chave menor que o tamanho mínimo para os algoritmos HS384 ou HS512
    steps.jwt.TokenExpired 401 A política tenta verificar um token expirado.
    steps.jwt.TokenNotYetValid 401 O token ainda não é válido.
    steps.jwt.UnhandledCriticalHeader 401 Um cabeçalho encontrado pela política de verificação de JWT no cabeçalho crit não está listado em KnownHeaders.
    steps.jwt.UnknownException 401 Ocorreu uma exceção desconhecida.
    steps.jwt.WrongKeyType 401 Tipo incorreto de chave especificado. Por exemplo, se você especificar uma chave RSA para um algoritmo de curva elíptica ou uma chave de curva para um algoritmo RSA.

    Erros de implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

    Nome do erro Causa Correção
    InvalidNameForAdditionalClaim A implantação falhará se a reivindicação usada no elemento filho <Claim> do elemento <AdditionalClaims> é um dos seguintes nomes registrados: kid, iss, sub, aud, iat, exp, nbf ou jti.
    InvalidTypeForAdditionalClaim Se a declaração usada no elemento filho <Claim> do elemento <AdditionalClaims> não for do tipo string, number, boolean ou map, a implantação falhará.
    MissingNameForAdditionalClaim Se o nome da declaração não for especificado no elemento filho <Claim> do elemento <AdditionalClaims>, a implantação falhará.
    InvalidNameForAdditionalHeader Esse erro ocorre quando o nome da declaração usado no elemento filho <Claim> do elemento <AdditionalClaims> é alg ou typ.
    InvalidTypeForAdditionalHeader Se o tipo de declaração usado no elemento filho <Claim> do elemento <AdditionalClaims> não for do tipo string, number, boolean ou map, a implantação falhará.
    InvalidValueOfArrayAttribute Este erro ocorre quando o valor do atributo de matriz no elemento filho <Claim> do elemento <AdditionalClaims> não está definido como true ou false.
    InvalidValueForElement Se o valor especificado no elemento <Algorithm> não for um valor compatível, a implantação falhará.
    MissingConfigurationElement Esse erro ocorrerá se o elemento <PrivateKey> não for usado com algoritmos de família RSA ou se o elemento <SecretKey> não for usado com algoritmos da família HS.
    InvalidKeyConfiguration Se o elemento filho <Value> não estiver definido nos elementos <PrivateKey> ou <SecretKey>, a implantação falhará.
    EmptyElementForKeyConfiguration Se o atributo de referência do elemento filho <Value> dos elementos <PrivateKey> ou <SecretKey> estiver vazio ou não especificado, a implantação falhará.
    InvalidConfigurationForVerify Esse erro ocorrerá se o elemento <Id> estiver definido no elemento <SecretKey>.
    InvalidEmptyElement Este erro ocorre se o elemento <Source> da política de verificação JWT estiver vazio. Se presente, precisa ser definida com um nome de variável de fluxo da Apigee.
    InvalidPublicKeyValue Se o valor usado no elemento filho <JWKS> do elemento <PublicKey> não usa um formato válido, conforme especificado no RFC 7517, a implantação falhará.
    InvalidConfigurationForActionAndAlgorithm Se o elemento <PrivateKey> é usado com os algoritmos da família HS ou o elemento <SecretKey> é usado com os algoritmos da família RSA, a implantação falhará.

    Variáveis de falha

    Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "InvalidToken"
    JWT.failed Todas as políticas do JWT definem a mesma variável em caso de falha. JWT.failed = true

    Exemplo de resposta de erro

    Códigos de falha de política JWT

    Para gerenciar erros, a prática recomendada é interceptar a parte errorcode da resposta de erro. Não confie no texto em faultstring, porque ele pode mudar.

    Exemplo de regra de falha

        <FaultRules>
            <FaultRule name="JWT Policy Errors">
                <Step>
                    <Name>JavaScript-1</Name>
                    <Condition>(fault.name Matches "InvalidToken")</Condition>
                </Step>
                <Condition>JWT.failed=true</Condition>
            </FaultRule>
        </FaultRules>
        

    Política XMLThreatProtection

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Causa Correção
    steps.xmlthreatprotection.ExecutionFailed 500 A política XMLThreatProtection pode gerar vários tipos diferentes de erros ExecutionFailed. A maioria desses erros ocorre quando um limite específico definido na política é excedido. Esses tipos de erros incluem: comprimento do nome do elemento, contagem de filhos, profundidade do nó, contagem de atributos, comprimento do nome do atributo e muitos outros. Veja a lista completa no tópico Solução de problemas da política XMLThreatProtection.
    steps.xmlthreatprotection.InvalidXMLPayload 500 Esse erro ocorre se o payload da mensagem de entrada especificado pelo elemento XMLThreatProtection da política <Source> não for um documento XML válido.
    steps.xmlthreatprotection.SourceUnavailable 500 Esse erro ocorrerá se a variável message especificada no elemento <Source> for:
    • Fora do escopo (não disponível no fluxo específico em que a política está sendo executada)
    • Não for um dos valores válidos request, response ou message
    steps.xmlthreatprotection.NonMessageVariable 500 Esse erro ocorrerá se o elemento <Source> estiver definido como uma variável que não é do tipo message.

    Erros na implantação

    Nenhum.

    Variáveis de falha

    Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name Matches "SourceUnavailable"
    xmlattack.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. xmlattack.XPT-SecureRequest.failed = true

    Exemplo de resposta de erro

    {
      "fault": {
        "faultstring": "XMLThreatProtection[XPT-SecureRequest]: Execution failed. reason: XMLThreatProtection[XTP-SecureRequest]: Exceeded object entry name length at line 2",
        "detail": {
          "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
      }
    }

    Exemplo de regra de falha

    <FaultRule name="XML Threat Protection Policy Faults">
        <Step>
            <Name>AM-CustomErrorResponse</Name>
            <Condition>(fault.name Matches "ExecutionFailed") </Condition>
        </Step>
        <Condition>(xmlattack.XPT-SecureRequest.failed = true) </Condition>
    </FaultRule>

    Política XMLtoJSON

    Esta seção descreve os códigos de falha e as mensagens de erro que são retornadas e as variáveis de falha definidas pela Apigee quando essa política aciona um erro. Essas informações são importantes para saber se você está desenvolvendo regras de falha para lidar com falhas. Para saber mais, consulte O que você precisa saber sobre erros de política e Como lidar com falhas.

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Causa Corrigir
    steps.xmltojson.ExecutionFailed ExecutionFailed Este erro ocorre quando o payload de entrada (XML) está vazio ou o XML de entrada é inválido ou está malformado.
    steps.xmltojson.InCompatibleTypes ExecutionFailed Esse erro ocorrerá se o tipo da variável definido no elemento <Source> e o elemento <OutputVariable> não forem os mesmos. É obrigatório que o tipo das variáveis contidas no elemento <Source> e no elemento <OutputVariable> sejam iguais.
    steps.xmltojson.InvalidSourceType ExecutionFailed Esse erro ocorre se o tipo da variável usada para definir o elemento <Source> é inválida. Os tipos válidos de variável são mensagem e string.
    steps.xmltojson.OutputVariableIsNotAvailable ExecutionFailed Esse erro ocorre se a variável especificada no elemento <Source> da política XML para JSON é do tipo string e o elemento <OutputVariable> não é definido. O elemento <OutputVariable> é obrigatório quando a variável definida no elemento <Source> é do tipo string.
    steps.xmltojson.SourceUnavailable ExecutionFailed Esse erro ocorre se a variável message especificada no elemento <Source> da política XML para JSON for:
    • Fora do escopo (não disponível no fluxo específico em que a política está sendo executada) ou
    • Não é possível resolver (não está definida)

    Erros na implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém esta política.

    Nome do erro Causa Corrigir
    EitherOptionOrFormat Se um dos elementos <Options> ou <Format> não for declarado na política XML para JSON, a implantação do proxy da API falhará.
    UnknownFormat Se o elemento <Format> na política XML para JSON tiver um formato desconhecido definido, a implantação do proxy de API falhará. Os formatos predefinidos incluem: xml.com, yahoo, google e badgerFish.

    Variáveis de falha

    Essas variáveis são definidas quando ocorre um erro de tempo de execução. Para mais informações, consulte O que você precisa saber sobre erros de política.

    Variáveis Onde Exemplo
    fault.name="fault_name" fault_name é o nome da falha, conforme listado na tabela Erros de ambiente de execução acima. O nome da falha é a última parte do código de falha. fault.name = "SourceUnavailable"
    xmltojson.policy_name.failed policy_name é o nome especificado pelo usuário da política que causou a falha. xmltojson.XMLtoJSON-1.failed = true

    Exemplo de resposta de erro

    {
      "fault": {
        "faultstring": "XMLToJSON[XMLtoJSON-1]: Source xyz is not available",
        "detail": {
          "errorcode": "steps.xml2json.SourceUnavailable"
        }
      }
    }

    Exemplo de regra de falha

    <faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="XML to JSON Faults">
        <Step>
            <Name>AM-SourceUnavailableMessage</Name>
            <Condition>(fault.name Matches "SourceUnavailable") </Condition>
        </Step>
        <Step>
            <Name>AM-BadXML</Name>
            <Condition>(fault.name = "ExecutionFailed")</Condition>
        </Step>
        <Condition>(xmltojson.XMLtoJSON-1.failed = true) </Condition>
    </FaultRule>

    Política de XSLTransform

    Erros de execução

    Esses erros podem ocorrer quando a política é executada.

    Código de falha Status HTTP Causa Correção
    steps.xsl.XSLSourceMessageNotAvailable 500 Esse erro ocorrerá se a variável da mensagem ou da string especificada no elemento <Source> da política XSLTransform estiver fora do escopo (não disponível no fluxo específico em que a política estiver sendo executada) ou não pode ser resolvido (não foi definido).
    steps.xsl.XSLEvaluationFailed 500 Esse erro ocorrerá se o payload XML de entrada estiver indisponível/malformado ou se a política XSLTransform falhar/não puder transformar o arquivo XML de entrada com base nas regras de transformação fornecidas no arquivo XSL. Pode haver muitas causas diferentes para a falha da política XSLTransform. O motivo da falha na mensagem de erro fornecerá mais informações sobre a causa.

    Erros na implantação

    Esses erros podem ocorrer quando você implanta um proxy que contém essa política.

    Nome do erro Causa Correção
    XSLEmptyResourceUrl Se o elemento <ResourceURL> na política XSLTransform estiver vazio, a implantação do proxy da API falhará.
    XSLInvalidResourceType Se o tipo de recurso especificado no elemento <ResourceURL> da política XSLTransform não for do tipo xsl, a implantação do proxy de API falhará.