POST
/
api
/
external
/
datastores
/
file-upload
/
{datastoreId}
curl --location --request POST 'https://gptbots.chat/api/external/datastores/file-upload/<datastoreId>' \
--header 'Authorization: Bearer <API_KEY>' \
--form 'file=@"/Users/path/test.pdf"'

Path

datastoreId
string
required

Идентификатор хранилища данных, в которое вы хотите загрузить файл.

content-type
string
default:"multipart/form-data"
required

Content Type должен быть установлен на multipart/form-data

Body

file
file
required

Загрузка файла

fileName
string

Имя файла

custom_id
string

Пользовательский идентификатор: Если вы хотите установить собственный идентификатор для файла, вы можете сделать это здесь.

Поддерживаемые mime типы
  • text/csv’
  • text/plain’
  • text/markdown’
  • application/pdf’
  • application/json’
  • application/vnd.openxmlformats-officedocument.presentationml.presentation
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Пример JS кода

const apiUrl = 'https://gptbots.chat/api';
const apiKey = 'XXX';
const datastoreId = 'XXX';

const fileName = 'test.pdf';
const buffer = fs.readFileSync(fileName);

const formData = new FormData();

formData.append(
  'file',
  new Blob([buffer], {
    type: 'application/pdf',
  }),
  fileName
);

formData.append('fileName', fileName);

// Request upload link
const res = await fetch(
  `${apiUrl}/api/external/datastores/file-upload/${datastoreId}`,
  {
    method: 'POST',
    body: formData,
    headers: {
      Authorization: `Bearer ${apiKey}`,
    },
  }
);
curl --location --request POST 'https://gptbots.chat/api/external/datastores/file-upload/<datastoreId>' \
--header 'Authorization: Bearer <API_KEY>' \
--form 'file=@"/Users/path/test.pdf"'