Apicore Dealer API

Начало работы

  • Для запросов в API используется метод POST
  • Для подключения нужен Api-ключ (Получить <Api-ключ> можно в разделе кабинета "Настройки")
  • Тело запроса raw должно быть в формате JSON
  • Ответ отдается также в формате JSON

Интерфейс API: https://api.apicore.one

Заголовки запроса (Headers)

POST / HTTP 1.1
Host: https://api.apicore.one
Api-Key: <Api-ключ>
Content-Type: application/json
Accept: application/json
Внимание!

Не передавайте Api-ключ посторонним лицам!

На запросы по API действует правило - не более 2-х запросов в секунду.

Если от вас поступает слишком много ошибочных или одинаковых запросов, мы можем ограничить доступ к API

Если вам требуется дополнительная функциональность в API, пишите на support@apicore.one, с радостью рассмотрим предложения.

Скачать спецификацию OpenAPI
Обзор API
Связаться с поддержкой support@apicore.one
Языки программирования
Серверы
Основной сервер
https://api.apicore.one/

Api-ключ

Операции

Категории каталогов Дистрибьюторов

Операции

Товары Дистрибьюторов

Операции

Работа с каталогами Дилера

Операции

Категории каталогов

Операции

Товары каталогов

Операции

Работа с источниками дилера

Операции

Категории источников

Операции

Товары источников

Операции

Работа с заказами

Операции

Создание заказа

Запрос

Метод создает новый заказ. Возвращает результат создания.

В зависимости от поля customer_type по разному должно быть заполнено поле customer.

При указании individual или legal в customer_type обязательны к заполнению:

  • объект customer с данными получателя заказа (внешнего клиента: физического или юридического лица)
  • поле суммы продажи заказа total_price и ее валюты currency
  • в массиве products обязательна цена продажи за единицу товара price и валюта цены currency для каждого товара.

При указании self в customer_type объект customer не заполняется, так как заказ создается для себя (своей компании). Также не нужны к заполнению поля суммы продажи заказа total_price и currency, а в массиве products не обязательны к заполнению цена продажи за единицу товара price и валюта цены currency. Цена покупки (дилерская цена) товара будет взята из карточки товара.

Заголовки
Content-TypestringОбязательные поля
Пример: application/json
AcceptstringОбязательные поля
Пример: application/json
Api-KeystringОбязательные поля
Телоapplication/json
One of:
ext_idstring

Внешний ID заказа из внешнего источника. Ограничен 40 символами.

Уникальный в рамках внешнего источника. Для разных источников могут быть одинаковые ext_id.

Не обязательно к заполнению. При создании заказа вернется поле order_id, которое будет являться внутренним идентификатором заказа и с заказом можно будет работать по нему.

ext_sourcestring

Код внешнего источника, из которого создается заказ. Обязательно к заполнению, если указан ext_id.

payedboolean

Признак полной оплаты заказа получателем заказа (внешним клиентом). Если true, тогда заказ считается оплаченным.

expressboolean

Признак экспресс-доставки. Если true, тогда заказ помечается как экспресс.

customer_typestringОбязательные поля

Получатель заказа. Возможные значения: individual - физическое лицо (внешний клиент) legal - юридическое лицо (внешний клиент) self - заказ себе (моя компания)

Если указано individual или legal, тогда обязательны для заполнения объект customer и поля суммы заказа total_price и currency.

Данный пример запроса для customer_type равного individual.

customerobjectОбязательные поля

Объект с данными получателя заказа (физического лица). Обязателен к заполнению, если customer_type равен individual.

customer.​namestringОбязательные поля

Имя получателя заказа.

customer.​last_namestring

Фамилия получателя заказа.

customer.​phonestring

Телефон получателя заказа.

customer.​emailstring

Email получателя заказа. Ограничен 100 символами.

customer.​addressstring

Адрес получателя заказа.

customer.​commentstring

Комментарий получателя заказа.

notestring

