SnozeDevelopers
API referenceAssets

Complete a direct multipart upload

Finalizes the multipart upload, verifies the stored object's size against what the session declared, and returns the resulting asset with its capability URL. Requires a workspace member with the `files:write` permission. A session that has expired, been aborted, or is completed with the wrong number of parts is rejected; completing a session that already finished returns the existing asset. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.

POST
/v1/workspaces/{workspaceId}/assets/uploads/{sessionId}/complete
AuthorizationBearer <token>

Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.

In: header

Path Parameters

workspaceId*string
sessionId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/v1/workspaces/string/assets/uploads/string/complete" \  -H "Content-Type: application/json" \  -d '{    "parts": [      {        "partNumber": 0,        "etag": "string"      }    ]  }'
{  "data": {    "fileId": "string",    "url": "string",    "name": "string",    "size": 0,    "mimeType": "string"  }}