Lamoda предоставляет два основных API для интеграции партнеров. На этой странице описаны текущие версии, история изменений и рекомендации по миграции.
Текущие версии API
| API | Версия | Протокол | Статус |
| B2B Platform API | v1 | REST | Актуальная |
| Seller API | v1 | JSON-RPC 2.0 | Актуальная |
Источники информации об изменениях
- Telegram-канал: @apilamoda — анонсы технических изменений
- Seller Academy: раздел "История изменений в API"
- Документация: OpenAPI-спецификации с актуальными методами
История изменений 2025
8–12 декабря 2025
Карантин цен
Что изменилось:
- В ответы методов
v1.nomenclature.update-priceиv1.nomenclatures.storeдобавлены статусы обновления цен - Добавлена мотивация перевода в карантин при попадании в соответствующий статус
- В запрос
v1.nomenclatures.listдобавлен фильтр по ценам в карантине
Что нужно сделать:
- При получении статуса
QUARANTINEучитывать необходимость подтверждения цены в ЛК - Цены со снижением более 70% требуют ручного подтверждения
1 ноября 2025
Новые методы генерации этикеток
Что изменилось:
POST /api/v1/label/items— товарные этикеткиPOST /api/v1/label/packs— паковые этикеткиPOST /api/v1/label/pallets— паллетные этикетки
Параметры:
- Лимит: не более 100 элементов в запросе
- Размеры:
s,m,l - Ответ: ссылка на PDF
Что нужно сделать:
- Использовать новые методы вместо Telegram-бота
- Для паллетных этикеток предварительно создать поставку через
POST /api/v1/shipments/out
30 октября 2025
Обновление статусов поставки FBO
Что изменилось:
В методах работы с поставками расширен атрибут status:
| Статус | Описание |
draft
|
Черновик |
validation
|
Проверка документов |
ready_for_shipment
|
Готова к отгрузке |
unloading_needed
|
Ожидает выгрузки |
unloading
|
Выгружается |
unloaded
|
Выгружена |
processing
|
Обработка |
closed
|
Принята |
validation_error
|
Ошибка |
rejected
|
Отменена |
Затронутые методы:
/api/v1/shipments/fulfilment/{code}/api/v1/shipments/fulfilment/api/v1/shipments/fulfilment/{code}/statuses
30 сентября 2025
Обязательный параметр warehouse_code
Что изменилось:
В методе POST /api/v1/shipments/fulfilment параметр warehouse_code стал обязательным.
Что нужно сделать:
- Добавить
warehouse_codeв тело запроса при создании поставки - Получить список складов через
POST v1.fbo/warehouse.list
1 сентября 2025
Сокращение TTL токена
Что изменилось:
Время жизни access_token сокращено с 24 часов до 15 минут.
Что нужно сделать:
- Реализовать автоматическое обновление токена при истечении
- Использовать
POST v1.tokens.createилиPOST /auth/token - Кэшировать токен на время его жизни (expires_in - 60 секунд)
Важно: Это изменение требует доработки логики авторизации. Убедитесь, что ваша интеграция корректно обрабатывает истечение токена.
Политика обратной совместимости
Гарантии совместимости
- Не ломающие изменения (backwards compatible):
- Добавление новых полей в ответы
- Добавление новых методов
- Добавление новых опциональных параметров
- Ломающие изменения (breaking changes):
- Удаление полей или методов
- Изменение типов данных
- Добавление обязательных параметров
Рекомендация: Ваш JSON-парсер должен игнорировать неизвестные поля. Новые поля могут появиться в ответах без предупреждения.
Сроки анонсирования
| Тип изменения | Минимальный срок уведомления |
| Добавление новых методов/полей | Без предупреждения |
| Изменение поведения существующих методов | 2–4 недели |
| Добавление обязательных параметров | 4+ недели |
| Депрекейт методов | 3+ месяца |
Deprecated-методы
Устаревшие методы помечены в OpenAPI-спецификации и возвращают предупреждение:
{
"jsonrpc": "2.0",
"id": "...",
"result": {
"_warning": "This method is deprecated. Please use /v1/new-method instead.",
"data": { ... }
}
}
Рекомендации по поддержке интеграции
- Подпишитесь на каналы уведомлений
- Telegram: @apilamoda
- Email-рассылка от менеджера
- Планируйте ресурсы на доработки
- Закладывайте время на обновления API в квартальное планирование
- Критичные изменения могут потребовать срочных доработок
- Тестируйте на Demo-окружении
- Изменения сначала появляются на Demo
- Используйте это время для тестирования
- Логируйте все запросы и ответы
- Это поможет быстро найти причину проблем после обновлений
- Обрабатывайте неизвестные поля и статусы
- Новые значения enum могут появиться без предупреждения
- Игнорируйте неизвестные поля в JSON
Пример обработки версий
class LamodaClient:
def __init__(self, ...):
self.api_version = "v1"
self.supported_statuses = {
"draft", "validation", "ready_for_shipment",
"unloading_needed", "unloading", "unloaded",
"processing", "closed", "validation_error", "rejected"
}
def handle_shipment_status(self, status):
"""Обработка статуса с защитой от неизвестных значений"""
if status in self.supported_statuses:
return self.process_known_status(status)
else:
# Логируем новый статус, но не падаем
logger.warning(f"Unknown shipment status: {status}")
return self.process_unknown_status(status)
def parse_response(self, response):
"""Парсинг с игнорированием неизвестных полей"""
data = response.json()
# Извлекаем только известные поля
known_fields = {"id", "status", "items", "createdAt"}
result = {k: v for k, v in data.items() if k in known_fields}
# Логируем новые поля для информации
new_fields = set(data.keys()) - known_fields
if new_fields:
logger.info(f"New fields in API response: {new_fields}")
return result
Контакты для вопросов
- Технические вопросы: По адресу api-integration@lamoda.ru
- Предложения по API: Telegram-канал @apilamoda (в комментариях к постам)
См. также
Помогла эта информация?
Спасибо за отзыв