---
title: "This completes the Upload, and the returned Upload object contains a nested File object that is ready for use across the platform.
You can define the order of the Parts by providing an ordered list of Part IDs.
The total number of bytes uploaded must match the size originally specified when creating the Upload object.
After this operation no additional Parts can be added once the Upload is completed."
method: POST
path: "/uploads/{upload-id}/complete"
tags: ["UploadFile:"]
---

# This completes the Upload, and the returned Upload object contains a nested File object that is ready for use across the platform.
You can define the order of the Parts by providing an ordered list of Part IDs.
The total number of bytes uploaded must match the size originally specified when creating the Upload object.
After this operation no additional Parts can be added once the Upload is completed.

`POST /uploads/{upload-id}/complete`

## Path parameters

- `upload-id` string, required

## Query parameters

- `api-version` string, required

## Request body

- UploadFileCompleteBody
  - `part_ids` string[], required
  - `md5` string

## Response `200`

Success

- UploadResource
  - `object` 'list' | 'fine_tuning.job' | 'file' | 'fine_tuning.job.event' | 'fine_tuning.job.checkpoint' | 'model' | 'upload' | 'upload.part' | 'batch' | 'wandb' — Defines the type of an object.
  - `created_at` integer — A timestamp when this job or item was created (in unix epochs).
  - `id` string — The identity of this item.
  - `bytes` integer
  - `filename` string
  - `purpose` 'fine-tune' | 'fine-tune-results' | 'assistants' | 'assistants_output' | 'batch' | 'batch_output' | 'evals' | 'evals_output' — The intended purpose of the uploaded documents. Use "fine-tune" for fine-tuning. This allows us to validate the format of the uploaded file.
  - `status` 'pending' | 'expired' | 'completed' | 'cancelled'
  - `expires_at` integer
  - `file` File — A file is a document usable for training and validation. It can also be a service generated document with result details.
    - `object` 'list' | 'fine_tuning.job' | 'file' | 'fine_tuning.job.event' | 'fine_tuning.job.checkpoint' | 'model' | 'upload' | 'upload.part' | 'batch' | 'wandb' — Defines the type of an object.
    - `created_at` integer — A timestamp when this job or item was created (in unix epochs).
    - `id` string — The identity of this item.
    - `status` 'uploaded' | 'pending' | 'running' | 'processed' | 'error' | 'deleting' | 'deleted' — The state of a file.
    - `bytes` integer — The size of this file when available (can be null). File sizes larger than 2^53-1 are not supported to ensure compatibility with JavaScript integers.
    - `purpose` 'fine-tune' | 'fine-tune-results' | 'assistants' | 'assistants_output' | 'batch' | 'batch_output' | 'evals' | 'evals_output', required — The intended purpose of the uploaded documents. Use "fine-tune" for fine-tuning. This allows us to validate the format of the uploaded file.
    - `filename` string, required — The name of the file.
    - `expires_at` integer — A unix timestamp (the number of seconds that have elapsed since January 1, 1970) when the file is expired.
    - `status_details` string — The error message with details in case processing of this file failed. Deprecated.

## Other responses

- `default` — An error occurred.

---

[API](https://skmtc.net/azure/apis/cognitiveservices-azureopenai-authoring.md) · [All operations](https://skmtc.net/azure/apis/cognitiveservices-azureopenai-authoring/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/azure/cognitiveservices-azureopenai-authoring/versions/b177dc430e39/schema)
