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

# S3 Compatible

> Configuring your S3 compatible destination.

Many object storage platforms offer "S3 compatibility" enabling writing to and reading from the object storage using the S3 protocol. The S3 protocol uses an HMAC key comprised of an access ID and a secret to authenticate and write data.

## Step 1: Create an HMAC Access ID and Secret

Consult your object storage platform's documentation to learn how to generate an HMAC Access ID and Secret.

## Step 2: Add your destination

Securely share your **bucket host**, **bucket name**, chosen **folder name**,  **HMAC access ID**, and **HMAC secret** with us to complete the connection.

## Permissions checklist

* The HMAC access ID and secret have write permissions to the target bucket.
* The bucket is accessible from the data-syncing service's egress IP.

## FAQ

<AccordionGroup>
  <Accordion title="How is the S3 Compatible connection secured?">
    We authenticate using the HMAC access ID and secret you provide. These credentials are used to sign requests to the S3-compatible API. Scope the credentials to only the required bucket to limit access.
  </Accordion>

  <Accordion title="What file formats are supported?">
    Parquet (default and recommended), CSV, JSON, and JSONL.
  </Accordion>

  <Accordion title="How are large datasets written?">
    Files are automatically split; multiple files may be written per model per transfer.
  </Accordion>

  <Accordion title="How is the data organized in the bucket?">
    Data lands in Hive-style partitions per model: `<folder>/<model_name>/dt=<transfer_date>/<file_part>_<transfer_timestamp>.<ext>`. Manifest files are written to a `_manifests/` directory at the root of the configured folder path.
  </Accordion>

  <Accordion title="How do I update my HMAC credentials?">
    Generate new HMAC credentials from your object storage platform and update them in the destination configuration.
  </Accordion>
</AccordionGroup>


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