Как вам помочь ?

Как работать с API

В данной статье расскажем, где взять API магазина и как можно с ним взаимодействовать на примере сервиса Postman.

 

Где взять API ключ

Для начала работы с API необходимо сгенерировать API ключи для вашего магазина. Для этого перейдите в админ панель вашего магазина, в раздел "Настройки - API" (рис. 1).

Описание API - 4445
Рисунок 1.

Затем на вкладках "API" и "API с авторизацией", нажмите на кнопку "Сгенерировать новый api ключ" (рис. 2).

Описание API - 3482
Рисунок 2.

После этого в поле "API ключ" появится ваш ключ. Если он был сгенерирован ранее, то его можно будет также найти в этом поле.

 

Работа с API ключом

Теперь перейдем к самому процессу работы с ключом. Рассмотрим на примере POST метода для Заказа через API.

Для примера мы будем использовать сервис Postman. Переходим на сайт и регистрируемся, либо если учетная запись уже есть — используем ее. После этого создаем наше "Рабочее пространство" (Workspaces)(рис. 3).

Описание API - 3020
Рисунок 3.

Выбирая любой шаблон, например: "Работа с API" (API Documentation)(рис. 4) и называя его, любым именем.

Описание API - 9506
Рисунок 4.

Если был выбран ранее названный вариант, то в шаблоне будут автоматически созданы 4 заготовки, в ином случае, можно просто создать свою заготовку (рис. 5).

Описание API - 3209
Рисунок 5.

Теперь переходим в админ панели магазина в раздел "Настройки - API" к методам Заказа, и открываем "POST метод Создания заказа" (рис. 6).

Описание API - 3757
Рисунок 6.

Копируем URL-ссылку вашего POST метода (рис.6, п.3) и вставляем ее в URL поле нашей заготовки в сервисе Postman (рис. 7).

Описание API - 3282
Рисунок 7.

API ключ автоматически подставится в параметры запроса. Для POST/PUT и ряда других запросов может понадобиться тело запроса. Его можно взять прямо из описания к методу в этой статье, или в админ панели магазина и отредактировать его под свою потребность. Обязательность полей можно посмотреть также в описании к методам.

Пример таких полей для поля "Order" у запроса Заказа:

Поля Order
OrderCustomer обязательное Объект типа OrderCustomer.
OrderSource не обязательное

Название источника заказа.

Currency не обязательное Код валюты. Должен совпадать с кодом валюты в магазине.
CustomerComment не обязательное Комментарий пользователя.
AdminComment не обязательное Комментарий администратора.
ShippingName не обязательное Название метода доставки.
PaymentName не обязательное Название метода оплаты.
DeliveryTime не обязательное string - Время доставки. Например, "Как можно скорее", "08:00-20:00|3".
DeliveryDate не обязательное DateTime? Дата доставки. Например, "2030-02-15 00:00:00.000".
ShippingCost не обязательное Стоимость доставки.
PaymentCost не обязательное Стоимость оплаты. Наценка или скидка при оплате.
BonusCost не обязательное Количество использованных бонусов. У покупателя должна быть бонусная карта. Если её нет, то бонусы не будут списаны. Покупатель будет искаться по CustomerID, Email или Phone.
BonusCardNumber не обязательное Номер бонусной карты. Если номер передается в запросе, то бонусная карта должна уже существовать у покупателя. Покупатель будет искаться по CustomerID, Email или Phone.
OrderDiscount не обязательное Скидка заказа. Процент
OrderDiscountValue не обязательное Скидка заказа. Значение
ShippingTaxName не обязательное Налог на доставку. Название должно совпадать с название налога в магазине.
TrackNumber не обязательное Номер отслеживания.
TotalWeight не обязательное Вес заказа.
TotalLength не обязательное Габариты заказа: длина
TotalWidth не обязательное Габариты заказа: ширина
TotalHeight не обязательное Габариты заказа: высота
OrderStatusName не обязательное Статус заказа. Название должно совпадать с названием статуса в магазине.
ManagerEmail не обязательное Email менеджера, которому будет назначен заказ.
isPaied не обязательное Оплачен заказ или нет. По умолчанию заказ не оплачен.
CheckOrderItemExist не обязательное Проверять существуют ли товары в магазине. Если стоит true и пришел товар с артикулом, которого нет в магазине, то вернется ошибка и заказ не будет создан. По умолчанию true.
CheckOrderItemAvailiable не обязательное Проверять в наличии ли товары в магазине. Если стоит true и пришел товар с артикулом товара, который не в наличии, то вернется ошибка и заказ не будет создан. По умолчанию true.
OrderItems обязательное Массив объектов OrderItem.

Формат передачи данных — {параметр:"значение",параметр:{параметр:"значение",параметр:"значение"} (для вложенных параметров)}. Нужно очень внимательно относиться к синтаксису запроса — любая пропущенная запятая или кавычка приведет к ошибке отправки.

В интерфейсе Postman, под полем куда мы вставили нашу ссылку с API, выбираем вкладку "Body" (рис. 8, п.1) и переключаемся на "raw" (рис. 8, п.2) формат "JSON" (рис. 8, п.3). Вставляем тело запроса в текстовый блок ниже (рис. 8, п.4). 

Описание API - 2606
Рисунок 8.

После того как будет готов запрос, отправляем его, нажав на кнопку "Send". Нам вернется ответ с данными созданной сущности.

Запрошенными данными (рис. 9):

Описание API - 9430
Рисунок 9.

Или ошибка с расшифровкой (рис. 10).

Описание API - 9873
Рисунок 10.

Готово. Мы рассмотрели на примере, как использовать API.

Другие статьи по теме

Статья оказалась полезной?
Благодарим за отзыв.

Как мы можем улучшить статью?

Не нашли нужную статью? Предложить свою тему

Не нашли нужную статью?

Благодарим за отзыв.

Тэги: api, апи, use api

Мы используем cookies. Подробнее...