SQS
Etleap supports ingesting data from SQS FIFO queues.
Source Setup
To allow Etleap to access data in your queues, you need to set up a role that Etleap can assume, and attach a policy that grants access to SQS.
Step 1. Create a New Role
- Go to the IAM section of the AWS console .
- Click Create role, select Trusted Entity Type AWS account and then choose Another AWS account.
- The Account ID for your deployment can be found in the SQS connection setup under Role → Click to show instructions.
- Check the box that says Require External ID.
- Enter the your organization ID: this is provided in the instructions dropdown within the Role section of the Etleap connection setup page for SQS.
- Skip adding permissions for now. Click Next until you reach the Review page.
- Enter a name for the role.
- Click Create role.
If you are running Etleap in a VPC and you are restricting the roles that Etleap can assume via the roles_allowed_to_be_assumed input variable , then you have to add the role created in this step to the list before proceeding.
Step 2. Attach a Policy to the Role
- Find the role in the IAM role list in the AWS console and click it.
- In the Permissions tab, click on Add permissions and then select Add inline policy.
- Click the JSON tab.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sqs:ReceiveMessage", "sqs:DeleteMessage", "sqs:GetQueueAttributes", "sqs:GetQueueUrl", "sqs:ListQueues" ], "Resource": "*" } ] } - Then click Review policy.
- Enter a descriptive Name of your choice, e.g.
etleap_minimal_access_policy. - Click Create policy
After creating a role with the above policy which allows Etleap to list and extract data from your SQS queues, you can proceed with creation of a SQS connection in Etleap connection setup page.
What Data is Available?
Update-Mode Deletes Support
Deletes are supported for update-mode entities with this connector.
Etleap SQS pipelines operate in Update Mode, and support any FIFO SQS queue. By default:
messageIdis the record’s primary key.sentTimestampis the LUTS column.
These default attributes can be overridden on the Destination Settings screen during pipeline creation.
Delete Capturing
Etleap can capture deletions by inspecting a boolean flag named deleted, and a string value named deletedRecordId within the Message Attributes.
If a record has this flag set to true, Etleap will remove the corresponding record (matching deletedRecordId with the primary key) from the destination.
Key Considerations
- FIFO queue constraints require that messages be deleted after they are read before new messages with the same group ID are delivered.
- To maintain data integrity, Etleap must be the sole consumer of the queue.
- As part of standard FIFO behavior, Etleap deletes messages from the queue after processing them.