Bug #6303
API для партнерів по розпізнаванню. Асиметричне рішення : )
0%
Description
Необхідно швидке рішення.
Потрібно реалізувати механізм, що дозволить отримати:
1. Перелік планограм,
2. Товари та їх позицій на планограмах з п.1
3. Зображення реалограми по планограмах з п.1
Пропоную створити систему з "вічними" токенами, що буде видаватись як ключ доступу до поточного API.
Щоб реалізувати хоч якусь безпеку, точкою входу має бути "база баз".
Там має зявитись таблиця з +- таким набором колонок:
1. Вічний токен який видається назовні
2. Вічний токен який прописується безпосередньо в таблиці сессій клієнта без терміну дії.
3. Умовна назва того, кому виданий ключ доступу(токен).
4. Перелік методів(ендпоінтів) до яких він має доступ. "/stores,/shelves,/items"
5. Можливо перелік IP з яких можуть бути запити. Не знаю чи це можна на стороны 1C реалізувати.
Клієнту маємо передати посилання
client_url - назва бази клієнта chudo,wog тощо.
current_request - ендпоінт який перед запитом потрібно звірити з доступними в таблиці вище з п.3
token_without_expiration_date - токен в таблиці вище з п.1
POST https://[client_url]/m/hs/merchandising/api.shelf/[current_request]?version=1&token=[token_without_expiration_date]
Процес наступний:
1. Кліент робить запит на "базу баз"
2. Перевіряється актуальність\наявність токена.
3. Перевіряється наявність\доступність ендпоїнта до якого посилаються
4. Робиться запит на наше поточне апі з підміною токена, що у таблиці в "базі баз" п.2
5. Для
1. Отримати перелік наявних магазинів /stores
2. Отримати перелік обл. в конкертному магазині СПРОЩЕНИЙ. Наразі такого метода не існує.
Необхідно те ж саме що /shelvesByParent, але працювати має як "дей мені перелік обл за ідентифікатором магазину еа опублікованому плані залу".
Тобто щось типу /shelves?store=[store_id]
3. Отримати перелік товарів на конкретному обл. в конкретному магазині СПРОЩЕНИЙ. Наразі такого метода не існує.
Необхідно те, що +- робить /shelfArt
Тобто щось таке /items?store=[store_id]&shelf=[instance_id]
History
#1 Updated by ♠ Aleksandr Tsymbalyuk about 1 month ago
- Tracker changed from Strategy to Bug
- Project changed from Shelf dev to [EPIC] Безпека
- Current Version set to Release 110