
MinIO Upload
CertifiedUpload a file to a MinIO bucket
MinIO Upload
Upload a file to a MinIO bucket
Uploads a file to a MinIO bucket from Kestra's internal storage.
type: io.kestra.plugin.minio.UploadExamples
id: minio_upload
namespace: company.team
inputs:
- id: file
type: FILE
tasks:
- id: upload_to_storage
type: io.kestra.plugin.minio.Upload
accessKeyId: "<access-key>"
secretKeyId: "{{ secret('MINIO_SECRET_KEY_ID') }}"
region: "eu-central-1"
from: "{{ inputs.file }}"
bucket: "my-bucket"
key: "path/to/file"
Upload file to S3-compatible storage (e.g., DigitalOcean Spaces).
id: s3_compatible_upload
namespace: company.team
tasks:
- id: http_download
type: io.kestra.plugin.core.http.Download
uri: https://huggingface.co/datasets/kestra/datasets/raw/main/csv/orders.csv
- id: upload_to_storage
type: io.kestra.plugin.minio.Upload
accessKeyId: "<access-key>"
secretKeyId: "{{ secret('MINIO_SECRET_KEY_ID') }}"
endpoint: https://<region>.digitaloceanspaces.com
bucket: "kestra-test-bucket"
from: "{{ outputs.http_download.uri }}"
key: "data/orders.csv"
Properties
accessKeyId string
Access Key Id for authentication
bucket string
The bucket name
caPem string
CA PEM certificate content
CA certificate as text, used to verify SSL/TLS connections to custom MinIO endpoints.
clientPem string
Client PEM certificate content
PEM client certificate as text, used to authenticate the connection to MinIO (mTLS).
contentType string
A standard MIME type describing the format of the contents
endpoint string
URL to the MinIO endpoint
from Non-dynamicstringobject
The file(s) to upload
Can be a single file, a list of files or json array.
List objects on a MinIO bucket
Lists objects in a MinIO bucket, optionally filtered by prefix, delimiter, or regular expression.
id: minio_list
namespace: company.team
tasks:
- id: list_objects
type: io.kestra.plugin.minio.List
accessKeyId: "<access-key>"
secretKeyId: "{{ secret('MINIO_SECRET_KEY_ID') }}"
region: "eu-central-1"
bucket: "my-bucket"
prefix: "sub-dir"
List files from an S3-compatible storage — here, Spaces Object Storage from Digital Ocean.
id: s3_compatible_list
namespace: company.team
tasks:
- id: list_objects
type: io.kestra.plugin.minio.List
accessKeyId: "<access-key>"
secretKeyId: "{{ secret('MINIO_SECRET_KEY_ID') }}"
endpoint: https://<region>.digitaloceanspaces.com
bucket: "kestra-test-bucket"
Access Key Id for authentication
The bucket name
CA PEM certificate content
CA certificate as text, used to verify SSL/TLS connections to custom MinIO endpoints.
Client PEM certificate content
PEM client certificate as text, used to authenticate the connection to MinIO (mTLS).
A delimiter is a character you use to group keys
URL to the MinIO endpoint
BOTHFILESDIRECTORYBOTHThe type of objects to filter: files, directory, or both
trueIndicates whether task should include versions in output
Marker is where you want to start listing from
Start listing after this specified key. Marker can be any key in the bucket.
1000Sets the maximum number of keys returned in the response
By default, the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.
Reference (ref) of the pluginDefaults to apply to this task.
Limits the response to keys that begin with the specified prefix
trueIndicates whether it should look into subfolders
A regexp to filter on full key
ex:
regExp: .* to match all files
regExp: .*2020-01-0.\\.csv to match files between 01 and 09 of january ending with .csv
MinIO region with which the SDK should communicate
Secret Key Id for authentication
SSL/TLS configuration options
io.kestra.core.http.client.configurations.SslOptions
Whether to disable checking of the remote SSL certificate.
Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.
Limits the response to keys that ends with the specified string
key string
The key where to upload the file
a full key (with filename) or the directory path if from is multiple files.
metadata object
A map of metadata to store with the object
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
region string
MinIO region with which the SDK should communicate
secretKeyId string
Secret Key Id for authentication
ssl Non-dynamic
SSL/TLS configuration options
io.kestra.core.http.client.configurations.SslOptions
Whether to disable checking of the remote SSL certificate.
Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.
Outputs
bucket string
The bucket name
key string
The object key
versionId string
The version of the object
Metrics
file.count counter
countNumber of files successfully uploaded to the MinIO bucket.
file.size counter
bytesSize of the uploaded files in bytes.