

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Solucionar problemas de erros de API do Amazon SQS
<a name="troubleshooting-api-errors"></a>

Os tópicos a seguir abordam os erros mais comuns retornados ao fazer chamadas de API do Amazon SQS e como solucioná-los.

## Erro QueueDoesNotExist
<a name="queuedoesnotexist-error"></a>

Esse erro será retornado quando o serviço Amazon SQS não conseguir encontrar a fila mencionada para a ação do Amazon SQS.

**Possíveis causas e mitigações:**
+ **Região incorreta:** revise a configuração do cliente do Amazon SQS para confirmar se você configurou a região correta no cliente. Quando você não configura uma região no cliente, o SDK ou a AWS CLI escolhe a região no [arquivo de configuração](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) ou na variável de ambiente. Se o SDK não encontrar uma região no arquivo de configuração, ele definirá a região como us-east-1 por padrão. 
+ **A fila pode ter sido excluída recentemente:** se a fila foi excluída antes da chamada de API ser feita, a chamada da API retornará esse erro. Verifique se há alguma operação de [DeleteQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html) no CloudTrail antes do momento do erro.
+ **Problemas de permissão:** se o perfil ou usuário solicitante do AWS Identity and Access Management (IAM) não tiver as permissões necessárias, você poderá receber o seguinte erro:

  ```
  The specified queue does not exist or you do not have access to it.
  ```

  Verifique as permissões e faça a chamada de API com as permissões corretas. 

Consulte mais detalhes sobre a solução de problemas do erro `QueueDoesNotExist` em [Como soluciono o erro QueueDoesNotExist ao fazer chamadas de API para minha fila do Amazon SQS?](https://repost.aws/knowledge-center/sqs-queuedoesnotexist-errors) no *Guia do Centro de Conhecimento da AWS*.

## Erro InvalidAttributeValue
<a name="invalidattributevalue-error"></a>

Esse erro será retornado ao atualizar a política de recursos de fila do Amazon SQS ou propriedades com uma política ou uma entidade principal incorretas.

**Possíveis causas e mitigações:**
+ **Política de recursos inválida:** verifique se a política de recursos tem todos os campos obrigatórios. Consulte mais informações [Referência de elemento de política JSON do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) e [Validação de política do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html). Você também pode usar o [gerador de políticas do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html) para criar e testar uma política de recursos do Amazon SQS. Verifique se a política está no formato JSON.
+ **Entidade principal inválida:** verifique se o elemento `Principal` existe na política de recursos e se o valor é válido. Se o elemento `Principal` da política de recursos do Amazon SQS incluir uma entidade do IAM, certifique-se de que a entidade exista antes de usar a política. O Amazon SQS valida a política de recursos e verifica a entidade do IAM. Se a entidade do IAM não existir, você receberá um erro. Para confirmar as entidades do IAM, use as APIs [`GetUser`](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUser.html) e [`GetRole`](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html).

Consulte mais informações sobre a solução de problemas do erro `InvalidAttributeValue` em [Como soluciono o erro QueueDoesNotExist ao fazer chamadas de API para minha fila do Amazon SQS?](https://repost.aws/knowledge-center/sqs-invalid-parameter-policy) no *Guia do Centro de Conhecimento da AWS*.

## Erro ReceiptHandle
<a name="receipthandle-error"></a>

Ao fazer uma chamada de API [`DeleteMessage`](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html), o erro `ReceiptHandleIsInvalid` ou `InvalidParameterValue` poderá ser retornado se o identificador do recibo estiver incorreto ou expirado.
+ **Erro ReceiptHandleIsInvalid:** se o identificador do recibo estiver incorreto, você receberá um erro semelhante a este exemplo:

  ```
  An error occurred (ReceiptHandleIsInvalid) when calling the DeleteMessage operation: The input receipt handle <YOUR RECEIPT HANDLE> is not a valid receipt handle.
  ```
+ **Erro InvalidParameterValue:** se o identificador do recibo estiver expirado, você receberá um erro semelhante a este exemplo:

  ```
  An error occurred (InvalidParameterValue) when calling the DeleteMessage operation: Value <YOUR RECEIPT HANDLE> for parameter ReceiptHandle is invalid. Reason: The receipt handle has expired.
  ```

**Possíveis causas e mitigações:**

O identificador do recibo é criado para cada mensagem recebida e só é válido para o período de tempo limite de visibilidade. Quando o período de tempo limite de visibilidade expira, a mensagem fica visível na fila para os consumidores. Ao receber a mensagem novamente do consumidor, você recebe um novo identificador de recibo. Para evitar erros incorretos ou expirados no identificador de recibo, use o identificador de recibo correto para excluir a mensagem dentro do período de tempo limite de visibilidade da fila do Amazon SQS.

Consulte mais informações sobre como solucionar um erro `ReceiptHandle` em [Como solucionar os erros “ReceiptHandleIsInvalid” e “InvalidParameterValue” ao usar a chamada de API DeleteMessage do Amazon SQS?](https://repost.aws/knowledge-center/sqs-receipt-handle-error) no *Guia do Centro de Conhecimento da AWS*.