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

# S3Configs

Configuration for AWS S3 storage operations.
Defines the parameters needed to connect to and interact with AWS S3 storage services. Supports both standard AWS S3 and S3-compatible storage services through custom endpoints.

```typescript theme={null}
export interface S3Configs {
  bucket?: string;
  region?: string;
  accessKeyId?: string;
  secretAccessKey?: string;
  endpoint?: string;
}
```

## Properties

<ParamField path="bucket" type="string">
  Name of the S3 bucket to store files in. Must be a valid S3 bucket name following AWS naming conventions.
</ParamField>

<ParamField path="region" type="string">
  AWS region where the S3 bucket is located. Examples: "us-east-1", "eu-west-1", "ap-southeast-1"
</ParamField>

<ParamField path="accessKeyId" type="string">
  AWS access key ID for authentication. If undefined, will attempt to use default AWS credentials or environment variables.
</ParamField>

<ParamField path="secretAccessKey" type="string">
  AWS secret access key for authentication. If undefined, will attempt to use default AWS credentials or environment variables.
</ParamField>

<ParamField path="endpoint" type="string">
  Custom endpoint URL for S3-compatible storage services. Use this for services like MinIO, DigitalOcean Spaces, or other S3-compatible APIs. For standard AWS S3, leave this undefined.
</ParamField>

## Examples

<CodeGroup>
  ```typescript Basic Configuration theme={null}
  import { uploadFileToS3, S3Configs } from "@intuned/browser";
  import { BrowserContext, Page } from "playwright";
  interface Params {}
  export default async function handler(params: Params, page: Page, context: BrowserContext){
    // Using explicit credentials
    const s3Config: S3Configs = {
      accessKeyId: "accessKeyId",
      secretAccessKey: "SecretAccessKeyId",
      bucket: "my-app-uploads",
      region: "us-east-1"
    };
  }
  ```

  ```typescript Environment Variables Configuration theme={null}
  import { uploadFileToS3, S3Configs } from "@intuned/browser";
  export default async function handler(params, page, context){
    // Credentials will be picked up from environment or IAM roles
    const s3Config: S3Configs = {
      bucket: "my-app-uploads",
      region: "us-west-2"
    };
  }
  ```
</CodeGroup>
