POST
/
v1
/
files
/
upload
curl --request POST \
  --url https://geoff.ai/api/v1/files/upload \
  --header 'Authorization: Bearer <token>' \
  --form 'file=@image.jpg' \
  --form 'purpose=image-input'
{
  "data": {
    "file_id": "file_abc123",
    "filename": "image.jpg",
    "size": 1048576,
    "purpose": "image-input",
    "created_at": "2026-01-01T00:00:00Z"
  }
}

Authorization

Authorization
string
required
Bearer token. Bearer API_key.

Request Body (multipart/form-data)

file
file
required
The file to upload.
purpose
string
Purpose of the file. Options: image-input, video-input, audio-input, general. Default: general.
curl --request POST \
  --url https://geoff.ai/api/v1/files/upload \
  --header 'Authorization: Bearer <token>' \
  --form 'file=@image.jpg' \
  --form 'purpose=image-input'
{
  "data": {
    "file_id": "file_abc123",
    "filename": "image.jpg",
    "size": 1048576,
    "purpose": "image-input",
    "created_at": "2026-01-01T00:00:00Z"
  }
}