API v2

Подключение за один вечер

Сеть работает как прозрачный кэширующий прокси перед вашим origin. В большинстве случаев достаточно поменять домен загрузки. API нужен, только если хотите манифесты сборок, статистику и управление инвалидацией.

Быстрый старт

1. Замените домен загрузки

Вместо прямого адреса вашего релиз-хранилища апдейтер обращается к выданному поддомену. Путь и имя файла — прежние.

updater.config
# было — прямая отдача с origin
base_url = "https://releases.mygame.ru/build/"

# стало — отдача через NexFile
base_url = "https://mygame.dl.nexfile.net/build/"

И всё?

Да. Первый клиент прогреет кэш узла, дальше сеть отдаёт из горячего. Origin трогается только на новые файлы.

2. Скачивание с докачкой

Узлы поддерживают Range-запросы — апдейтер качает в несколько потоков и продолжает после обрыва.

curl
curl -H "Range: bytes=0-1048575" \
     -H "X-Nex-Key: nxf_live_9f3c…" \
     https://mygame.dl.nexfile.net/build/patch_1.9.4.pak

# ответ
HTTP/2 206 Partial Content
X-Nex-Cache: HIT edge=msk-01
Accept-Ranges: bytes
Content-Range: bytes 0-1048575/8623491072

3. Манифест сборки

Отдаёт список файлов версии с хэшами и размерами — апдейтер качает только изменившиеся куски.

GET /v2/manifest
{
  "build": "1.9.4",
  "total_size": 8623491072,
  "chunks": [
    { "path": "patch_1.9.4.pak",
      "sha256": "b4f1…c7",
      "size": 8623491072 }
  ],
  "cache": "warm"
}
Справочник

Эндпоинты API v2

Базовый адрес: https://api.nexfile.net/v2 · авторизация заголовком X-Nex-Key.

GET/v2/manifest/{project}/{build}Манифест версии с хэшами
GET/v2/file/{project}/*pathОтдача файла (Range)
POST/v2/purge/{project}Инвалидация кэша по маске
GET/v2/stats/{project}?from&toТрафик и cache-ratio по дням
GET/v2/logs/{project}?cursorЛоги отдачи (JSON Lines)
GET/v2/mirrors/{project}Список живых узлов для клиента

Сбросить кэш после релиза

POST /v2/purge
curl -X POST \
  -H "X-Nex-Key: nxf_live_9f3c…" \
  -d '{"mask":"/build/*"}' \
  https://api.nexfile.net/v2/purge/mygame

202 Accepted · задача purge_71b3

Забрать статистику

GET /v2/stats
{
  "date": "2026-09-11",
  "egress_gb": 184320.6,
  "requests": 1904233117,
  "cache_hit": 0.947,
  "top_edge": "msk-01"
}

Готовы попробовать на своём релизе?

Заведём тестовую pull-зону и выдадим ключ — 14 дней без оплаты.