Digital Extent
Первый продукт Digital Extent

Оптимизация изображений — прямо в вашем облаке

Загрузите изображение — оптимизированные варианты в webp, avif, jpeg или png появятся сразу в вашем бакете S3 или R2. Оригинал нужен только для обработки и у нас не остаётся.

POST /v1/uploads 202
photo.png · 2.4 МБ
thumb.webp320×320 · 12 КБ
medium.webp1024×768 · 86 КБ
your-bucket/avatars/2026/…
BYOB · bring your own bucket

Ваши файлы остаются вашими

Мы берём деньги за обработку — и только за неё. Результаты пишутся в ваш S3 или R2: за хранение и трафик вы платите своему провайдеру по своим тарифам, а не нам сверху. И не зависите от нашего CDN.

Не храним оригиналы

Оригинал используется для обработки и удаляется по умолчанию.

Шифрование кредов

Envelope-шифрование ключей хранилища; они не попадают в логи.

Подписанные ссылки

Для приватных бакетов — временные подписанные URL по запросу.

Мелочи, на которых ломаются интеграции

Идемпотентность, подписанные вебхуки, дедупликация, честные коды ошибок — то, что обычно приходится дописывать самому.

Форматы и варианты

webp, avif, jpeg, png. До 8 вариантов за запрос, ресайз cover / contain / fill, удаление EXIF.

Асинхронный конвейер

В ответ — 202 и jobId, обработка идёт в фоне на Sharp. Статус узнаёте опросом или вебхуком.

Вебхуки с подписью

HMAC-SHA256 с timestamp и защитой от replay — знайте о готовности без постоянного опроса.

Идемпотентность и дедуп

Повтор с тем же ключом безопасен. Одинаковые байты не обрабатываются дважды и не списывают квоту.

Ключи и скоупы

Ключи imgk_… с ресурсными и операционными скоупами и собственным лимитом запросов на каждый.

Безопасность данных

Креды хранилища шифруются и никогда не возвращаются в ответах или логах. Подойдёт любой S3-совместимый бакет.

Как это работает

Три шага — и результат уже лежит в вашем бакете.

01

Подключите бакет

S3 или R2. Ключи доступа шифруются, кнопка «Проверить» подтверждает доступ пробной записью.

02

Создайте ключ

imgk_… с нужными скоупами и хранилищем по умолчанию. Секрет показывается один раз.

03

Загружайте

POST /v1/uploads — варианты появляются в вашем бакете. О готовности сообщит вебхук.

API-first

Один POST — и готово

Отправьте файл и параметры обработки — сервис примет их и вернёт jobId. Варианты появятся в вашем бакете, а о готовности сообщит вебхук или опрос /v1/jobs/:id.

Контракт — обычный HTTP: подойдёт любой язык и любой HTTP-клиент.

Запрос
curl -X POST https://api.images.digitalextent.net/v1/uploads \
  -H "Authorization: Bearer $IMAGES_API_KEY" \
  -F file=@photo.png \
  -F 'params={"format":"webp","variants":[
    {"name":"thumb","width":320,"height":320,"strategy":"cover"},
    {"name":"medium","width":1024}
  ]}'
Ответ202
{
  "jobId": "d4f1…",
  "uploadId": "8a17…",
  "state": "queued",
  "deduplicated": false
}

Тарифы

Free — не триал: 100 обработок каждый месяц, карта не нужна. Платите, только когда перерастёте лимит.

ТарифЦена / месЗагрузок / месФорматыВариантовМакс. файлВебхуков
Free $0100webp21 МиБ
Starter $525 000webp · jpeg · png310 МиБ2
Pro Популярный$2950 000webp · jpeg · png · avif525 МиБ5
Scale $149250 000webp · jpeg · png · avif850 МиБ20
Enterprise по договорупо договоруwebp · jpeg · png · avif1050 МиБcustom

Абсолютные потолки для всех тарифов: файл ≤ 50 МиБ, изображение ≤ 40 Мп, до 10 вариантов и стороны ≤ 10 000 px за запрос.

Начните бесплатно

Подключите бакет, выпустите ключ — первый запрос уйдёт через пару минут. 100 обработок каждый месяц — бесплатно.