Create an upload

POST/uploads

Opens a multipart upload session and returns the upload plan: the part size (part_size) and the number of parts (parts_total).

The API never receives file content. Request presigned URLs through the upload parts operation and send each part directly to the storage service, then complete the upload to obtain the file.

This operation requires an Idempotency-Key header. The Location header points to the created upload session.

AuthorizationBearer <token>

Autonomous mode: the API credential secret, sent as a bearer token. Credential secrets are identified by a fixed prefix.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/uploads" \  -H "Content-Type: application/json" \  -d '{    "filename": "string",    "purpose": "string",    "size_bytes": 0  }'
{  "data": {    "expires_at": "2019-08-24T14:15:22Z",    "failure_reason": "string",    "file": {      "checksum": {        "md5": "string",        "sha256": "string"      },      "content_type": "string",      "created_at": "2019-08-24T14:15:22Z",      "extension": "string",      "filename": "string",      "id": "string",      "object": "file",      "purpose": "string",      "size_bytes": 0,      "status": "ready"    },    "filename": "string",    "id": "string",    "object": "upload",    "part_size": 0,    "parts_total": 0,    "purpose": "string",    "size_bytes": 0,    "status": "open"  }}