Mensagens de erro

Este documento identifica alguns dos códigos de erro e mensagens devolvidos pelas APIs Google. Especificamente, os erros indicados aqui estão no domínio global ou predefinido para as APIs Google. Muitas APIs também definem os seus próprios domínios, que identificam erros específicos da API que não estão no domínio global. Para esses erros, o valor da propriedade domain na resposta JSON é um valor específico da API, como youtube.parameter.

Esta página apresenta os erros pelos respetivos códigos de estado HTTP, conforme definido na RFC 7231.

A resposta JSON de exemplo abaixo demonstra como é comunicada um erro global:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "invalidParameter",
    "message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]",
    "locationType": "parameter",
    "location": "chart"
   }
  ],
  "code": 400,
  "message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]"
 }
}

Erros

  1. MOVED_PERMANENTLY (301)
  2. SEE_OTHER (303)
  3. NOT_MODIFIED (304)
  4. TEMPORARY_REDIRECT (307)
  5. BAD_REQUEST (400)
  6. UNAUTHORIZED (401)
  7. PAYMENT_REQUIRED (402)
  8. FORBIDDEN (403)
  9. NOT_FOUND (404)
  10. METHOD_NOT_ALLOWED (405)
  11. CONFLICT (409)
  12. GONE (410)
  13. PRECONDITION_FAILED (412)
  14. REQUEST_ENTITY_TOO_LARGE (413)
  15. REQUESTED_RANGE_NOT_SATISFIABLE (416)
  16. EXPECTATION_FAILED (417)
  17. PRECONDITION_REQUIRED (428)
  18. TOO_MANY_REQUESTS (429)
  19. INTERNAL_SERVER_ERROR (500)
  20. NOT_IMPLEMENTED (501)
  21. SERVICE_UNAVAILABLE (503)

MOVED_PERMANENTLY (301)

Código de erro Descrição
movedPermanently Esta solicitação e as solicitações futuras para a mesma operação têm de ser enviadas para o URL especificado no cabeçalho Location desta resposta, em vez de para o URL para o qual esta solicitação foi enviada.

SEE_OTHER (303)

Código de erro Descrição
seeOther O seu pedido foi processado com êxito. Para obter a sua resposta, envie um pedido GET para o URL especificado no cabeçalho Location.
mediaDownloadRedirect O seu pedido foi processado com êxito. Para obter a sua resposta, envie um pedido GET para o URL especificado no cabeçalho Location.

NOT_MODIFIED (304)

Código de erro Descrição
notModified A condição definida para um cabeçalho If-None-Match não foi cumprida. Esta resposta indica que o documento pedido não foi modificado e que deve ser obtida uma resposta em cache. Verifique o valor do cabeçalho do pedido HTTP If-None-Match.

TEMPORARY_REDIRECT (307)

Código de erro Descrição
temporaryRedirect Para que o seu pedido seja processado, reenvie-o para o URL especificado no cabeçalho Location desta resposta.

BAD_REQUEST (400)

