Загрузка прайс-листа: различия между версиями

Материал из UniqTrade API
Перейти к навигации Перейти к поиску
Строка 30: Строка 30:
         "txt",
         "txt",
         "csv",
         "csv",
         "csv2",
         ...
         "xml",
    ],
         "json"
    "supportedFormatsExt": [
        {
            "format": "xlsx",
            "caption": "xlsx - Microsoft Excel 2007-2013 XML"
        },
         {
            "format": "txt",
            "caption": "txt"
         },
        {
            "format": "csv",
            "caption": "csv (UTF-8)"
        },
        ...
     ],
     ],
     "brands": [
     "brands": [
         {
         {
             "id": 33,
             "id": 506938,
             "name": "4MAX",
             "name": "3R",
             "displayName": "4MAX"
             "externalCode": "01433"
        },
        {
            "id": 562288,
            "name": "4CARS",
            "externalCode": "01551"
        },
        ...
    ],
    "visibleBrands": [
        {
            "id": 910,
            "title": "1A FIRST AUTOMOTIVE",
            "isOriginal": false,
            "synonyms": [],
            "aliases": [],
            "isUtr": false
        },       
        {
            "id": 559,
            "title": "VW",
            "isOriginal": true,
            "synonyms": [
                {
                    "id": 123,
                    "title": "VOLKSWAGEN"
                },
                {
                    "id": 478,
                    "title": "VW (SVW)"
                }
            ],
            "aliases": [],
            "isUtr": false,
            "parent": {
                "id": 1,
                "parent": {
                    "id": 374,
                    "title": "VAG",
                    "isOriginal": true,
                    "synonyms": [],
                    "aliases": [
                        {
                            "id": 2,
                            "alias": {
                                "id": 558,
                                "title": "AUDI",
                                "isOriginal": true,
                                "synonyms": [],
                                "aliases": [],
                                "isUtr": false
                            }
                        },
                        ...
                    ],
                    "isUtr": false
                }
            }
        },
        ...
    ],
    "models": [
        {
            "name": "ABARTH"
        },
        {
            "name": "AC"
        },
        {
            "name": "ACURA"
        },
        ...
    ],
    "categories": [
        {
            "id": "12",
            "title": "Автозапчасти - Двигатель",
            "quantity": "54281"
         },
         },
         {
         {
             "id": 55844,
             "id": "13",
             "name": "ABE",
             "title": "Автозапчасти - Кузов",
             "displayName": "ABE"
             "quantity": "5426"
         },
         },
         ...
         ...
      ]
    ]
}
}
</pre>
</pre>

Версия 06:06, 14 февраля 2024


Параметри запиту

Перед відправкою запросу на формування прайс-листа необхідно отримати список доступних форматів та список брендів, по яким прайс-лист може бути сформовано. Зробити це можно, виконавши наступний запрос:

GET https://order24-api.utr.ua/pricelists/export-params

додав при цьому в headers
Authorization: Bearer eyJ0eXAiOiJKV1Q...
Де в Authorization після ключового слова Bearer потрібно передати отриманий при проходженні аутентифікації token

В результаті ви отримаєте одну із наступних відповідей:


Помилка аутентифікації

Можливі відповіді API при помилці аутентифікації наведено в розділі Ошибка аутентификации


Список параметрів

  • Status Code: 200 OK
  • Body:
{
    "supportedFormats": [
        "xlsx",
        "txt",
        "csv",
        ...
    ],
    "supportedFormatsExt": [
        {
            "format": "xlsx",
            "caption": "xlsx - Microsoft Excel 2007-2013 XML"
        },
        {
            "format": "txt",
            "caption": "txt"
        },
        {
            "format": "csv",
            "caption": "csv (UTF-8)"
        },
        ...
    ],
    "brands": [
        {
            "id": 506938,
            "name": "3R",
            "externalCode": "01433"
        },
        {
            "id": 562288,
            "name": "4CARS",
            "externalCode": "01551"
        },
        ...
    ],
    "visibleBrands": [
        {
            "id": 910,
            "title": "1A FIRST AUTOMOTIVE",
            "isOriginal": false,
            "synonyms": [],
            "aliases": [],
            "isUtr": false
        },        
        {
            "id": 559,
            "title": "VW",
            "isOriginal": true,
            "synonyms": [
                {
                    "id": 123,
                    "title": "VOLKSWAGEN"
                },
                {
                    "id": 478,
                    "title": "VW (SVW)"
                }
            ],
            "aliases": [],
            "isUtr": false,
            "parent": {
                "id": 1,
                "parent": {
                    "id": 374,
                    "title": "VAG",
                    "isOriginal": true,
                    "synonyms": [],
                    "aliases": [
                        {
                            "id": 2,
                            "alias": {
                                "id": 558,
                                "title": "AUDI",
                                "isOriginal": true,
                                "synonyms": [],
                                "aliases": [],
                                "isUtr": false
                            }
                        },
                        ...
                    ],
                    "isUtr": false
                }
            }
        },
        ...
    ],
    "models": [
        {
            "name": "ABARTH"
        },
        {
            "name": "AC"
        },
        {
            "name": "ACURA"
        },
        ...
    ],
    "categories": [
        {
            "id": "12",
            "title": "Автозапчасти - Двигатель",
            "quantity": "54281"
        },
        {
            "id": "13",
            "title": "Автозапчасти - Кузов",
            "quantity": "5426"
        },
        ...
    ]
}


