Skip to content

Create upload

POST https://api.fastapi.ai/v1/uploads

Creates an intermediate Upload object that you can add Parts to. Currently, an Upload can accept at most 8 GB in total and expires after an hour after you create it.

Once you complete the Upload, we will create a File object that contains all the parts you uploaded. This File is usable in the rest of our platform as a regular File object.

For certain purposes, the correct mime_type must be specified. Please refer to documentation for the supported MIME types for your use case:

  • Assistants

For guidance on the proper filename extensions for each purpose, please follow the documentation on creating a File.

Request body


filename string Required
The name of the file to upload.


purpose string Required
The intended purpose of the uploaded file.

See the documentation on File purposes.


bytes integer Required
The number of bytes in the file you are uploading.


mime_type string Required
The MIME type of the file.

This must fall within the supported MIME types for your file purpose. See the supported MIME types for assistants and vision.

Returns


The Upload object with status pending.


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.


OBJECT The upload object
bash
{
  "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

bash
curl https://api.fastapi.ai/v1/uploads \
  -H "Authorization: Bearer $FAST_API_KEY" \
  -d '{
    "purpose": "fine-tune",
    "filename": "training_examples.jsonl",
    "bytes": 2147483648,
    "mime_type": "text/jsonl"
  }'

Response

bash
{
  "id": "upload_abc123",
  "object": "upload",
  "bytes": 2147483648,
  "created_at": 1719184911,
  "filename": "training_examples.jsonl",
  "purpose": "fine-tune",
  "status": "pending",
  "expires_at": 1719127296
}

那年我双手插兜, 让bug稳如老狗