Документация API
Версия API 2.4 · обновлено 12 ноября 2026
Быстрый старт
Чтобы отправить первый файл, нужен ключ API. Создайте его в разделе «Разработчикам» личного кабинета и сохраните в переменной окружения.
export NUBIX_KEY="nbx_live_xxxxxxxxxxxxxxxx"
curl -X POST https://api.nubix.io/v2/files \
-H "Authorization: Bearer $NUBIX_KEY" \
-F file=@report.pdf
В ответ придёт идентификатор файла f_8c21a90. По нему можно создавать ссылки и управлять файлом.
Аутентификация
Каждый запрос подписывается ключом в заголовке Authorization. Ключи бывают двух типов: nbx_live_ для рабочих данных и nbx_test_ для песочницы. Для ключа можно ограничить права: только чтение, только загрузка, доступ к одной папке.
- Не храните ключи в коде и публичных репозиториях.
- Если ключ утёк, отзовите его в кабинете, он перестанет работать сразу.
Загрузка файлов
Файлы до 5 ГБ можно отправить одним запросом. Для больших файлов используйте загрузку частями: сначала откройте сессию, затем отправляйте блоки по 64 МБ параллельно.
POST /v2/uploads
{ "name": "master.mov", "size": 48318382080 }
// ответ
{ "upload_id": "u_41ac", "part_size": 67108864 }
PUT /v2/uploads/u_41ac/parts/1 // тело — 64 МБ данных
POST /v2/uploads/u_41ac/complete
Если связь оборвалась, повторите только неподтверждённые блоки. Уже загруженные заново отправлять не нужно.
Ссылки
Ссылка создаётся на файл или папку. Можно задать срок действия, пароль, лимит скачиваний и ограничение по стране.
POST /v2/links
{
"file_id": "f_8c21a90",
"expires_in": "7d",
"password": "required",
"max_downloads": 50
}
Вебхуки
Укажите адрес в кабинете, и мы будем присылать события: file.uploaded, file.downloaded, link.expired. Каждый запрос подписан заголовком X-Nubix-Signature, проверяйте его на своей стороне.
Если ваш сервер ответил не кодом 2xx, мы повторим отправку через 1, 5 и 30 минут.
Лимиты и ошибки
- 400
- Неверные параметры запроса. В теле ответа указано, какое поле не подошло.
- 401
- Ключ не указан или отозван.
- 403
- У ключа нет прав на это действие.
- 404
- Файл или ссылка не найдены либо удалены по сроку.
- 429
- Превышен лимит запросов. Повторите после времени из заголовка
Retry-After.
SDK и CLI
npm install @nubix/sdk # Node.js
pip install nubix # Python
go get nubix.io/sdk # Go
npm install -g @nubix/cli # командная строка
Нужна помощь с интеграцией? Напишите в поддержку, мы отвечаем в течение рабочего дня.