---
title: "Start a multipart upload"
method: POST
path: "/v1/media/upload/multipart/create"
tags: ["media"]
---

# Start a multipart upload

`POST /v1/media/upload/multipart/create`

## Request

- Base URL: `https://api.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/media/upload/multipart/create`
- Auth: HTTP bearer

Begin a multipart upload for large files, such as multi-gigabyte videos, that are too large for a single request. Validates the file kind and checks its size against the limit allowed for that kind. Returns an upload id and the part size to use for subsequent part uploads.

## Request body

- object
  - `name` string
  - `contentType` string: The file's media type; decides the kind.
  - `sizeBytes` integer, required
  - `folderId` string, nullable
  - `nodeId` string, nullable
  - `alt` string, nullable
  - `decorative` boolean
  - `loopDurationMs` number, nullable
  - `durationSec` number, nullable
  - `width` integer, nullable
  - `height` integer, nullable
  - `codec` string, nullable
  - `codecString` string, nullable
  - `fps` number, nullable
  - `masterOf` string, nullable: An existing video's id: upload a high-resolution master for it instead of a new asset.
  - `importSourceId` string, nullable: Your own id for the file. If a live asset already has it, the answer is 200 with `exists: true`.

## Response `200`

Success: `importSourceId` matched a live asset: `{ id, exists: true }`, nothing started.

- object
  - `data` union, required
    - object
      - `id` string, required: The upload id (and the media id it will become).
      - `partSize` integer, required: Send parts of exactly this size (the last may be smaller).
    - object
      - `id` string, required
      - `exists` true, required

## Other responses

- `201`: Success.
- `401`: Missing, expired or revoked bearer token.
- `403`: The token lacks the permission this operation needs (see `x-brix-permission`).
- `413`: `sizeBytes` is over the limit for the kind.
- `415`: SVG.
- `422`: Unknown file type, or `sizeBytes` missing.
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/02fd3665dc7d?raw)
