> For the complete documentation index, see [llms.txt](https://docs.coresignal.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coresignal.com/integrations/amazon-s3.md).

# Amazon S3

## What is Amazon S3?

Amazon S3 (Simple Storage Service) is an Amazon Web Services storage service that enables durable storage and retrieval of any amount of data, organized into buckets and accessible from anywhere on the web.

Amazon S3 delivery is for teams that want automated dataset delivery into their AWS environment for ingestion, warehousing, or downstream processing.

## Available formats and delivery schedule

Coresignal can deliver flat files to S3 in formats that vary by dataset and cadence. Supported flat-file formats across Coresignal datasets include JSONL, Parquet, and CSV.

## How to connect Coresignal to Amazon S3?

Coresignal supports two common S3 setup methods.

### Access key setup

For a standard S3 delivery setup, we need the following:

* Bucket name
* AWS Access Key ID
* AWS Secret Access Key

{% stepper %}
{% step %}
Create or select an S3 bucket to receive Coresignal files.
{% endstep %}

{% step %}
Create credentials with permission to upload files into that bucket.
{% endstep %}

{% step %}
Share the following with Coresignal

Provide the following information:

* Bucket name
* AWS Access Key ID
* AWS Secret Access Key
  {% endstep %}

{% step %}
Coresignal will conduct a test upload to confirm access.
{% endstep %}

{% step %}
Once verified, we configure the agreed-upon delivery schedule and file path.
{% endstep %}
{% endstepper %}

### IAM role setup

Coresignal also supports cross-account, IAM role-based S3 delivery. In this setup, you create a role in your AWS account and authorize Coresignal’s role to assume it.

{% stepper %}
{% step %}
Create or choose an S3 bucket in your AWS account.
{% endstep %}

{% step %}
Create an IAM role for file uploads.
{% endstep %}

{% step %}
In that role’s trust policy, allow Coresignal’s role ARN to assume the role.
{% endstep %}

{% step %}
Attach a policy that allows s3:PutObject on your bucket path.
{% endstep %}

{% step %}
Share the following with Coresignal

Provide details:

* Client IAM role ARN
* Bucket name
* AWS region
  {% endstep %}

{% step %}
Coresignal will perform a test upload to verify the configuration.
{% endstep %}
{% endstepper %}

## Verifying delivery

Once the first files land, check:

* **Expected bucket/prefix** – confirm that files arrived in the agreed folder path.
* **File readability** – confirm that files can be downloaded, decompressed, and parsed.
* **Permissions and access** – confirm that your team can read the uploaded objects in your AWS account.
* **Delivery completeness** – if this is a recurring feed, confirm that the first delivery includes the expected date folder and a non-zero file count.

## FAQ

<details>

<summary>Files aren't showing up in our bucket – what should we check first?</summary>

Ensure that your credentials or IAM role haven't expired or been rotated, and verify that the bucket policy still provides the necessary permissions. Also confirm that the bucket name and region given to Coresignal match exactly.

</details>

<details>

<summary>What if we rotate our Access Key or update our IAM role?</summary>

Notify your account manager as soon as the new credentials or role ARN are ready so the pipeline can be updated without missing a scheduled delivery.

</details>

<details>

<summary>Can I have separate buckets for different datasets?</summary>

Yes, provide the bucket name for each dataset and confirm access. We will then configure individual deliveries to their respective buckets.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.coresignal.com/integrations/amazon-s3.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
