Skip to main content
POST
Create a data asset and start its first version upload

Authorizations

Authorization
string
header
required

Use a Bearer token for authentication. Submit the token using the Authorization header: Authorization: Bearer <token>.

Path Parameters

username
string
required

The username associated with the request.

namespace
string
required

Namespace for the dataset.

Body

application/json
name
string
required
fileSize
integer<int64>
required
description
string
contentType
string
concurrency
integer

Hint only, never a requirement. How many chunks the client would like in flight. The server silently clamps it to its own maximum and to the total part count, and never rejects a value for being too large or too small. Defaults to the server's setting when omitted. The client must honour the number of URLs actually returned in next, not the number it asked for.

Response

Upload prepared; PUT the bytes to the presigned part URLs then call finish.

assetId
string<uuid>
required
versionNo
integer
required
uploadId
string
required
partSize
integer<int64>
required
totalParts
integer
required
expiresAt
string<date-time>
required

Upload deadline. Each acknowledged part pushes it out.

next
object[]
required

Part URLs to upload next, and the authority on how many may be in flight - it can be fewer than the requested concurrency. Empty once every part number has been handed out, which is not the same as every part having been uploaded: the server tracks only how many it has issued, never what landed. The client is the sole authority on its own progress. To re-obtain a URL it dropped or let expire, use the parts/presign endpoint.