Skip to content

Upload one or more grounded files

POST
/v1/files
curl --request POST \
--url https://www.cemented.ai/v1/files \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form file=@file \
--form purpose=example \
--form project_id=2489E9AD-2EE2-8E00-8EC9-32D5F69181C0

Uploads up to 10 files in a single multipart request. Returned file IDs can be passed in sources.file_ids on /v1/responses.

Media type multipart/form-data
object
file
required

One or more files to upload. Repeat the file field for each file (max 10).

Array<string>
purpose
required

Purpose of the uploaded files, for example “user_data”.

string
project_id

Optional project ID. When provided, the uploaded files are added to that project’s default sources.

string format: uuid

List of uploaded file objects

Media type application/json
object
object
required
string
Allowed values: list
data
required
Array<object>
object
id
required
string
object
required
string
Allowed values: file
bytes
required
integer
created_at
required
integer
filename
required
string
purpose
required
string
Example
{
"object": "list",
"data": [
{
"object": "file"
}
]
}

Invalid request (missing file, missing purpose, or bad multipart body)

Media type application/json
object
error
required
object
message
required
string
type
required
string
code
required
string
Example generated
{
"error": {
"message": "example",
"type": "example",
"code": "example"
}
}

Unauthorized

Media type application/json
object
error
required
object
message
required
string
type
required
string
code
required
string
Example generated
{
"error": {
"message": "example",
"type": "example",
"code": "example"
}
}

Server error while persisting the file

Media type application/json
object
error
required
object
message
required
string
type
required
string
code
required
string
Example generated
{
"error": {
"message": "example",
"type": "example",
"code": "example"
}
}