Экспорт товаров
С каталогом товаров удобно работать, когда он одинаковый во всех программах. LIFE POS выгружает каталог товаров в виде таблицы Excel, так что вы легко можете настроить автоматическую актуализацию каталога. Рассказываем, как выгрузить каталог по API.
Для передачи файлов используется тип данных multipart/form-data
.
Как работать с multipart
Получить каталог
Чтобы получить каталог, создайте задачу на экспорт. Для этого отправьте POST-запрос по адресу:
{base_url}/orgs/{org_guid}/async/exports/nomenclature:new.xlsx
base_url
— адрес сервиса. Возможные значения:
https://api-dev.life-pos.ru
— тестовый API,https://api.life-pos.ru
— рабочий API.
Получить данные задачи на экспорт
Чтобы получить список задач на экспорт, отправьте GET-запрос по адресу:
{base_url}/orgs/{org_guid}/async/exports/nomenclature
Данные выводятся постранично, по 20 записей на страницу. Если нужно получить данные второй страницы, возьмите из ответа значение параметра next_page_token
и отправьте новый запрос, передав это значение в параметре page_token
. Продолжайте до тех пор, пока параметр next_page_token
не придёт пустым.
Например, вы запросили данные о сотрудниках и получили такой ответ:
“next_page_token”: “OdDEFa2CzpYdp1CmlO9s9mjBn4NkUZB3CXKOtNfQWM0”,
“page_number”: 1,
“pages_total”: 2,
“items_per_page”: 20,
“items_total”: 27,
В ответе представлены только записи 1–20. Чтобы посмотреть записи с 21 по 27, отправьте новый GET-запрос, указав page_token=“OdDEFa2CzpYdp1CmlO9s9mjBn4NkUZB3CXKOtNfQWM0”
.
В запросе есть необязательный параметр selection
. Это фильтр задач по их статусу. Если параметр не передан, по умолчанию используется значение alive_only
, то есть в ответе придут только данные задач, не перенесённых в архив. Чтобы посмотреть весь список задач или только архивные данные, укажите значение all
или archived_only
соответственно.
Чтобы получить информацию о конкретной задаче, отправьте GET-запрос по другому адресу:
{base_url}/orgs/{org_guid}/async/exports/nomenclature/{task_guid}
task_guid
— идентификатор задачи. Если не передан при добавлении задачи, LIFE POS создаст его сам и пришлёт в ответе. Также можно получить в списке задач.
В описании задачи вам нужнее всего статусы. Вот они:
InQueue
— в очереди,
InProgress
— в работе,
WaitingForFeedback
— требуется подтверждение,
Completed
— выполнена,
Canceled
— отменена.
Получить файл
Чтобы получить файл с каталогом товаров, дождитесь, когда задача перейдёт в статус Completed
. После этого можете скачать файл, отправив GET-запрос по адресу:
{base_url}/orgs/{org_guid}/async/exports/nomenclature/{task_guid}/result.xlsx
task_guid
— идентификатор задачи. Если не передан при добавлении задачи, LIFE POS создаст его сам и пришлёт в ответе. Также можно получить в списке задач.
Отменить выгрузку каталога
Если нужно отменить выгрузку каталога, отмените задачу на экспорт. Для этого отправьте POST-запрос по адресу:
{base_url}/orgs/{org_guid}/async/exports/nomenclature/{task_guid}:cancel
task_guid
— идентификатор задачи. Если не передан при добавлении задачи, LIFE POS создаст его сам и пришлёт в ответе. Также можно получить в списке задач.
Вот и всё, что касается экспорта каталога. В следующей статье поговорим о транзакциях.