Código de erro Descrição
badRequest O pedido da API é inválido ou tem um formato incorreto. Consequentemente, o servidor da API não conseguiu compreender o pedido.
badBinaryDomainRequest O pedido de domínio binário é inválido.
badContent O tipo de conteúdo dos dados do pedido ou o tipo de conteúdo de uma parte de um pedido multipartes não é suportado.
badLockedDomainRequest O pedido de domínio bloqueado é inválido.
corsRequestWithXOrigin O pedido CORS contém um cabeçalho X-Origin XD3, que é indicativo de um pedido CORS inválido.
endpointConstraintMismatch O pedido falhou porque não correspondeu à API especificada. Verifique o valor do caminho de URL para se certificar de que está correto.
invalid O pedido falhou porque continha um valor inválido. O valor pode ser um valor de parâmetro, um valor de cabeçalho ou um valor de propriedade.
invalidAltValue O valor do parâmetro alt especifica um formato de saída desconhecido.
invalidHeader O pedido falhou porque continha um cabeçalho inválido.
invalidParameter O pedido falhou porque continha um parâmetro ou um valor de parâmetro inválido. Reveja a documentação da API para determinar que parâmetros são válidos para o seu pedido.
invalidQuery A solicitação é inválida. Consulte a documentação da API para determinar que parâmetros são suportados para o pedido e para ver se o pedido contém uma combinação de parâmetros inválida ou um valor de parâmetro inválido. Verifique o valor do parâmetro de pedido q.
keyExpired A chave da API fornecida no pedido expirou, o que significa que o servidor da API não consegue verificar o limite de quota para a aplicação que está a fazer o pedido. Consulte a Google Developers Console para mais informações ou para obter uma nova chave.
keyInvalid A chave da API fornecida no pedido é inválida, o que significa que o servidor da API não consegue verificar o limite de quota da aplicação que está a fazer o pedido. Use a Google Developers Console para encontrar a chave da API ou para obter uma.
lockedDomainCreationFailure O token OAuth foi recebido na string de consulta, o que esta API proíbe para formatos de resposta que não sejam JSON ou XML. Se possível, experimente enviar o token OAuth no cabeçalho de autorização.
notDownload Só é possível enviar pedidos de transferência de multimédia para caminhos de URL /download/*. Reenvie o pedido para o mesmo caminho, mas sem o prefixo /download.
notUpload O pedido falhou porque não é um pedido de carregamento e só é possível enviar pedidos de carregamento para /upload/* URIs. Experimente reenviar o pedido para o mesmo caminho, mas sem o prefixo /upload.
parseError O servidor da API não consegue analisar o corpo do pedido.
required O pedido da API tem informações necessárias em falta. As informações necessárias podem ser um parâmetro ou uma propriedade do recurso.
tooManyParts O pedido multipart falhou porque contém demasiadas partes
unknownApi A API que o pedido está a chamar não é reconhecida.
unsupportedMediaProtocol O cliente está a usar um protocolo de multimédia não suportado.
unsupportedOutputFormat O valor do parâmetro alt especifica um formato de saída que não é suportado para este serviço. Verifique o valor do parâmetro de pedido alt.
wrongUrlForUpload O pedido é um pedido de carregamento, mas falhou porque não foi enviado para o URI adequado. Os pedidos de carregamento têm de ser enviados para URIs que contenham o prefixo /upload/*. Experimente reenviar o pedido para o mesmo caminho, mas com o prefixo /upload.

UNAUTHORIZED (401)

Código de erro Descrição
unauthorized O utilizador não tem autorização para fazer o pedido.
authError As credenciais de autorização fornecidas para o pedido são inválidas. Verifique o valor do cabeçalho do pedido HTTP Authorization.
expired Sessão expirada. Verifique o valor do cabeçalho do pedido HTTP Authorization.
lockedDomainExpired O pedido falhou porque um domínio bloqueado anteriormente válido expirou.
required O utilizador tem de ter sessão iniciada para fazer este pedido de API. Verifique o valor do cabeçalho do pedido HTTP Authorization.

PAYMENT_REQUIRED (402)

Código de erro Descrição
dailyLimitExceeded402 Foi atingido um limite do orçamento diário definido pelo programador.
quotaExceeded402 A operação pedida requer mais recursos do que a quota permite. É necessário um pagamento para concluir a operação.
user402 A operação pedida requer algum tipo de pagamento do utilizador autenticado.

FORBIDDEN (403)

Código de erro Descrição
forbidden A operação solicitada é proibida e não pode ser concluída.
accessNotConfigured O seu projeto não está configurado para aceder a esta API. Use a Google Developers Console para ativar a API para o seu projeto.
accessNotConfigured O projeto foi bloqueado devido a abuso. Consulte http://support.google.com/code/go/developer_compliance.
accessNotConfigured O projeto foi marcado para eliminação.
accountDeleted A conta de utilizador associada às credenciais de autorização do pedido foi eliminada. Verifique o valor do cabeçalho do pedido HTTP Authorization.
accountDisabled A conta de utilizador associada às credenciais de autorização do pedido foi desativada. Verifique o valor do cabeçalho do pedido HTTP Authorization.
accountUnverified O endereço de email do utilizador que está a fazer o pedido não foi validado. Verifique o valor do cabeçalho do pedido HTTP Authorization.
concurrentLimitExceeded O pedido falhou porque foi atingido um limite de utilização simultânea.
dailyLimitExceeded Foi atingido um limite da quota diária para a API.
dailyLimitExceeded O limite da quota diária foi atingido e o projeto foi bloqueado devido a abuso. Consulte o formulário de apoio técnico de conformidade das APIs Google para ajudar a resolver o problema.
dailyLimitExceededUnreg O pedido falhou porque foi atingido um limite diário para a utilização da API não autenticada. A utilização contínua da API requer a inscrição através da Google Developers Console.
downloadServiceForbidden A API não suporta um serviço de transferência.
insufficientAudience Não é possível concluir o pedido para este público-alvo.
insufficientAuthorizedParty Não é possível concluir o pedido para esta aplicação.
insufficientPermissions O utilizador autenticado não tem autorizações suficientes para executar este pedido.
limitExceeded Não é possível concluir o pedido devido a limitações de acesso ou de taxa.
lockedDomainForbidden Esta API não suporta domínios bloqueados.
quotaExceeded A operação pedida requer mais recursos do que a quota permite.
rateLimitExceeded Foram enviados demasiados pedidos num determinado período.
rateLimitExceededUnreg Foi excedido um limite de taxa e tem de registar a sua aplicação para poder continuar a chamar a API. Inscreva-se através da Google Developers Console.
responseTooLarge O recurso pedido é demasiado grande para ser devolvido.
servingLimitExceeded O limite de velocidade geral especificado para a API já foi atingido.
sslRequired É necessário SSL para realizar esta operação.
unknownAuth O servidor da API não reconhece o esquema de autorização usado para o pedido. Verifique o valor do cabeçalho do pedido HTTP Authorization.
userRateLimitExceeded O pedido falhou porque foi atingido um limite de tráfego por utilizador.
userRateLimitExceededUnreg O pedido falhou porque foi atingido um limite de taxa por utilizador e o programador do cliente não foi identificado no pedido. Use a Google Developers Console (https://console.developers.google.com) para criar um projeto para a sua aplicação.
variableTermExpiredDailyExceeded O pedido falhou porque uma quota de prazo variável expirou e foi atingido um limite diário.
variableTermLimitExceeded O pedido falhou porque foi atingido um limite de quota de prazo variável.

NOT_FOUND (404)

Código de erro Descrição
notFound A operação pedida falhou porque não foi possível encontrar um recurso associado ao pedido.
notFound Não foi possível encontrar um recurso associado ao pedido. Se não usou esta API nas últimas 2 semanas, implemente novamente a app do App Engine e tente chamá-la novamente.
unsupportedProtocol O protocolo usado no pedido não é suportado.

METHOD_NOT_ALLOWED (405)

Código de erro Descrição
httpMethodNotAllowed O método HTTP associado ao pedido não é compatível.

CONFLICT (409)

Código de erro Descrição
conflict Não é possível concluir o pedido API porque a operação pedida entraria em conflito com um item existente. Por exemplo, um pedido que tente criar um item duplicado cria um conflito, embora os itens duplicados sejam normalmente identificados com erros mais específicos.
duplicate A operação pedida falhou porque tentou criar um recurso que já existe.

GONE (410)

Código de erro Descrição
deleted O pedido falhou porque o recurso associado ao pedido foi eliminado

PRECONDITION_FAILED (412)

Código de erro Descrição
conditionNotMet A condição definida no cabeçalho do pedido HTTP If-Match ou If-None-Match do pedido não foi cumprida. Consulte a secção ETag da especificação HTTP para ver detalhes. Verifique o valor do cabeçalho do pedido HTTP If-Match.

REQUEST_ENTITY_TOO_LARGE (413)

Código de erro Descrição
backendRequestTooLarge O pedido é demasiado grande.
batchSizeTooLarge O pedido em lote contém demasiados elementos.
uploadTooLarge O pedido falhou porque os dados enviados no pedido são demasiado grandes.

REQUESTED_RANGE_NOT_SATISFIABLE (416)

Código de erro Descrição
requestedRangeNotSatisfiable O pedido especificou um intervalo que não pode ser cumprido.

EXPECTATION_FAILED (417)

Código de erro Descrição
expectationFailed O servidor não consegue satisfazer uma expectativa do cliente.

PRECONDITION_REQUIRED (428)

Código de erro Descrição
preconditionRequired O pedido requer uma condição prévia que não é fornecida. Para que este pedido seja bem-sucedido, tem de fornecer um cabeçalho If-Match ou If-None-Match com o pedido.

TOO_MANY_REQUESTS (429)

Código de erro Descrição
rateLimitExceeded Foram enviados demasiados pedidos num determinado período.

INTERNAL_SERVER_ERROR (500)

Código de erro Descrição
internalError O pedido falhou devido a um erro interno.

NOT_IMPLEMENTED (501)

Código de erro Descrição
notImplemented A operação solicitada não foi implementada.
unsupportedMethod O pedido falhou porque está a tentar executar um método ou uma operação desconhecida.

SERVICE_UNAVAILABLE (503)

Código de erro Descrição
backendError Ocorreu um erro de back-end.
backendNotConnected O pedido falhou devido a um erro de ligação.
notReady O servidor da API não está pronto para aceitar pedidos.