Create an upload
Returns a short-lived URL to upload one file directly to Tracira storage, bypassing the 4.5 MB request-body cap. Flow for large files: 1. POST /api/uploads -> `{ uploadUrl, key, contentType }` 2. PUT the raw file bytes to `uploadUrl` with header `Content-Type: <contentType>` 3. POST /api/logs with `attachments: [{ source: "uploaded", key }]` The file stages in your workspace until a log references it, then it is copied into that log. Uploads never linked to a log are deleted automatically within 24h. Accepted types: image/*, audio/*, application/pdf. Up to 32 MB per file. Each in-flight upload reserves space against your workspace storage quota (the declared `sizeBytes`, or the per-file max if omitted), so unlinked uploads can never push a workspace over its plan limit. The reservation is released when the upload is linked to a log or reaped.
Authorization
webhookToken Workspace webhook token from Settings -> Integrations.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Create an upload: request a URL to PUT one file directly to Tracira storage.
Response Body
application/json
curl -X POST "https://example.com/api/uploads" \ -H "Content-Type: application/json" \ -d '{}'{ "uploadUrl": "http://example.com", "key": "string", "contentType": "string", "method": "PUT", "headers": { "property1": "string", "property2": "string" }, "expiresIn": 0, "maxBytes": 0}