upload

Confirm Presigned Upload

Step 2: Confirm a direct upload. The file is verified HERE.

One HEAD against storage: the object exists and has the size the row authorizes → verified in the same transaction, signed file_verified event included. No queue and no polling on this path, and the server never reads the object (audit/SPEC-UPLOAD-SCALE.md §3).

Status flow: pending → verified (the normal case) pending → pending_verification → … (storage could not be asked: the durable worker repeats the same check)

Security: - SEAL: Requires X-Owner-Token header - AEON/Vault: Requires JWT Bearer token + org membership

post/upload/confirm

Request

  • Base URL: https://api.seal.net (the document declares no server; this is the origin it was published from)
  • URL: https://api.seal.net/upload/confirm
  • Auth: none declared

Request body

seal_idstring required

Seal ID (8-char base64url)

file_idstring uuid required

The file row from registration

on_conflict'fail' | 'keep_both'

A version whose base another version closed first: 412, or keep as a second head

Response

Successful Response

version_ofstring nullable
headboolean nullable
conflict_withstring nullable
statusstring required
messagestring nullable
verifiedboolean
sizeinteger

Changes

No recorded changes to this operation across all 1 revision of this API.