Hanzo AI
OpenapiS3

Create objects

Mints a presigned PUT URL the caller uploads to DIRECTLY.

POST /v1/s3/buckets/{bucket}/objects

Addresshttps://api.hanzo.ai/v1/s3/buckets/{bucket}/objects
MethodPOST
Operationpost_s3_buckets_by_bucket_objects
AuthAuthorization: Bearer $HANZO_API_KEY

Mints a presigned PUT URL the caller uploads to DIRECTLY.

The bytes never pass through this binary and the admin credential never leaves the server: the URL is signed against the PUBLIC host, scoped to exactly this bucket and key, and expires. A deployment with no public endpoint configured cannot mint one and answers 503 rather than a URL that will not work.

Billed per call — for MINTING the URL, which is the work this operation does; the upload that follows it goes straight to the store and is not seen here. The balance is checked BEFORE anything is touched, so an unfunded org is refused with no URL issued.

Request

3 fields, body application/json (required).

FieldInTypeRequiredDescription
bucketpathstringyesBucket is the bucket to upload into, from the path.
bucketbodystringBucket is the bucket to upload into, from the path.
keybodystringKey is the object key relative to the bucket root.

Response

StatusBodyMeaning
200presignResponseok

200 body — 4 fields.

FieldInTypeAlwaysDescription
expiresInbodyintegerseconds until the URL expires
keybodystringKey is the object key the URL was signed for, relative to the bucket root and path-cleaned — so it is what the store will actually read or write, which is not…
methodbodystring"PUT" (upload) or "GET" (download)
urlbodystringpresigned URL the browser follows directly

Failure carries the platform error shape — see Errors.

Examples

hanzo s3 buckets objects create <bucket>

S3 API · All Hanzo APIs · Interactive reference

How is this guide?

On this page