Foxel
Menu
On this page

S3 object storage

Connect Amazon S3 or a compatible service such as MinIO through the S3 API. Supports object reads and writes, directory listings, moves, and copies.

Adapter type: s3. See Common configuration for mounting instructions.

Setup

  1. Create a bucket and record its name, region, and API endpoint.
  2. Create an access key with bucket listing, object read/write/delete, and required multipart upload permissions.
  3. Normally omit endpoint_url for AWS S3. For compatible services, use the S3 API endpoint including its scheme, rather than the management console URL.
  4. Optionally isolate files under a bucket prefix such as foxel using root.

Configuration

FieldTypeRequiredDefaultDescription
download_segment_size_mbnumberNo8Download segment size in MiB, clamped to 1–64.
download_concurrencynumberNo4Concurrent download segments, clamped to 1–16.
multipart_part_size_mbnumberNo8Upload part size in MiB, clamped to 5–64.
multipart_concurrencynumberNo4Concurrent upload parts, clamped to 1–16.
bucket_namestringYes—Existing bucket name, not a URL.
access_key_idstringYes—Access key ID authorized for this bucket.
secret_access_keypasswordYes—Matching secret access key.
region_namestringNo—Bucket region as required by your provider.
endpoint_urlstringNo—HTTP(S) S3 API endpoint; usually omitted for AWS S3.
rootstringNo""Directory on the backend, separate from the mount path displayed in Foxel.

Example

This is a config object. In the admin form, fill the corresponding fields rather than pasting the whole object. Replace credential placeholders with your own values.

json
{
  "bucket_name": "foxel-files",
  "access_key_id": "YOUR_ACCESS_KEY",
  "secret_access_key": "YOUR_SECRET_KEY",
  "region_name": "us-east-1",
  "endpoint_url": "https://s3.example.com",
  "root": "foxel"
}

Behavior and limitations

  • root is an object-key prefix without the bucket name. Directories are a logical view of prefixes.
  • Uploads and downloads default to 8 MiB parts with concurrency 4. Check bandwidth and memory before increasing concurrency.
  • Moves and renames involve object copies and deletion, requiring both permissions.

Troubleshooting

  • AccessDenied: check key policies, bucket policies, and allowed prefixes.
  • Signature or region error: verify region, endpoint, and server time.
  • Console works but listing fails: use the S3 API port; MinIO commonly uses separate API and console ports.

References

External documentation provides service and authorization context. Use this page and the current Foxel adapter for configuration fields and limitations.