Lidar com erros da API REST

As respostas de erro HTTP estão divididas em duas categorias:

  • Erro de cliente (nível de código 400) – o cliente enviou um pedido inválido ou o pedido não está de acordo com as definições.
  • Erro do servidor (500 níveis) – o servidor falhou temporariamente ao satisfazer o pedido ou ocorreu um erro do servidor. Tente enviar o pedido HTTP novamente.

Os códigos de erro listados na tabela seguinte podem ser devolvidos por uma operação em qualquer uma das APIs Microsoft Defender para Endpoint.

  • Além do código de erro, cada resposta de erro contém uma mensagem de erro, que pode ajudar a resolver o problema.
  • A mensagem é um texto livre que pode ser alterado.
  • Na parte inferior da página, pode encontrar exemplos de resposta.

Aplica-se a:

Quer experimentar o Defender para Ponto Final? Inscrever-se para uma avaliação gratuita.

Código de erro Código de estado HTTP Mensagem
BadRequest BadRequest (400) Mensagem de erro Pedido Incorreto Geral.
ODataError BadRequest (400) Consulta URI OData inválida (o erro específico é especificado).
InvalidInput BadRequest (400) Entrada inválida {a entrada inválida}.
InvalidRequestBody BadRequest (400) Corpo do pedido inválido.
InvalidHashValue BadRequest (400) O valor hash {o hash} inválido é inválido.
InvalidDomainName BadRequest (400) Nome de domínio {o domínio inválido} é inválido.
InvalidIpAddress BadRequest (400) Endereço IP {o IP inválido} é inválido.
InvalidUrl BadRequest (400) URL {o URL inválido} é inválido.
MaximumBatchSizeExceeded BadRequest (400) Tamanho máximo do lote excedido. Recebido: {batch size received}, allowed: {batch size allowed}.
MissingRequiredParameter BadRequest (400) O parâmetro {o parâmetro em falta} está em falta.
OsPlatformNotSupported BadRequest (400) A Plataforma do SO {the client OS Platform} não é suportada para esta ação.
ClientVersionNotSupported BadRequest (400) {A ação pedida} é suportada na versão de cliente {versão suportada do cliente} e superior.
Não autorizado Não autorizado (401) Não autorizado (cabeçalho de autorização inválido ou expirado).
Proibido Proibido (403) Proibido (token válido, mas permissão insuficiente para a ação).
DisabledFeature Proibido (403) A funcionalidade de inquilino não está ativada.
DisallowedOperation Proibido (403) {a operação não permitida e o motivo}.
NotFound Não Encontrado (404) Mensagem de erro Geral Não Encontrada.
ResourceNotFound Não Encontrado (404) O recurso {o recurso pedido} não foi encontrado.
TooManyRequests Demasiados Pedidos (429) A resposta representa atingir o limite de quota por número de pedidos ou pela CPU.
InternalServerError Erro interno do Servidor (500) (Sem mensagem de erro, repita a operação.)

Limitação

O cliente HTTP pode receber um erro "Demasiados Pedidos (429)" quando o número de pedidos HTTP num determinado período de tempo excede o número permitido de chamadas por API.

O cliente HTTP deve atrasar a reenviação de pedidos HTTPS adicionais e, em seguida, submetê-los de uma forma que cumpra as limitações de taxa. Uma Retry-After no cabeçalho de resposta que indica quanto tempo esperar (em segundos) antes de fazer um novo pedido

Ignorar a resposta 429 ou tentar submeter novamente pedidos HTTP num período de tempo mais curto dá uma devolução do código de erro 429.

Os parâmetros do corpo são sensíveis às maiúsculas e minúsculas

Os parâmetros do corpo submetidos são atualmente sensíveis às maiúsculas e minúsculas.

Se ocorrer um erro InvalidRequestBody ou MissingRequiredParameter , este poderá ser causado por uma letra minúscula ou maiúscula do parâmetro errada.

Reveja a página documentação da API e verifique se os parâmetros submetidos correspondem ao exemplo relevante.

ID do pedido de correlação

Cada resposta de erro contém um parâmetro de ID exclusivo para controlo.

O nome da propriedade deste parâmetro é "target".

Ao contactar-nos relativamente a um erro, anexar este ID ajuda a encontrar a causa principal do problema.

Exemplos

{
    "error": {
        "code": "ResourceNotFound",
        "message": "Machine 123123123 was not found",
        "target": "43f4cb08-8fac-4b65-9db1-745c2ae65f3a"
    }
}
{
    "error": {
        "code": "InvalidRequestBody",
        "message": "Request body is incorrect",
        "target": "1fa66c0f-18bd-4133-b378-36d76f3a2ba0"
    }
}

Sugestão

Quer saber mais? Engage com a comunidade de Segurança da Microsoft na nossa Comunidade Tecnológica: Microsoft Defender para Endpoint Tech Community.