Skip to main content
POST
https://api.neosantara.xyz
/
v1
/
files
Upload File
curl --request POST \
  --url https://api.neosantara.xyz/v1/files \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "purpose": "<string>"
}
'
{
  "id": "<string>",
  "object": "<string>",
  "bytes": 123,
  "created_at": 123,
  "filename": "<string>",
  "purpose": "<string>",
  "status": "<string>",
  "status_details": {}
}
Upload a file that can be used for batch processing, assistants, or fine-tuning purposes.
file
file
required
The file to upload. Must be a valid file object.
purpose
string
required
The intended purpose of the uploaded file. Must be one of:
  • batch - For batch processing (requires JSONL format)
  • assistants - For use with assistants
  • fine-tune - For fine-tuning models

File Requirements

  • Maximum file size: 100MB
  • For batch purpose: File must be in valid JSONL format
  • Supported content types: text/jsonl and others depending on purpose

Returns

id
string
A unique identifier for the uploaded file (e.g., file-abc123).
object
string
The object type, which is always file.
bytes
integer
The size of the file in bytes.
created_at
integer
The Unix timestamp (in seconds) of when the file was created.
filename
string
The name of the uploaded file.
purpose
string
The purpose of the file as specified during upload.
status
string
The current status of the file. Will be uploaded for newly uploaded files.
status_details
string or null
Additional details about the file status, if any.

Return Examples

Response 200
{
  "id": "file-abc123",
  "object": "file",
  "bytes": 120000,
  "created_at": 1699564800,
  "filename": "batch_requests.jsonl",
  "purpose": "batch",
  "status": "uploaded",
  "status_details": null
}
Error 400 - Missing File
{
  "error": {
    "message": "Missing required file parameter",
    "type": "invalid_request_error",
    "param": "file",
    "code": "missing_file"
  }
}
Error 400 - Invalid Purpose
{
  "error": {
    "message": "Invalid purpose. Must be one of: batch, assistants, fine-tune",
    "type": "invalid_request_error",
    "param": "purpose",
    "code": "invalid_purpose"
  }
}
Error 400 - File Too Large
{
  "error": {
    "message": "File too large. Maximum size is 100MB",
    "type": "invalid_request_error",
    "code": "file_too_large"
  }
}
Last modified on December 7, 2025