Tearleads

PUT/blobs/stages/multipart/{stageId}/parts/{partNumber}/bytes

Upload multipart blob part bytes through the API

Operation blobs.multipartStages.parts.upload

Description

Uploads one part's encrypted bytes through the API, for object stores that cannot sign direct upload URLs. Only the stage's owner may call it, and stores that do sign URLs reject this route. The part's declared byte length and SHA-256 headers must match the bytes sent.

Authentication

Requires a signed-in session: the client sends its session token as a bearer token in the Authorization header.

Parameters

NameInTypeDetails
stageIdpathstringrequired
  • UUID
partNumberpathintegerrequired
  • at least 1
x-tearleads-blob-part-byte-lengthheaderstringrequired
  • 1 to 9 characters
  • decimal digits
x-tearleads-blob-part-sha256headerstringrequired
  • exactly 64 characters
  • lowercase hexadecimal
x-tearleads-blob-upload-idheaderstringrequired
  • not empty

Request body

application/octet-streambytes

  • raw bytes

Responses

200 OK

application/jsonUploadMultipartBlobPartResponse

Confirms a part uploaded through the API byte route.

3 fields

Other fields are allowed.

Other responses

StatusMeaningBody
400Bad Request

application/jsonErrorResponse

401Unauthorized

application/jsonSessionFailureResponse

403Forbidden

application/jsonErrorResponse

404Not Found

application/jsonErrorResponse

409Conflict

application/jsonErrorResponse

500Internal Server Error

application/jsonErrorResponse

503Service Unavailable

application/jsonErrorResponse

Additional rules

The server also enforces these rules, which the schema above cannot express.

  • Declared multipart part byte length is at most 33554432.