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

# Read MinIO Parquet using saved keys

> Use an explicit saved AWS key set for one Parquet file source.

How-to guideApplies to: Unified engine deployments

Use an explicit saved AWS key set for one Parquet file source.

## Before you start

Use an existing nonempty Parquet dataset and a configured S3 file-source root
covering its prefix. A credential does not authorize an arbitrary storage root.
The identity needs list/read access to the bucket and actual files, plus KMS
decrypt permission when needed. Use the region and HTTPS endpoint for that
bucket. Keep the temporary view and its SELECT in the same Workbench workspace.

Use a reachable MinIO S3 endpoint, keys accepted by that server, and its
configured region. Use HTTPS when available. For an explicitly configured
HTTP-only local MinIO instance, change allow\_http to true. The input root must
point at this MinIO service.

Saved key values require the [encrypted secret store](https://docs.e6data.com/transformation/operations/configuration/secrets.md).

## Values to collect

* Input bucket/prefix, endpoint, region, and matching key values.

## Run the SQL

Replace every `<placeholder>` before running. Use unused names for the resources
below. Run the statements in order in Workbench.

```sql theme={"theme":{"light":"github-light","dark":"github-dark"}}
CREATE SECRET recipe_minio_parquet_key AS '<access-key-id>';
CREATE SECRET recipe_minio_parquet_secret AS '<secret-access-key>';

CREATE CREDENTIAL recipe_minio_parquet_reader USING aws
OPTIONS (
  'authentication' = 'saved'
)
SECRETS ('access_key_id' = 'recipe_minio_parquet_key', 'secret_access_key' = 'recipe_minio_parquet_secret');

CREATE OR REPLACE TEMPORARY VIEW recipe_minio_parquet
USING parquet
OPTIONS (
  path 's3://<bucket>/<parquet-prefix>/',
  credential_reference 'recipe_minio_parquet_reader',
  region '<aws-region>',
  endpoint '<minio-endpoint>',
  allow_http 'false'
);

SELECT * FROM recipe_minio_parquet LIMIT 5;
```

## Check the result

The SELECT should return rows from the chosen dataset. For temporary AWS keys,
it also verifies the matching session token.

## Clean up

Remove only the local view, credential, and secrets.

```sql theme={"theme":{"light":"github-light","dark":"github-dark"}}
DROP VIEW recipe_minio_parquet;
DROP CREDENTIAL recipe_minio_parquet_reader;
DROP SECRET recipe_minio_parquet_key;
DROP SECRET recipe_minio_parquet_secret;
```


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