Skip to main content
DELETE
Abort a Direct Blob Upload
Cancels a direct upload that hasn’t completed and releases the storage it reserved, so the quota is free again. Calling it again on the same upload is not an error, and neither is an ID that doesn’t exist or an upload that already completed: the answer is the same. The response is null in the response field. Scope: blob:write. Accepts an upload token. Upload token: this route also accepts an upload token (Authorization: Bearer vcup_...) instead of an API key.
string
required
The upload ID.
string
The workspace ID, when the blob belongs to a workspace. The call acts on the blob of the workspace owner and needs the blob:read workspace permission (blob:manage on routes that change data). Leave it out to act on your own blob.

Example request

Response

Empty on success.

Error Responses

string
The error code indicating the reason for failure. Possible values:
  • AUTH_TOKEN_MISSING (401): No Authorization header was sent.
  • API_KEY_INVALID (401): The API key doesn’t exist, was revoked, or its secret doesn’t match.
  • API_KEY_SCOPE_DENIED (403): The key lacks the scope this route needs (blob:read or blob:write); details.required names it.
  • WORKSPACE_PERMISSION_DENIED (403): Only with workspace_id: you’re not a member, or your role lacks the blob permission.
  • WORKSPACE_NOT_FOUND (404): Only with workspace_id: no workspace with that ID, or you’re not a member.
  • BLOB_UPLOAD_TOKEN_INVALID (401): The upload token doesn’t exist, has expired or was revoked (only with an upload token).