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

Как работать с 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. Подробнее...