Клиент может загрузить портфолио, данные из которого будут использоваться при поиске в сервисе Search
Загрузка портфолио позволяет осуществить импорт собственных данных о деталях, а именно :
Доступно только пользователям с правом MANAGE_OFFERS
POST /us2/public/offer/process
Загрузка и запуск обработки файла с деталями. Один логин = один набор данных (файл с деталями). Использовать несколько разных наборов одновременно нельзя – поиск возможен только по последнему загруженному набору.
Выполняется только, если нет не завершенных ранее загрузок, производимых в настоящий момент.
Загружаемый файл необходимо подготовить по следующим правилам:
Файл может иметь формат txt или CSV, или же быть заархивирован в zip-файл в текстовом формате.
Файл может предоставляться в 2 форматах:
Клиент может выгрузить из своего бэк-офиса в файл весь свой ассортимент и потом загрузить файл в систему Laximo.Search для последующего полнотекстового поиска с применимостью к автомобилю. Файл может представлять не только одного производителя, но и номенклатурную базу товаров по магазину.
В процессе обработки файл проходит через несколько статусов: queued -> processing -> success с возможной отменой (aborted) и ошибкой (failed).
Параметры запроса
| Параметр | Тип | Обязательность | Значение |
|---|---|---|---|
| delimiter | string | - | Разделитель колонок в CSV-файле, указывается символ: , (запятая) или ; (точка с запятой). Если не указывается, применяется стандартный разделитель: для txt-файла – табулятор, для CSV-файла – запятая |
| charsetName | string | - | Кодировка файла. Поддерживаются UTF-8, UTF-16. Если не указывается, кодировка определяется заголовком файла. Если не определено, по умолчанию – UTF-8 |
| offersFile | string($binary) | + | Файл-оффер с деталями |
POST /us2/public/offer/process?delimiter=%3B
{
"id": 5161,
"state": "success",
"createdTime": 1765944302471,
"lastModifiedTime": 1765944566531,
"linesProcessed": 3916782,
"sourceFile": "ALT22.txt",
"delimiter": "\t",
"charsetName": "UTF-16LE",
"errorFileExists": true
}
Получение загруженного файла-оффера по его ID. Файлы и история загрузок хранятся ограниченное время – на данный момент это 90 дней. Последняя (активная) загрузка хранится дольше при отсутствии других загрузок, не удаляясь по истечении времени хранения.
GET /us2/public/offer/source
| Параметр | Тип | Обязательность | Значение |
|---|---|---|---|
| offerId | integer($int64) | - | Идентификатор оффера (файла) пользователя со списком деталей |
GET /us2/public/offer/source?offerId=52
В результате сохраняется файл-оффер с названием .offer в формате txt.
В файле присутствуют те же колонки, что в исходном загруженном файле-оффере
Получение конкретной загрузки файла-оффера из истории загрузок текущего пользователя – отражено описание процесса загрузки файла, включающее исходный файл, состояние, даты и ошибки.
GET /us2/public/offer/get
| Параметр | Тип | Обязательность | Значение |
|---|---|---|---|
| offerId | integer($int64) | - | Идентификатор оффера (файла) пользователя со списком деталей |
GET /us2/public/offer/get?offerId=53
{
"id": 53,
"state": "success",
"createdTime": 1673589201320,
"lastModifiedTime": 1673589331880,
"linesProcessed": 3916782,
"sourceFile": "1332_ALT22.txt",
"delimiter": "\t",
"charsetName": "UTF-16LE",
"errorFileExists": true
}
История загрузок файлов-офферов текущего пользователя – отражены описания процессов загрузок файлов, включающие исходный файл, состояние, даты и ошибки. Загрузки в списке идут по порядку от последней (наиболее поздней) загрузки до первой.
GET /us2/public/offer/list
| Параметр | Тип | Обязательность | Значение |
|---|---|---|---|
| page | integer($int32) | - | 0 |
| size | integer($int32) | - | 20 |
GET /us2/public/offer/list?page=0&size=2
{
"data": [
{
"id": 55,
"state": "success",
"createdTime": 1674667725391,
"lastModifiedTime": 1674667726359,
"linesProcessed": 8,
"sourceFile": "52.offer.txt",
"delimiter": "\t",
"charsetName": "UTF-16LE",
"errorFileExists": false
},
{
"id": 54,
"state": "failed",
"createdTime": 1674667625240,
"lastModifiedTime": 1674667625354,
"linesProcessed": 0,
"error": "Missing required column 'brand'",
"sourceFile": "52.offer.txt",
"delimiter": "\t",
"charsetName": "UTF-16LE",
"errorFileExists": false
}
],
"requestId": "5d55fe3b-17ea-4b3e-a465-74e46539dd67"
}
Получение тегов, использованных в файле-оффере (уникальных строк).
GET /us2/public/offer/listTags
| Параметр | Тип | Обязательность | Значение |
|---|---|---|---|
| offerId | integer($int64) | - | Идентификатор оффера (файла) пользователя со списком деталей |
GET /us2/public/offer/listTags?offerId=53
{
"data": [
"Hydraulic",
"Products",
"Suspension/Damping",
"Ignition",
"Parts/Consumables",
"Interior",
"Security",
"Headlight",
"Mixture",
"Axle",
"Trailer",
"via",
"Filters",
"Towbar/Attachment",
"Heating/Ventilation",
"Search",
"Electrics",
"Special",
"Drive",
"Conditioning",
"Carrier",
"Wheels/Tyres",
"Fifth",
"Engine",
"Agent",
"Cooling",
"Instruments",
"Cab",
"Graphic",
"Clutch/Attachment",
"Hybrid",
"Air",
"Maintenance",
"Systems",
"Washer",
"/",
"Exhaust",
"Clutch",
"Hitch",
"Chemical",
"Oil",
"Belt",
"Suspension/Steering",
"Mounting/",
"Wheel",
"Acid",
"Wheels",
"Transmission",
"Article",
"Supply",
"Driver",
"Standard",
"Attachments/Accessories",
"System",
"Accessories",
"Cab/Body",
"Parts",
"Spark/Glow",
"Workshop",
"Coupling",
"Structure",
"Body",
"Locking",
"Communication",
"Window",
"Information/",
"Steering/",
"Motorcycle",
"Steering",
"Braking",
"Tools",
"Electric",
"Suspension",
"Service",
"Cleaning",
"Trap",
"Compressed",
"Take-Off",
"Equipment",
"Neutralisation",
"Comfort",
"Fuel",
"Belts",
"Formation",
"Power",
"Lights/Signal"
],
"requestId": "5259cada-969c-41fe-98bb-08cf96fc3734"
}
Получение файла с ошибками в загрузках файлов-офферов с деталями.
GET /us2/public/offer/errors
Параметры запроса
| Параметр | Тип | Обязательность | Значение |
|---|---|---|---|
| offerId | integer($int64) | - | Идентификатор оффера (файла) пользователя со списком деталей |
GET /us2/public/offer/errors?offerId=53
В результате сохраняется файл с ошибками с названием .errors в формате txt.
В файле присутствуют следующие колонки:
дальнейшие колонки дублируют колонки исходных строк оффера; всегда будут присутствовать обязательные и могут отсутствовать опциональные, если не были включены: