Skip to Content
We are live but in Staging 🎉
Object StorageOverview

Object Storage

K3’s object storage is S3-compatible, with re-signing for SigV4 / SigV2 and K3 token-based access. It speaks the standard S3 protocol — PUT / GET / HEAD / DELETE / LIST, multipart uploads, presigned URLs, ACL, and CORS — so existing S3 tooling works out of the box.

It also doubles as the base storage layer for every other K3 primitive: Tables persist their Delta Lake artifacts in the bucket, and Vector collections snapshot to S3 as well. Object Storage is “where bytes live”; the other primitives layer meaning, structure, and retrieval on top.

What makes K3 storage different from plain S3: every upload can flow into an ingest pipeline automatically — vector indexes, warehouses, or custom Scriptum workflows. See Pipelines for that side.

What you can do

  • Standard S3 PUT / GET / HEAD / DELETE / LIST (including multipart) against the K3 gateway
  • Bucket creation, S3-style policy (ACL), CORS configuration
  • Pre-signed URLs (SigV4, SigV2, K3 token)
  • Drop in existing S3 SDKs and tooling — aws-cli, boto3, @aws-sdk/client-s3, MinIO client, etc.
  • Auto-discovery into ingest pipelines on upload

In this section

  • Quickstart — your first bucket, object, and presigned URL in 5 minutes
  • Core Concepts — buckets, objects, policy, CORS, presigned URLs
  • API Reference — gRPC + HTTP contracts, grouped per resource
  • CLI Guidedodil k3 CLI for buckets, policy, CORS, objects, and mounts

See also