Skip to main content
POST
Create Upload

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

orgId
string
required

The organization's id (UUID) or slug — either form is accepted.

projectId
string
required

The project's id (UUID) or slug — either form is accepted.

Query Parameters

environment
string

Environment slug to scope this operation to. Defaults to "production". An environment that does not exist on the project answers 404. The object lands in the addressed environment's scope.

Pattern: ^[a-z][a-z0-9-]{0,38}$
bucket
string

Bucket name to address (see buckets.list). The bucket must belong to this organization and be either an organization-level shared bucket or scoped to this project — any other name answers 404. Omitted, the operation addresses the project's original per-environment storage scope, exactly as before buckets existed; that legacy scope is separate from every named bucket, including the project's default bucket. With a bucket, the object lands in the bucket's own namespace, shared across environments.

Pattern: ^[a-z][a-z0-9-]{1,61}$

Body

application/json
filename
string
required
contentType
string
required
byteLength
integer
required

Exact size of the upload in bytes.

Response

Signed upload. PUT the object bytes to the URL before it expires.

key
string
required

Tenant-relative key the object lands under.

url
string
required
method
enum<string>
required
Available options:
PUT
expiresAt
string<date-time>
required
headers
object

Headers that must accompany the upload request.