# S3StorageIntegration

[Snowflake Documentation](https://docs.snowflake.com/en/sql-reference/sql/create-storage-integration)

Manages the integration of Snowflake with S3 storage.

## Examples

### Python

```python
s3_storage_integration = S3StorageIntegration(
    name="some_s3_storage_integration",
    enabled=True,
    storage_aws_role_arn="arn:aws:iam::123456789012:role/MyS3AccessRole",
    storage_allowed_locations=["s3://mybucket/myfolder/"],
    storage_blocked_locations=["s3://mybucket/myblockedfolder/"],
    storage_aws_object_acl="bucket-owner-full-control",
    comment="This is a sample S3 storage integration."
)
```

### YAML

```yaml
s3_storage_integrations:
  - name: some_s3_storage_integration
    enabled: true
    storage_aws_role_arn: "arn:aws:iam::123456789012:role/MyS3AccessRole"
    storage_allowed_locations:
      - "s3://mybucket/myfolder/"
    storage_blocked_locations:
      - "s3://mybucket/myblockedfolder/"
    storage_aws_object_acl: "bucket-owner-full-control"
    comment: "This is a sample S3 storage integration."
```

## Fields

* `name` (string, required) - The name of the storage integration.
* `enabled` (bool, required) - Whether the storage integration is enabled. Defaults to True.
* `storage_aws_role_arn` (string, required) - The AWS IAM role ARN to access the S3 bucket.
* `storage_allowed_locations` (list, required) - A list of allowed locations for storage in the format 's3:////'.
* `storage_blocked_locations` (list) - A list of blocked locations for storage in the format 's3:////'. Defaults to an empty list.
* `storage_aws_object_acl` (string) - The ACL policy for objects stored in S3. Defaults to 'bucket-owner-full-control'.
* `type` (string) - The type of storage integration. Defaults to 'EXTERNAL\_STAGE'.
* `owner` (string or [Role](/titan-core/resources/role.md)) - The owner role of the storage integration. Defaults to 'ACCOUNTADMIN'.
* `comment` (string) - An optional comment about the storage integration.


---

# 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://titan-core.gitbook.io/titan-core/resources/s3storage_integration.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.