Внутренний комментарий к заказу, который видите только вы и он не передается дистрибьюторам при распределении заказа.

total_pricenumber(float)Обязательные поля

Общая сумма заказа. Обязателен к заполнению, если customer_type равен individual или legal. Разделитель дробной части — точка, до двух знаков после точки.

currencystringОбязательные поля

Валюта суммы заказа. Обязателен к заполнению для total_price.

productsArray of objects

Массив товаров заказа.

curl -i -X POST \
  https://api.apicore.one/dealer/v1/order.create \
  -H 'Accept: application/json' \
  -H 'Api-Key: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "ext_id": "000000123",
    "ext_source": "shop",
    "payed": true,
    "express": true,
    "customer_type": "individual",
    "customer": {
      "name": "Имя",
      "last_name": "Фамилия",
      "phone": "+77001234567",
      "email": "my@email.kz",
      "address": "г. Алматы, пр. Аль-Фараби, д. 1, кв. 1",
      "comment": "Просьба позвонить за час до доставки"
    },
    "note": "Внутренний комментарий к заказу для себя",
    "total_price": 640000,
    "currency": "KZT",
    "products": [
      {
        "id": 123,
        "name": "Ноутбук Asus ROG Strix G15 G513QM-HN004T",
        "quantity": 1,
        "price": 500000,
        "currency": "KZT"
      },
      {
        "id": 456,
        "name": "Мышь Logitech MX Master 4",
        "quantity": 2,
        "price": 70000,
        "currency": "KZT"
      }
    ]
  }'

Ответы

Успешный ответ

Телоapplication/json
statusboolean
ext_idstring

Внешний ID заказа из внешнего источника, если был указан в запросе.

ext_sourcestring

Код внешнего источника, из которого создается заказ, если был указан в запросе.

order_idnumber

Внутренний ID - идентификатор созданного заказа.

messagestring

Сообщение результата создания заказа.

Ответ
application/json
{ "status": true, "ext_id": "000000123", "ext_source": "shop", "order_id": 1, "message": "Заказ успешно создан" }

Изменение статуса заказа

Запрос

Метод изменяет статус заказа.

Проверяется наличие поля order_id или комбинации полей ext_id и ext_source для идентификации заказа. Приоритет в идентификации заказа имеет поле order_id.

Заголовки
Content-TypestringОбязательные поля
Пример: application/json
AcceptstringОбязательные поля
Пример: application/json
Api-KeystringОбязательные поля
Телоapplication/json
order_idnumber

Внутренний идентификатор заказа. Имеет приоритет в идентификации заказа. Если не указан, тогда должны быть заполнены поля ext_id и ext_source.

ext_idstring

Внешний ID заказа из внешнего источника.

ext_sourcestring

Код внешнего источника, из которого создан заказ. Обязательно к заполнению, если указан ext_id.

status_codestringОбязательные поля

Код статуса заказа.

curl -i -X POST \
  https://api.apicore.one/dealer/v1/order.status.set \
  -H 'Accept: application/json' \
  -H 'Api-Key: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "order_id": 1,
    "status_code": "RS"
  }'

Ответы

Успешный ответ

Телоapplication/json
statusboolean
messagestring
Ответ
application/json
{ "status": true, "message": "Статус заказа успешно изменен" }

Получение списка статусов заказов

Запрос

Метод возвращает список статусов заказов.

Заголовки
Content-TypestringОбязательные поля
Пример: application/json
AcceptstringОбязательные поля
Пример: application/json
Api-KeystringОбязательные поля
curl -i -X POST \
  https://api.apicore.one/dealer/v1/order.status.list \
  -H 'Accept: application/json' \
  -H 'Api-Key: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json'

Ответы

Успешный ответ

Телоapplication/json
statusboolean

Статус ответа

statusesArray of objects

Массив статусов заказов

countnumber

Количество статусов заказов

Ответ
application/json
{ "status": true, "statuses": [ {}, {}, {}, {}, {}, {}, {} ], "count": 7 }

Работа со стеком импорта

Операции