---
title: "Complete Video Upload"
method: POST
path: "/api/upload/video/complete"
tags: ["upload", "upload"]
---

# Complete Video Upload

`POST /api/upload/video/complete`

Confirm a direct upload landed and hand back the reference to record.

Checks that the object is one this caller's `/sign` named (prefix), that it
exists, and that size and content type are what the signature allowed.
An object that fails the check is deleted, so a rejected upload leaves
nothing behind. Returns the same `{url, filename}` shape as
`/upload/assignment-file`, so every caller records it the same way.

## Headers

- `authorization` string, nullable

## Request body

- object

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

## Changes

> 20 revisions in range; 1 not diffed.

- **2026-09-13** `3c5400a294e1` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored/changes/api/upload/video/complete/post.md)

---

[API](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored.md) · [All operations](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored/llms.txt) · [OpenAPI document](https://skmtc.dev/fluentea/apis/aurqa-language-learning-platform-refactored/revisions/ee945980cf00?raw)
