API Product: различия между версиями
User (обсуждение | вклад) |
User (обсуждение | вклад) |
||
| (не показана 1 промежуточная версия этого же участника) | |||
| Строка 28: | Строка 28: | ||
Для того, чтобы получить заявку на создание товара, необходимо отправить GET-запрос c пустым телом на /api/product-change-requests/{id}, где id - это уникальный идентификатор заявки на создание нового товара. | Для того, чтобы получить заявку на создание товара, необходимо отправить 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 - л. | ||
===Создание заявки на редактирование продуктов=== | ===Создание заявки на редактирование продуктов=== | ||
| − | Для редактирования товара необходимо отправить | + | Для редактирования товара необходимо отправить PUT-запрос на /api/product-change-request/update с телом: |
{ | { | ||
"sku":"7290104841590", | "sku":"7290104841590", | ||
| Строка 40: | Строка 49: | ||
} | } | ||
где | где | ||
| − | sku – код товара, обязательный параметр | + | sku – код товара, обязательный параметр. Остальные параметры отправляются при необходимости. Если параметр не указан, значение в товарной карточке перезаписано не будет. |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
==Безопасность== | ==Безопасность== | ||
Текущая версия на 06:34, 24 октября 2024
Содержание
Обзор
Данный документ описывает методы для работы поставщика/дистрибьютора по созданию товарной карточки в системе 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 - л.
Создание заявки на редактирование продуктов
Для редактирования товара необходимо отправить PUT-запрос на /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": "Штрихкод уже ожидает подтверждения."
}