API Product
Содержание
Обзор
Данный документ описывает методы для работы поставщика/дистрибьютора по созданию товарной карточки в системе Smart Satu.
Версия
Version: 1.0.0
Контактная информация
Contact: info@smartsatu.com
URI схема
Host : //food.smartsatu.com/api/ Schemes : HTTPS
Методы
Просмотр заявки на создание продуктов
GET /product-change-requests/{id}
Создание заявки на создание продуктов
POST /product-change-requests
Создание заявки на редактирование продуктов
POST /product-change-request/update
Описание
Просмотр заявки на создание продуктов
Для того, чтобы получить заявку на создание товара, необходимо отправить GET-запрос c пустым телом на /api/product-change-requests/{id}, где id - это уникальный идентификатор заявки на создание нового товара. Ответом от сервера будет являться массив данных с данными заявки на создание товара.
Создание заявки на создание продуктов
Для того чтобы создать заявку на создание нового товара необходимо отправить POST-запрос c JSON-телом, по URL: https://food.smartsatu.com/api/product-change-requests. Ответом от сервера будет являться сообщение с id заявки, ее статусом и комментарием.
Measure_id может принимать значения:
- 1 - шт;
- 9 - кг;
- 11 - л.
Создание заявки на редактирование продуктов
Для редактирования товара необходимо отправить POST-запрос на /api/product-change-request/update с телом:
{ "sku":"7290104841590", "imageFiles":[{"data":"/9j/4AAQS...RPUjogZ2QtanBlZy"}, {"data":"/8k/3gwAS...ONfUjogZ2Qibusdvlkne"}], "name":"Уголок строительный крепежный (металл)", "manufacturer":"Надежные конструкции", "description":"Металлические уголки. Держатели для всех видов и способов навеса. Универсальный в использовании. Качество, проверенное временем." "search_tags":"уголок крепеж" }
где sku – код товара, обязательный параметр. Остальные параметры отправляются при необходимости. Если параметр не указан, значение в товарной карточке перезаписано не будет.
Безопасность
В headers запроса обязательно должна передаваться страна пользователя, а также уникальный токен авторизации, который был получен при входе в систему. Ответом от сервера будет являться массив данных с измененными данными заказа.
Type | In | Name | Description |
---|---|---|---|
Authorization | header | required | Для создания HTTP Basic Auth заголовка нужно преобразовать access_token следующим образом: $auth= "Basic " . base64encode(access_token . ":"); Данный токен должен использоваться в каждом запросе в системе. |
country | header | required | Параметр страны должен использоваться в каждом запросе в системе. |
Параметры
Type | Name | Description | Schema |
---|---|---|---|
Body | body required | Запрос на создание нового товара |
Ответы
Product Change Request Response
HTTP Code | Description | Schema |
---|---|---|
201 | Ok | Product Change Request Response |
400 | Bad Request | 400 |
401 | Unauthorized | 401 |
422 | Add error message | 422 |
Принимаемые ресурсом типы MIME
- application/json
Возвращаемые ресурсом типы MIME
- application/json
Определения
Product Change Request
Name | Description | Schema | Example |
---|---|---|---|
name | Название товара | string | test23 |
sku | Штрих-код предложения | integer($int64) | 123321123321 |
description | Описание | string | test test test |
quantity | Количество | integer($int32) | 2 |
manufacturer | Производитель | string | ABCfood |
measure_id | Единица измерения | integer($int32) | 11 |
imageFiles | Массив | < imageFiles > array |
imageFiles
Name | Description | Schema | Example |
---|---|---|---|
name | Название изображения | string | test123442.jpg |
data | Данные изображения | string | /9j/4AAQSkZJRgABAQAAAQABAADk |
Пример запроса:
{ "name": "test23", "sku": 123321123321, "description": "test test test", "quantity": 2, "manufacturer": "ABCfood", "measure_id": 11, "imageFiles": [ { "name": "test123442.jpg", "data": "/9j/4AAQSkZJRgABAQAAAQABAADk" } ] }
Product Change Request Response
Name | Description | Schema | Example |
---|---|---|---|
id | Идентификатор наименования | integer($int32) | 28576 |
status | Статус запроса | integer($int32) | 0 |
declined_comment | Комментарий | string | null |
Пример ответа:
{ "id": 28576, "status": 0, "declined_comment": null }
400
Name | Description | Schema | Example |
---|---|---|---|
name | Название | string | Bad Request |
message | Сообщение | string | Invalid JSON data in request body: Syntax error. |
code | Код | integer($int32) | 0 |
status | Статус | integer($int32) | 400 |
type | Тип | string | yii\\web\\BadRequestHttpException |
Пример ответа:
{ "name": "Bad Request", "message": "Invalid JSON data in request body: Syntax error.", "code": 0, "status": 400, "type": "yii\\web\\BadRequestHttpException" }
401
Name | Description | Schema | Example |
---|---|---|---|
name | Название | string | Unauthorized |
message | Сообщение | string | Your request was made with invalid credentials |
code | Код | integer($int32) | 0 |
status | Статус | integer($int32) | 401 |
type | Тип | string | "yii\\web\\UnauthorizedHttpException" |
Пример ответа:
{ "name": "Unauthorized", "message": "Your request was made with invalid credentials.", "code": 0, "status": 401, "type": "yii\\web\\UnauthorizedHttpException" }
422
Name | Description | Schema | Example |
---|---|---|---|
field | Параметр | string | sku |
message | Сообщение | string | Штрихкод уже ожидает подтверждения. |
Пример ответа:
{ "field": "sku", "message": "Штрихкод уже ожидает подтверждения." }