@opsregistry/adapter-dellin
v0.4.1
Published
Delovye Linii adapter for opsregistry logistics shipment operations.
Readme
@opsregistry/adapter-dellin
Адаптер «Деловых Линий» для универсальных логистических операций opsregistry.
Пакет принимает единый формат @opsregistry/contracts и преобразует его в запросы
официального API «Деловых Линий». В приложении можно использовать один контракт
расчета доставки, а особенности API перевозчика остаются внутри адаптера.
Возможности
it.identity.authenticate- авторизация поappKey, с опциональной пользовательской сессией.logistics.shipment.quote- расчет доставки через/v2/calculator.json.logistics.shipment.list- журнал заказов личного кабинета через/v3/orders.json.logistics.shipment.track- статус отправления поdocumentID.- Публичные тарифы по
appKey. - Персональные тарифы при наличии
sessionId, PAT или логина/пароля. - Адресная и терминальная доставка для нескольких грузовых мест.
Доступ
Минимально нужен appKey. Без пользовательской сессии адаптер считает обычные
тарифы, с пользовательской сессией или PAT - персональные условия клиента.
import { createAdapter } from '@opsregistry/adapter-dellin';
const dellin = createAdapter({
appKey: process.env.DELLIN_APP_KEY,
personalAccessToken: process.env.DELLIN_PAT
});
const quote = await dellin.quoteShipment({
origin: { city: 'Самара' },
destination: { city: 'Москва' },
deliveryMode: 'terminal_terminal',
packages: [
{ weightKg: 10, lengthCm: 100, widthCm: 20, heightCm: 20 },
{ weightKg: 5, lengthCm: 20, widthCm: 20, heightCm: 50 }
]
});
console.log(quote.options);Журнал заказов требует пользовательскую сессию, PAT или логин/пароль:
const shipments = await dellin.listShipments({
dateFrom: '2026-07-01T00:00:00Z',
dateTo: '2026-07-10T00:00:00Z',
pageToken: '1'
});
console.log(shipments.items);Отслеживание отправления требует пользовательскую сессию, PAT или логин/пароль:
const tracking = await dellin.trackShipment({
providerDocumentId: 'document-id'
});
console.log(tracking.status, tracking.events);Известные идентификаторы можно передать в externalIds.dellinCityId и
externalIds.dellinTerminalId.
logistics.shipment.create пока не реализована.