Запрос на формування прайс-листа

Для додавання задачі на формування прайс-листа необхідно відправляти наступний запрос:

POST https://order24-api.utr.ua/pricelists/export-request

додав при цьому в headers
Authorization: Bearer eyJ0eXAiOiJKV1Q...
Де в Authorization після ключового слова Bearer потрібно передати отриманий при проходженні аутентифікації token

  • Body:
{
      "brandsId": [35,55844],
      "format":"csv",
      "utrArticle":false,
      "inStock":false
}

де:
brandsId - массив ідентифікаторів брендів, по яким необхідно сформувати прайс-лист (із списка брендов)
format - формат прайс-листа (із списка допустимих форматів)
utrArticle - флаг включення в прайс-лист додаткового поля - артикула Юник Трейд
inStock - флаг включення в прайс лише позицій с залишками

В разі вдалої авторизації ви отримаєте наступну відповідь:

{
    "fileSize": "",
    "id": 6440,
    "format": "csv",
    "isInStock": false,
    "utrArticle": false,
    "locale": "ru",
    "status": "in queue",
    "createdAt": "2020-02-13T14:52:28+02:00",
    "brands": [
        "ABE",
        "AE"
    ]
}

де:
Id - ідентифікатор прайс-листа. Дане поле необхідно для перевірки статуса и наступного завантаження прайс-листа
Status - статус прайс-листа, "in queue" - в черзі, "complete" - сформован

Перевірка стану прайс-листа

Для перевірки стану прайс-листа необхідно відправляти наступний запрос:

GET https://order24-api.utr.ua/pricelists/{id}

де:
Id - ідентифікатор прайс-листа (отриманий в поле id відповіді на запрос на формування прайс-листа). В результаті отримуєм одну із наступних відповідей:

  • data: in queue - прайс лист формується
  • data: complete - прайс лист сформовано


Отримання списка своїх прайс-листів

Для отримання списка прайс-листов необхідно відправляти наступний запрос:

GET https://order24-api.utr.ua/pricelists

додав при цьому в headers
Authorization: Bearer eyJ0eXAiOiJKV1Q...
де в Authorization після ключового слова Bearer потрібно передати отриманий при проходженні аутентифікаціх token

В разі вдалої авторизації ви отримаєте наступну відповідь:

[
    {
        "fileSize": "",
        "id": 6577,
        "format": "csv",
        "isInStock": true,
        "utrArticle": false,
        "locale": "ru",
        "status": "in queue",
        "createdAt": "2020-02-14T14:16:38+02:00",
        "brands": [
            "4MAX",
            "ABE"
        ]
    },
    {
        "fileSize": "155.34КБ",
        "id": 6440,
        "format": "csv",
        "isInStock": false,
        "utrArticle": false,
        "locale": "ru",
        "status": "complete",
        "token": "4f6bb46deb82f7208ff90d046fddbc03",
        "createdAt": "2020-02-13T14:52:28+02:00",
        "brands": [
            "ABE",
            "AE"
        ]
    }
]


Завантаження прайс-листа

Для отримання списка прайс-листов необхідно відправляти наступний запрос:

https://order24-api.utr.ua/pricelists/export/{token}

де:
token - ідентифікатор прайс-листа, отриманий в полі token результату запроса на отримання списку прайс-листів

Status - статус прайс-листа, "in queue" - в черзі, "complete" - сформовано додавши при цьому в headers
Authorization: Bearer eyJ0eXAiOiJKV1Q...
Де в Authorization після ключевого слова Bearer потрібно передати отрианий при проходженні аутентифікації token

Видалення прайс-листа

Для видалення прайс-листа із списку необхідно відправляти наступний запрос:

DELETE https://order24-api.utr.ua/pricelists/delete/6440

де:
Id - ідентифікатор прайс-листа (отриманий в полі id)