Confirm Upload
Changed onVerify S3 upload completion and create bucket object.
After uploading to S3 using the presigned URL, call this endpoint to:
1. Verify the file exists in S3
2. Validate ETag and file size (if provided)
3. Create bucket object (default, unless create_object_on_confirm=false)
4. Update upload status to COMPLETED
**Processing**: the created object is PENDING and is not processed by
confirmation. Add it to a batch and submit the batch to start processing,
or set `auto_submit_batch=true` on this request to create and submit a
batch for the new object in the same call.
**Sync vs Async**:
- Files < 100MB: Processed synchronously (~100ms)
- Files >= 100MB or async=true: Processed asynchronously (returns task_id)
**Duplicate Detection**:
- If file hash matches existing upload, marks as duplicate
- References original object_id if available
**Unique Keys**:
- If the bucket has a unique_key, the object is created under an insertion
policy: `?policy=insert|update|upsert` on this request, else the bucket's
`unique_key.default_policy`. With neither, confirmation returns 422.
Request
- Base URL: https://api.mixpeek.com
- URL: https://api.mixpeek.com/v1/buckets/{bucket_identifier}/uploads/{upload_id}/confirm
- Auth: HTTP bearer and API key in header X-Namespace
Path parameters
The unique identifier of the bucket
The unique identifier of the upload
Query parameters
Process confirmation asynchronously (recommended for files >= 100MB)
Insertion policy for unique key enforcement on the object created at confirmation. Valid values: 'insert', 'update', 'upsert'. Only applies if the bucket has a unique_key. Overrides the bucket's default_policy, matching ?policy= on POST /objects. Required when the bucket has a unique_key and no default_policy.
Request body
Example request
{
"description": "Confirm with ETag for integrity verification (recommended)",
"etag": "d41d8cd98f00b204e9800998ecf8427e",
"file_size_bytes": 52428800
}Response
Successful Response
Example response
{
"completed_at": "2024-01-15T10:35:00Z",
"description": "Synchronous confirmation with object creation",
"etag": "d41d8cd98f00b204e9800998ecf8427e",
"file_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"file_size_bytes": 52428800,
"object_id": "obj_xyz789",
"status": "COMPLETED",
"upload_id": "upl_abc123",
"verified_at": "2024-01-15T10:35:00Z"
}Changes
- warning
removed the optional property
from the response with the status - info
added the non-success response with the status
- info
added the non-success response with the status
- info
added the optional property
to the response with the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status
- warning
- info
added the new optional
queryrequest parameterpolicy
- info