POST/blobs/stages/multipart
Initiate a multipart blob stage
Operation blobs.multipartStages.initiate
Description
Opens a blob stage for an encrypted upload, declaring the final byte length, SHA-256 digest, and organization, and returns upload sources for the first parts so they can start at once. The caller must belong to the organization. The stage expires after one hour; nothing becomes readable until an attachment bind promotes it.
Authentication
Requires a signed-in session: the client sends its session token as a bearer token in the Authorization header.
Request body
application/jsonInitiateMultipartBlobStageRequest
Opens a blob stage for one encrypted object.
4 fields
organizationIdstringrequired- lowercase UUID v4
byteLengthintegerrequired- greater than 0
Exact size of the complete encrypted object.
- 1 to 4 items
The one to four parts the client sends first, so the response can carry their upload sources.
sha256stringrequired- not empty
SHA-256 of the complete encrypted object, checked when the bind assembles it.
Other fields are allowed.
Responses
200 OK
application/jsonInitiateMultipartBlobStageResponse
A new blob stage and the upload sources for its first parts.
8 fields
organizationIdstringrequired- not empty
byteLengthintegerrequired- greater than 0
expiresAtstringrequiredWhen the stage expires; an attachment bind must complete it before then.
One upload source per requested first part, in request order.
sha256stringrequired- not empty
stageIdstringrequiredParts already uploaded.
uploadIdstringrequiredObject-store multipart upload id; later part authorizations name it.
Other fields are allowed.
Other responses
| Status | Meaning | Body |
|---|---|---|
| 400 | Bad Request |
|
| 401 | Unauthorized |
|
| 403 | Forbidden |
|
| 404 | Not Found |
|
| 409 | Conflict |
|
| 500 | Internal Server Error |
|
| 503 | Service Unavailable |
|