> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aikeedo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Amazon SQS

> Keep Aikeedo's background jobs in Amazon SQS queues.

## Overview

Amazon Simple Queue Service (SQS) is a fully managed queue on AWS. Each Aikeedo queue becomes a standard SQS queue named with your prefix, such as `aikeedo-default`. The adapter creates the queues as needed.

The adapter also works with SQS-compatible services such as ElasticMQ and LocalStack, through the **Endpoint** setting.

## Configuration

**1. Create an IAM user**

In the [IAM console](https://console.aws.amazon.com/iam/home), create a user for programmatic access and attach this policy, adjusting the prefix if you change it:

```json theme={null}
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sqs:CreateQueue",
        "sqs:GetQueueUrl",
        "sqs:GetQueueAttributes",
        "sqs:SendMessage",
        "sqs:ReceiveMessage",
        "sqs:DeleteMessage",
        "sqs:ChangeMessageVisibility"
      ],
      "Resource": "arn:aws:sqs:*:*:aikeedo-*"
    },
    {
      "Effect": "Allow",
      "Action": "sqs:ListQueues",
      "Resource": "*"
    }
  ]
}
```

`sqs:ListQueues` needs its own statement on `"*"`: it cannot be limited to some queues, and AWS ignores it under a narrower resource.

Then create an access key for it and copy the **Access key ID** and **Secret access key**.

**2. Enter the connection**

Go to **Settings → System → Queue adapters → Amazon SQS**, choose the **Region** and enter the keys. Leave **Endpoint** empty for Amazon SQS.

**3. Test and enable**

Turn on **Status** and press **Save changes**. Saving tests the connection first, and shows the service's error if it fails. Then choose Amazon SQS on the **Queue** page.

## Good to know

* **Counts only.** SQS cannot list its messages, so the Queue page shows how many jobs are waiting, and those numbers are approximate.
* **Long delays.** SQS delays a message by at most 15 minutes. The adapter handles longer delays itself: a message taken before it is due is sent again, keeping its attempt count.
* **Prefix.** An empty prefix falls back to `aikeedo-`, so workers never take messages from your other queues.

## Need Help?

If you need assistance with Aikeedo:

> [card] [Professional Support](https://aikeedo.com/support/?utm_source=docs\&utm_medium=content)
>
> Get expert help from our team with a paid support subscription

> [card] [Troubleshooting Guide](https://docs.aikeedo.com/setup/troubleshooting.md)
>
> Check common issues and solutions


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.