Complete upload
POST https://api.fastapi.ai/v1/uploads/{upload_id}/complete
Completes the Upload.
Within the returned Upload object, there is a nested File object that is ready to use in the rest of the platform.
You can specify the order of the Parts by passing in an ordered list of the Part IDs.
The number of bytes uploaded upon completion must match the number of bytes initially specified when creating the Upload object. No Parts may be added after an Upload is completed.
Path parameters
upload_id
string Required
The ID of the Upload.
Request body
part_ids
array Required
The ordered list of Part IDs.
md5
string Optional
The optional md5 checksum for the file contents to verify if the bytes uploaded matches what you expect.
Returns
The Upload object with status completed
with an additional file
property containing the created usable File object.
The upload object
The Upload object can accept byte chunks in the form of Parts.
id
string
The Upload unique identifier, which can be referenced in API endpoints.
created_at
integer
The Unix timestamp (in seconds) for when the Upload was created.
filename
string
The name of the file to be uploaded.
bytes
integer
The intended number of bytes to be uploaded.
purpose
string
The intended purpose of the file. Please refer here for acceptable values.
status
string
The status of the Upload.
expires_at
integer
The Unix timestamp (in seconds) for when the Upload will expire.
object
string
The object type, which is always "upload".
file
The File
object represents a document that has been uploaded to OpenAI.
{
"id": "upload_abc123",
"object": "upload",
"bytes": 2147483648,
"created_at": 1719184911,
"filename": "training_examples.jsonl",
"purpose": "fine-tune",
"status": "completed",
"expires_at": 1719127296,
"file": {
"id": "file-xyz321",
"object": "file",
"bytes": 2147483648,
"created_at": 1719186911,
"filename": "training_examples.jsonl",
"purpose": "fine-tune",
}
}
Example
Request
curl https://api.fastapi.ai/v1/uploads/upload_abc123/complete
-d '{
"part_ids": ["part_def456", "part_ghi789"]
}'
Response
{
"id": "upload_abc123",
"object": "upload",
"bytes": 2147483648,
"created_at": 1719184911,
"filename": "training_examples.jsonl",
"purpose": "fine-tune",
"status": "completed",
"expires_at": 1719127296,
"file": {
"id": "file-xyz321",
"object": "file",
"bytes": 2147483648,
"created_at": 1719186911,
"filename": "training_examples.jsonl",
"purpose": "fine-tune",
}
}