Skip to main content

MinIO

MinIO is an S3-compatible object store. The MinIO destination writes each stream run to an object in a MinIO bucket.

Prerequisites

  • A reachable MinIO endpoint URL (for example, https://minio.example.com or http://localhost:9000)
  • A MinIO access key + secret key with permission to read and write to the target bucket (the connector validates access by performing a HeadBucket and a small test PutObject/DeleteObject during login)

Setup

  1. Create a MinIO user/access key that has at least:
    • s3:ListBucket on the bucket
    • s3:PutObject, s3:DeleteObject on the target prefix
  2. In Extract, configure the connector:
    • Endpoint URL
    • Access Key ID / Secret Access Key
    • Bucket Name
    • Bucket Key template (see below)

Connection Settings

The Key (object path) supports the same macros as the S3 destination (for example: {stream_name}, {timestamp}, {connection_id}, {connection_run_id}, {stream_run_id}, {extension}, and cursor-derived placeholders).

TLS / self-signed certificates

If your MinIO uses HTTPS with a self-signed/invalid certificate, enable Insecure TLS (Skip Certificate Verification).

This disables TLS certificate verification and should only be used in trusted networks.

Notes

  • During connection testing, the destination validates both read and write access to the target bucket by:

    • Calling HeadBucket on the configured bucket.
    • Uploading a small test object under extract_login_test/<uuid>.txt, then attempting to delete it. Ensure the credentials/policy allow s3:ListBucket, s3:GetBucketLocation, s3:PutObject, and s3:DeleteObject (or equivalent MinIO permissions) for the configured bucket/prefix.
  • When using output_format: csv, the connector writes a header row.