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

# Amazon Web Service S3 (AWS S3)

> Used to authenticate with AWS S3 buckets.

export const FormField = ({property, label, required = false, diType, uiPatterns, children}) => {
  const patterns = Array.isArray(uiPatterns) ? uiPatterns : uiPatterns ? [uiPatterns] : [];
  return <div style={{
    margin: '1.5rem 0'
  }}>
      <div style={{
    display: 'flex',
    alignItems: 'baseline',
    flexWrap: 'wrap',
    gap: '0.5rem',
    marginBottom: '0.25rem'
  }}>
        <strong>{label}</strong>
        <span style={{
    fontSize: '0.7rem',
    fontWeight: 600,
    textTransform: 'uppercase',
    letterSpacing: '0.04em',
    color: required ? '#6241f5' : '#6b7280'
  }}>
          {required ? 'Required' : 'Optional'}
        </span>
      </div>

      <div>{children}</div>

      {diType || patterns.length > 0 ? <p style={{
    fontSize: '0.85rem',
    color: '#6b7280',
    marginBottom: 0
  }}>
          {diType ? <>
              See the <a href={`/references/${diType}`}>{diType}</a> reference.{' '}
            </> : null}
          {patterns.length > 0 ? <>
              Accepts a <a href={`/documentation/placeholders-and-patterns/patterns#${patterns[0]}`}>pattern</a>.
            </> : null}
        </p> : null}
    </div>;
};

Authenticates a connection with an Amazon S3 bucket. When you add it to an HTTP connection, every request to S3 is automatically signed with your AWS credentials using AWS Signature Version 4, so Amazon accepts it as coming from your account. You only fill in your keys and the region the bucket lives in; the signing happens for you on each request.

This documentation describes: [Schema](/schemas/http-authentication-configurator/aws-s3)

## Fields

<FormField property="key" label="Access key" required>
  The public identifier of the access key you created in AWS. It tells Amazon which account is making the request. You can store the value in an environment variable and reference it here.
</FormField>

<FormField property="secret" label="Secret key" required>
  The secret half of the access key created in AWS. It signs each request and should be kept private. You can store it in an environment variable and reference it here rather than typing it in plainly.
</FormField>

<FormField property="region" label="AWS Region" required>
  The AWS region your S3 bucket is located in, for example `us-east-1`. The signature is tied to this region, so it must match the region of the bucket you are connecting to or AWS will reject the request.
</FormField>

## Sample data

This feature signs outgoing requests rather than transforming data, so there is no before/after to show. A typical setup looks like this:

| Field      | Value             |
| ---------- | ----------------- |
| Access key | `your-access-key` |
| Secret key | `your-secret-key` |
| AWS Region | `eu-west-1`       |

```json Configuration theme={null}
{
  "prototype": "aws-s3",
  "parameters": {
    "key": "your-access-key",
    "secret": "your-secret-key",
    "region": "eu-west-1"
  }
}
```
