---
title: "Complete Multipart Upload"
method: POST
path: "/complete-multipart-upload"
tags: ["Upload"]
---

# Complete Multipart Upload

`POST /complete-multipart-upload`

Completes a multipart upload by combining previously uploaded parts in S3.
Must be called after all parts have been uploaded using pre-signed URLs.

## Request body

- object
  - `data` object, required
    - `uploadId` string, required — S3 upload ID
    - `key` string, required — S3 object key
    - `parts` object[], required — List of uploaded parts
      - `PartNumber` integer, required — Part number
      - `ETag` string, required — ETag from part upload

## Response `200`

Multipart upload completed successfully

- object
  - `status` 'success', required
  - `data` object, required
    - `status` 'success', required

## Other responses

- `400` — Missing or invalid parameters
- `401` — Authentication failed or API key missing
- `500` — S3 or internal error

## Changes

- **2025-01-14** `5c6242cc0763` — 11 breaking, 3 warning, 8 info
  - request body became required
  - the request property `data` became required
  - the request property `data/key` became required
  - the request property `data/parts` became required
  - …18 more
- **2024-10-22** `77e0fca87b92` — 1 info
  - endpoint added
- **2024-10-22** `fa796ac65c29` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/upscayl/apis/upscayl-cloud-api/changes/complete-multipart-upload/post.md)

---

[API](https://skmtc.dev/upscayl/apis/upscayl-cloud-api.md) · [All operations](https://skmtc.dev/upscayl/apis/upscayl-cloud-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/upscayl/upscayl-cloud-api/revisions/2320ccb2ffed/schema)
