Finalize an upload
Verifies the uploaded object, promotes it to a verified artifact, and returns the artifact id and a temporary read URL. Use the artifact id in post media references.
Verifies the uploaded object, promotes it to a verified artifact, and returns the artifact id and a temporary read URL. Use the artifact id in post media references.
Authorization
BearerAuth PostMantis API key from the dashboard. Include as Authorization: Bearer <key>.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
uuidResponse Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X POST "https://loading/api/v1/uploads/complete" \ -H "Content-Type: application/json" \ -d '{ "artifactId": "b2c3d4e5-f6a7-8901-bcde-f23456789012" }'{ "data": { "artifactId": "b2c3d4e5-f6a7-8901-bcde-f23456789012", "storageKey": "user-123/...", "url": "https://cdn.example.com/...", "createdAt": "2026-05-05T10:00:00.000Z", "kind": "video", "mimeType": "video/mp4", "sizeBytes": 12345678 }}{ "type": "https://postmantis.com/problems/invalid-request", "title": "Invalid request", "status": 400, "detail": "The request payload failed validation.", "code": "invalidRequest"}{ "type": "https://postmantis.com/problems/unauthorized", "title": "Unauthorized", "status": 401, "detail": "Authentication required.", "code": "unauthorized"}{ "type": "https://postmantis.com/problems/forbidden", "title": "Forbidden", "status": 403, "detail": "The authenticated API key is not allowed to perform this action.", "code": "forbidden"}{ "type": "https://postmantis.com/problems/rate-limited", "title": "Too many requests", "status": 429, "detail": "Too many requests.", "code": "rateLimited"}Request an upload URL POST
Starts a two-phase upload. Returns reserved artifact id and presigned PUT URL. Caller uploads bytes directly to storage, then calls `POST /uploads/complete` with artifact id. Max file size is 150 MB.
Automation Overview
Automate PostMantis posting with clear acceptance and readback steps.