# Amazon S3 Listener

Learn more about this Listener type in [this article](/the-workspace/listeners/listener-integrations/collect-data-from-aws-products/collect-data-from-amazon-s3.md).

<details>

<summary>v3.0.0</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">05/12/2026</mark>

We've added the **Path pattern** parameter, which allows you to filter which S3 objects are processed based on their key (path). It accepts Go regular expressions (RE2 syntax), which are matched against the full object key after URL-decoding.

The field is **required** and defaults to `.*` (match everything, backward-compatible with previous versions that did not have this filter).

</details>

<details>

<summary>v2.2.2</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">04/21/2026</mark>

We have added a **Text** format for the s3 objects, with **Non Transparent Framing** and **Octet** **Counting** options.

</details>

<details>

<summary>v2.2.0</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">01/28/2026</mark>

New fields for S3 traffic events:

* `bucket_name`
* `object_path`
* `aws_region`
* `sqs_aws_region`
* `sqs_queue_url`
* `sqs_event_time`
* `s3_event_name`
* `sqs_event_source_arn`

These fields represent data points captured when monitoring Amazon S3 bucket activity through SQS (Simple Queue Service) notifications.

</details>

<details>

<summary>v2.1.0</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">12/11/2025</mark>

Added the possibility to use external S3 buckets and SQS queues using `AssumeRole`. Assume Role is an AWS Identity and Access Management (IAM) feature that enables secure, temporary access to S3 buckets and objects without sharing long-term credentials.

</details>

<details>

<summary>v2.0.1</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">11/24/2025</mark>

* New **JSON** type where you can specify the path you want to retrieve and if you want to generate one event for each array element or the whole element.
* Element selection will discard data that is not pointed by the path so the whole document does not need to be stored in memory at once.

</details>

<details>

<summary>v1.2.0</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">10/30/2025</mark>

* Added support for configurable authentication type: auto (e.g., EC2 IAM role) or manual (static credentials).
* Improved JSON Lines parsing: trailing newline at the end of the file is now optional.
* **Added CSV format support**: Full support for processing CSV files from S3 buckets.
  * **Streaming CSV processing** using Go's builtin `encoding/csv` package with memory usage bounded independently of file size
  * **Dual output modes**: CSV (preserves original formatting) or JSON (converts to structured objects)
  * **Comprehensive CSV configuration options**:
    * Header row handling (with/without headers)
    * Custom delimiters (comma, semicolon, tab, or custom)
    * Text encoding support (UTF-8, UTF-16, ISO-8859-1, Windows-1252)
    * Advanced parsing options (trimLeadingSpace, lazyQuotes, fieldsPerRecord, comment character)
  * **Auto-detection**: CSV files with `.csv` extension are automatically detected when format is set to "auto"
  * **Robust error handling**: Malformed CSV records are logged and skipped without stopping processing

</details>

<details>

<summary>v1.0.0</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">06/04/2025</mark>

* Added support for configurable authentication type: auto (e.g.,\
  EC2 IAM role) or manual (static credentials).
* Improved JSON Lines parsing: trailing newline at the end of the file is now\
  optional.

</details>

<details>

<summary>v0.0.1</summary>

<mark style="background-color:purple;">**Released on**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">03/25/2025</mark>

Initial version

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.onum.com/listeners/amazon-s3-listener.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
