Sbermarket API для мерчантов и ресторанов.
Позволяет управлять:
- ассортиментом товаров;
- меню;
- остатками товаров в магазинах;
- доступностью блюд;
- ценами и акциями на товары и блюда.
Базовый URL для запросов: https://merchant-api.sbermarket.ru
API для мерчантов для управления своими торговыми точками
Порядок работы с Stores API
- Получить access token, выполнив (POST /auth/token) аутентификацию по oAuth 2.0 flow (client credentials)
- Получить список своих торговых точек выполнив запрос /retail-chains/{retail_chain_slug}/stores
- Где retail_chain_slug это идентификатор сети мерчанта полученный в СберМаркете
- Этот запрос возвращает постраничный список ваших stores, зарегистрированных в СберМаркете
- В поле "id" находится идентификатор store в системе СберМеркет
- В поле "merchant_store_id" находится идентификатор store в системе мерчанта
- Для получения или изменения данных по торговой точке необходимо предоставлять этот идентификатор (merchant_store_id в пути к ресурсу)
- Указать дополнительные данные по торговой точке, которые зависят от типа интеграции с СберМаркетом
и вида торговой точки:
- при доставке мерчантом:
- PUT /retail-chains/{retail_chain_slug}/stores/{merchant_store_id}/merchant-status (изменение статуса магазина)
- чтобы узнать текущий статус store в приложении СберМаркет используйте
GET /retail-chains/{retail_chain_slug}/stores/{merchant_store_id}
в поле sm_status.status указано доступен ли этот store в приложении СберМаркет для новых заказов
Добавлены несколько методов для управления временем зоны доставки и ее активностью, а так же для запроса информации о торговых точках (ресторанах)
API для мерчантов для получения access tokens. Порядок работы 1. Получить access token, выполнив POST /auth/token по oAuth 2.0 flow (client credentials)
For more information, please visit https://docs.sbermarket.ru/
Python 3.8+
If the python package is hosted on a repository, you can install directly using:
pip install git+https://github.com/okfish/sm-content-api.git
(you may need to run pip
with root permission: sudo pip install git+https://github.com/okfish/sm-content-api.git
)
Then import the package:
import sm_content_api
Install via Setuptools.
python setup.py install --user
(or sudo python setup.py install
to install the package for all users)
Then import the package:
import sm_content_api
As SM Content API doesn't have test sites, mock server needed for some tests, and you should implement it yourself.
Otherwise, place your SM creds in the .env.test
file to run tests with prod server
Please follow the installation procedure and then run the following:
import sm_content_api
from sm_content_api.rest import ApiException
from pprint import pprint
# Defining the host is optional and defaults to https://merchant-api.sbermarket.ru
# See configuration.py for a list of all supported configuration parameters.
configuration = sm_content_api.Configuration(
host = "https://merchant-api.sbermarket.ru"
)
# Enter a context with an instance of the API client
async with sm_content_api.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = sm_content_api.AuthenticationApi(api_client)
client_id = 'client_id_example' # str |
client_secret = 'client_secret_example' # str |
grant_type = 'grant_type_example' # str |
try:
# Получение JWT токена
api_response = await api_instance.get_token(client_id, client_secret, grant_type)
print("The response of AuthenticationApi->get_token:\n")
pprint(api_response)
except ApiException as e:
print("Exception when calling AuthenticationApi->get_token: %s\n" % e)
For more examples have a look at tests.
All URIs are relative to https://merchant-api.sbermarket.ru
Class | Method | HTTP request | Description |
---|---|---|---|
AuthenticationApi | get_token | POST /auth/token | Получение JWT токена |
ImportApi | import_availability | PUT /api/v1/import/availability | Указать доступность товаров/блюд |
ImportApi | import_categories | PUT /api/v1/import/categories | Создать или обновить категорию товаров |
ImportApi | import_offers | PUT /api/v1/import/offers | Создать или обновить товар |
ImportApi | import_options_groups | PUT /api/v1/import/options-groups | Создать или обновить наборы опций блюд (для ресторанов) |
ImportApi | import_prices | PUT /api/v1/import/prices | Обновить цену товаров |
ImportApi | upload_offer_image | POST /api/v1/import/offer-images | Загружает изображение товара (оффера) |
- Attribute
- Availability
- Category
- CommonDataObjectsProblemDetails
- CommonDataObjectsProblemDetailsInvalidParamsInner
- Error
- GetToken200Response
- Image
- ImportAvailability200Response
- ImportAvailability200ResponseData
- ImportAvailabilityRequest
- ImportCategoriesRequest
- ImportOffersRequest
- ImportOptionsGroupsRequest
- ImportPricesRequest
- Offer
- OfferPrice
- OfferPricePrice
- OfferPricePricePromo
- Option
- OptionsGroup
Authentication schemes defined for the API:
- Type: OAuth
- Flow: application
- Authorization URL: https://merchant-api.sbermarket.ru/auth/token
- Scopes:
Oleg Rybkin aka Fish [email protected]
with help of the OpenAPI Generator project:
- API version: 0.0.3a
- Package version: 0.2.0