API:Docs

Материал из ABCP Documentation
Главная > API:Docs
Перейти к: навигация, поиск
vertical-align:middle;
Внимание!
Данная статья предназначена для технических специалистов, обладающих, как минимум, начальными знаниями о принципах работы протокола HTTP. Консультации по вопросам относящимся к стандартам HTTP осуществляться не будут.

Содержание

Общая информация

Доступ к публичному API осуществляется посредством HTTP-запросов и реализован с использованием принципов REST. Базовым URI для веб-службы является:

http://имя.сайта.public.api.abcp.ru/

Обмен осуществляется в кодировке UTF-8.

Для отладки вы можете воспользоваться расширением Advanced REST Client для обозревателя Google Chrome.

Запрос

Запросы на получение и запись данных осуществляются с помощью HTTP-методов GET и POST соответственно. В структуре сервиса имеется понятие операции. Операция указывается в качестве пути в URL. Параметры передаются как строка запроса HTTP (GET) или данными POST. Большая часть операций исполняется от имени конкретного пользователя и требует идентификации с помощью параметров userlogin (имя пользователя в системе) и userpsw (md5-хэш пароля пользователя). Md5-хэш можно сгенерировать выполнением функции (большая часть языков программирования имеет данную функцию в своем арсенале), либо воспользоваться online-генератором (например, md5x). Каждая операция может иметь список дополнительных параметров, определяемых контекстом операции. Например, вызов операции "Поиск детали по номеру" может выглядеть следующим образом:

http://demo.public.api.abcp.ru/search/articles/?userlogin=username&userpsw=md5pass&number=01089&brand=Febi

При использовании метода POST в HTTP-заголовке Content-Type необходимо передать медиа-тип данных запроса application/x-www-form-urlencoded и соответственно с данным типом сформировать тело HTTP-запроса.

В HTTP-заголовке Accept необходимо передать ожидаемый тип данных ответа. В настоящее время реализован только тип JSON, и, в любом случае, будет возвращен он. Тем не менее, при разработке клиента, необходимо учитывать указанную особенность и передавать заголовок Accept со значением application/json.

Ответ

В случае успешного исполнения операции, веб-служба вернет ответ с HTTP-кодом 200 и телом ответа в виде JSON. Формат ответа определяется каждой операцией. Пример результата успешного выполнения запроса:

 1 [
 2 	{
 3 		"brand": "Hepu",
 4 		"articleCode": "P999",
 5 		"articleCodeFix": "P999",
 6 		"articleId": "2854918",
 7 		"description": "Антифриз [синий] 1,5л.",
 8 		"availability": "-1",
 9 		"deliveryPeriod": 3,
10 		"price": 231,
11 		"weight": "0"
12 	},
13 	{
14 		"brand": "Febi",
15 		"articleCode": "01089",
16 		"articleCodeFix": "01089",
17 		"articleId": "37367",
18 		"description": "Антифриз 1.5 л синий",
19 		"availability": "1943",
20 		"deliveryPeriod": 3,
21 		"price": 233,
22 		"weight": "1.76"
23 	},
24 	{
25 		"brand": "Vaico Vemo",
26 		"articleCode": "V600020",
27 		"articleCodeFix": "V600020",
28 		"articleId": "4144961",
29 		"description": "Антифриз g-11 1.5л. концентрат",
30 		"availability": "-2",
31 		"deliveryPeriod": 3,
32 		"price": 235,
33 		"weight": "0"
34 	}
35 ]

Любой ответ с HTTP-кодом 400 и более является ошибочным, в теле содержит код ошибки и, как правило, текстовое сообщение описывающее причины возникшей ошибки также в виде JSON. Пример сообщения об ошибке:

1 {
2 	"errorCode": 102,
3 	"errorMessage": "User Authentication Error"
4 }

Типы ошибок

Код Описание
1 Ошибка синтаксиса запроса
2 Не найден обязательный параметр запроса
3 Неизвестная операция
4 Ошибка в параметре запроса
13 Неизвестная ошибка
102 Ошибка аутентификации пользователя
103 Доступ запрещен
104 Ошибка аутентификации сайта
201 Ошибка данных
202 Нарушение требования уникальности данных
301 Объект не найден
302 Ошибка кэша
303 Ресурс заблокирован

Операции

Поиск

Поиск брендов по номеру

Операция: search/brands
Метод: GET

Осуществляет поиск по номеру детали и возвращает массив найденных брендов, имеющих деталь с искомым номером. Аналог этапа выбора бренда на сайте.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
number Искомый номер детали
useOnlineStocks Флаг "использовать online-склады". Может принимать значения 0 или 1 (не использовать и использовать соответственно; по умолчанию - 0). Если выключено, то в выдачу не будут попадать детали с online-складов, что позволит увеличить скорость ответа.
locale Локаль. Задается в формате language[_territory], например, ru_RU. По умолчанию используется локаль сайта.

Пример запроса

http://api.demo.abcp.ru/search/brands/?userlogin=username&userpsw=md5pass&number=01089

Поля ответа

Поле Описание
brand Имя производителя.
number Код детали.
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
description Описание детали.
availability Флаг "Имеется ли в наличии".

Поиск детали по номеру и бренду

Операция: search/articles
Метод: GET

Осуществляет поиск по номеру детали и бренду. Возвращает массив найденных деталей. Так как один и тот же производитель может иметь несколько общепринятых наименований (например, GM и General Motors), система постарается это учесть, используя собственную базу синонимов брендов.


Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
number Искомый номер детали
brand Фильтр по имени производителя
useOnlineStocks Флаг "использовать online-склады". Может принимать значения 0 или 1 (не использовать и использовать соответственно; по умолчанию - 0). Если выключено, то в выдачу не будут попадать детали с online-складов, что позволит увеличить скорость ответа.

Пример запроса

http://api.demo.abcp.ru/search/articles/?userlogin=username&userpsw=md5pass&number=01089&brand=Febi

Поля ответа

vertical-align:middle;
Информация
Для пользователя "API-администратор" по каждой позиции возвращается цена закупки в поле priceIn в валюте сайта, в поле priceRate - коэффициент пересчета цены закупки из валюты поставщика в валюту сайта, в поле price для администратора возвращается цена, рассчитанная для гостя.
Поле Описание
brand Имя производителя.
number Код детали.
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
description Описание детали.
availability Наличие детали на складе.
Отрицательные значения -1, -2 и -3 означают "неточное" наличие, которое на сайте выглядит как "+", "++" и "+++" соответственно.
Отрицательное значение -10 означает наличие "под заказ".
packing Мин. партия для заказа (кратность).
deliveryPeriod Срок поставки (в часах).
deliveryPeriodMax Максимальный срок поставки (в часах).
deadlineReplace Замена срока поставки (используется вместа срока поставки, если не заполнен максимальный срок поставки).
distributorCode Код поставщика ("человеко-читаемый" код, который может (но не должен) установить владелец сайта для прайса/поставщика).
supplierCode Код поставки. Необходим для добавления товара в корзину.
supplierColor Цвет поставщика (как в результатах поиска на сайте).
supplierDescription Описание поставщика (как в результатах поиска на сайте).
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором!Параметр "itemKey" обязателен для передачи заказа онлайн-поставщику, а также при передаче заказа от франчайзи к ГК.
price Цена в валюте сайта.
weight Вес одной единицы товара в килограммах.
volume Объем одной единицы товара.
deliveryProbability Вероятность поставки товара поставщика.
lastUpdateTime Время последнего обновления
additionalPrice Дополнительная цена в валюте сайта.
noReturn Флаг "Без возврата"
distributorId Идентификатор поставщика
grp Группа поставщика
code Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С
nonliquid Признак неликвидности детали (присутствует только при условии выгрузки в прайсе поставщика)

Пакетный запрос без учета аналогов

Операция: search/batch
Метод: POST

Осуществляет поиск по номеру производителя и бренду детали. Возвращает массив найденных деталей.

Внимание! Данная операция не выполняет поиск по online-складам.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
search Набор искомых деталей в формате brand - number. Максимум 30 000 деталей либо 256 Мб.

Пример запроса

http://api.demo.abcp.ru/search/batch


Параметры POST

userlogin=username&userpsw=md5pass&search[0][number]=01089&search[0][brand]=Febi&search[1][number]=333305&search[1][brand]=Kyb

Поля ответа

vertical-align:middle;
Информация
Для пользователя "API-администратор" дополнительно по каждой позиции возвращается цена закупки в поле priceIn, в поле price возвращается цена, рассчитанная для гостя.
Поле Описание
brand Имя производителя.
number Код детали.
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
description Описание детали.
availability Наличие детали на складе.
Отрицательные значения -1, -2 и -3 означают "неточное" наличие, которое на сайте выглядит как "+", "++" и "+++" соответственно.
Отрицательное значение -10 означает наличие "под заказ".
packing Мин. партия для заказа (кратность).
deliveryPeriod Срок поставки (в часах).
deliveryPeriodMax Максимальный срок поставки (в часах).
distributorCode Код поставщика ("человеко-читаемый" код, который может (но не должен) установить владелец сайта для прайса/поставщика).
supplierCode Код поставки. Необходим для добавления товара в корзину.
supplierColor Цвет поставщика (как в результатах поиска на сайте).
supplierDescription Описание поставщика (как в результатах поиска на сайте).
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором!Параметр "itemKey" обязателен для передачи заказа онлайн-поставщику, а также при передаче заказа от франчайзи к ГК.
price Цена в валюте сайта.
weight Вес одной единицы товара в килограммах.
volume Объем одной единицы товара.
deliveryProbability Вероятность поставки товара поставщика.
additionalPrice Дополнительная цена в валюте сайта.
noReturn Флаг "Без возврата"
grp Группа поставщика
code Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С

История поиска

Операция: search/history
Метод: GET

Возвращает массив последних (не более 50) поисковых запросов текущего пользователя.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/search/history?userlogin=username&userpsw=md5pass


Поля ответа

Метод возвращает массив объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
description Описание детали.
datetime Дата и время поиска в формате ГГГГММДДччммсс.

Подсказки по поиску

Операция: search/tips
Метод: GET

Возвращает по части номера массив подходящих пар бренд - номер

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
number Номер (часть номера) детали

Пример запроса

http://api.demo.abcp.ru/search/tips?userlogin=username&userpsw=md5pass&number=0108


Поля ответа

Метод возвращает массив объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
rating Значение рейтинга

Поиск сопутствующих товаров

Операция: advices/
Метод: GET
Функция реализует механизм "с этим товаром покупают" на основе статистики покупки комплектов товаров. Типичный пример использования функции: покупатель выбрал масляный фильтр - система рекомендует остальные товары из набора для ТО. Или, покупатель выбрал левый передний амортизатор, система покажет правый передний. Осуществляет поиск сопутствующих товаров по запрашиваемой паре "Бренд-номер". Дополнительно можно передать параметр limit (рекомендуется = 5), ограничивающий выдачу рекомендаций.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
brand Имя производителя
number Номер детали
limit необязательный параметр, ограничивающий выдачу

Пример запроса

http://api.demo.abcp.ru/advices/?userlogin=username&userpsw=md5pass&brand=MB&number=A2058350147&limit=5

Поля ответа

Метод возвращает массив объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
total Количество заказов, в которых встречается данное сочетание товаров

Операция: advices/batch
Метод: POST
Функция реализует механизм "с этим товаром покупают" по нескольким товарам. Дополнительно можно передать параметр limit (рекомендуется = 5), ограничивающий выдачу рекомендаций. Параметры товаров передаются в виде JSON-массива articles из объектов с полями 'brand' и 'number'.

При использовании этой операции НЕОБХОДИМО! передавать заголовок Content-Type: application/json , а параметры передавать в теле запроса.


Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
articles массив объектов, содержащих brand и number
limit необязательный параметр, ограничивающий выдачу

Пример запроса {"userlogin":"userlogin","userpsw":"userpsw","articles":[{"brand":"kyb","number":"331009"},{"brand":"Mobil","number":"152566"}],"limit":5}

Поля ответа

Метод возвращает массив объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
advices Массив объектов с полями: brand - имя производителя, number - номер детали, total - количество заказов, в которых встречается данное сочетание товаров

Корзина и заказы

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

Операция: basket/multibasket
Метод: GET

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/basket/multibasket?userlogin=XXXXXX&userpsw=XXXXXXX

Поля ответа

Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор корзины
name Название корзины


Добавление товаров в корзину

Операция: basket/add
Метод: POST

Осуществляет подготовку к отправке заказа на товары по номеру производителя, бренду и коду поставки или по коду детали. Возвращает статус добавления товара в корзину по каждой позиции. При добавлении brand - number - itemKey - supplierCode позиции, которая уже была ранее добавлена в корзину значение quantity будет прибавлено к существующему. При добавлении brand - number - itemKey - supplierCode позиции, которая уже была ранее добавлена в корзину со значением quantity равным 0, позиция будет удалена из корзины. Для изменения количества рекомендуется удалять позицию и ее добавлять заново с требуемым количеством.


Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
positions Набор добавляемых деталей в формате brand - number - itemKey - supplierCode или code с указанием добавляемого количества в поле quantity и комментария к позиции в поле comment
basketId Необязательный параметр - идентификатор корзины при использовании мультикорзины

Пример запроса

http://api.demo.abcp.ru/basket/add


Параметры POST

userlogin=username&userpsw=md5pass&positions[0][number]=01089&positions[0][brand]=Febi&positions[0][supplierCode]=54325&positions[0][itemKey]=HFGJKfkdjghreiHJhfdjKhjskhfk&positions[0][quantity]=15&positions[1][number]=333305&positions[1][brand]=Kyb&positions[1][supplierCode]=87654&positions[1][itemKey]=HjfdksahGHHfsfkdjslajfnmra&positions[1][quantity]=4&positions[1][comment]=срочно!!!
или
userlogin=username&userpsw=md5pass&positions[0][code]=FE01089&positions[0][quantity]=15&positions[0][itemKey]=HFGJKfkdjghreiHJhfdjKhjskhfk&positions[1][code]=KY333305&positions[1][quantity]=4&positions[1][itemKey]=HjfdksahGHHfsfkdjslajfnmra&positions[1][comment]=срочно!!!

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
status Статус добавления пакета товаров. При возникновении ошибки добавления хотя бы в одной из позиций, параметр примет значение 0, иначе 1.
positions Список позиций со статусом выполнения операции.

Узел positions содержит набор элементов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
code Код детали (уникальный код на сайте).
supplierCode Код поставки.
description Описание детали.
quantity Заказываемое количество
comment Комментарий к позиции.
status Статус добавления позиции в корзину. Принимает значение 0 - произошла ошибка или 1, если все успешно.
errorMessage Текст сообщения об ошибке при статусе 0

Очистка корзины

Операция: basket/clear
Метод: POST

Удаляет все позиции из корзины.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
basketId Необязательный параметр - идентификатор корзины при использовании мультикорзины

Пример запроса

http://api.demo.abcp.ru/basket/clear

Параметры POST

userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает ответ:

Поле Описание
status Статус очистки корзины. Принимает значение 0 - произошла ошибка или 1, если все успешно.
errorMessage Текст сообщения об ошибке при статусе 0.

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

Операция: basket/content
Метод: GET

Возвращает список позиций, находящихся в корзине. Внимание! При изменении цены или наличия позиции на складе, статус позиции примет значение 1, а поле errorMessage будет содержать описание возникшей проблемы. Иначе, поле status будет равно 0. Внимание! Если у вас подключена опция "Корзина: разрешать частичное оформление заказа". То в ответ веб-сервиса будут попадать только отмеченные позиции.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
basketId Необязательный параметр - идентификатор корзины при использовании мультикорзины

Пример запроса

http://api.demo.abcp.ru/basket/content?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
code Код детали (уникальный код на сайте).
supplierCode Код поставки.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором!Параметр "itemKey" обязателен для передачи заказа онлайн-поставщику, а также при передаче заказа от франчайзи к ГК
description Описание детали.
price Цена за штуку
quantity Заказываемое количество
deadline Срок поставки в часах
deadlineMax Максимальный срок поставки в часах
comment Комментарий к позиции.
status Статус позиции в корзине. Принимает значение 0 - при ошибке или 1, если все успешно.
errorMessage Текст сообщения об ошибке при статусе 0

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

Операция: basket/paymentMethods
Метод: GET

Возвращает список доступных способов оплаты. Идентификатор способа оплаты необходим при отправке заказа (при включенной опции "Корзина: показывать способ оплаты").

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/basket/paymentMethods?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор способа оплаты.
name Способ оплаты.

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

Операция: basket/shipmentMethods
Метод: GET

Возвращает список доступных способов доставки. Идентификатор способа доставки необходим при отправке заказа (при включенной опции "Корзина: показывать типы доставки").

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/basket/shipmentMethods?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор способа доставки.
name Способ доставки.

Получение списка офисов самовывоза

Операция: basket/shipmentOffices
Метод: GET

Возвращает список доступных офисов для самовывоза. Идентификатор офиса самовывоза при отправке заказа (при включенной опции "Заказы: показывать офисы при выборе самовывоза").

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/basket/shipmentOffices?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор офиса
name Название офиса

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

Операция: basket/shipmentAddresses
Метод: GET

Возвращает список доступных адресов доставки. Идентификатор адреса доставки необходим при отправке заказа.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/basket/shipmentAddresses?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор адреса доставки.
name Адрес доставки.

Получение списка дат отгрузки

Операция: basket/shipmentDates
Метод: GET

Возвращает список доступных дат отгрузки. Дата отгрузки необходима при отправке заказа (при включенной опции "Корзина: показывать дату отгрузки").

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/basket/shipmentDates?userlogin=username&userpsw=md5pass

Поля ответа

Метод возвращает набор узлов вида:

Поле Описание
date Дата отгрузки в формате ГГГГ-ММ-ДД
name Дата отгрузки и день недели для отображения

Отправка корзины в заказ

Операция: basket/order
Метод: POST

Осуществляет отправку позиций, содержащихся в корзине, в заказ. Возвращает статус операции, а так же список созданных заказов со списками позиций в каждом из них. Внимание! При отправке заказа могут возникнуть ошибки, при этом, часть позиций могут отправиться. Следовательно, независимо от статуса выполнения операции, необходимо проверять узел orders на наличие сформированных заказов.

Внимание изменения с 10 августа 2017! Параметр shipmentAddress становится обязательным для заполнения. Получить идентификатор адреса доставки можно с помощью операции basket/shipmentAddresses, если она не возвращает никаких значений, то shipmentAddress - является необязательным параметром. Если не используете доставку на адрес, а пользуетесь самовывозом, то необходимо передать shipmentAddress=0.

Внимание изменения с 09 июля 2018! Параметр shipmentDate становится обязательным, если Вы используете функционал "Дни отгрузки"(опция "Корзина: показывать дату отгрузки").

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
paymentMethod Идентификатор способа оплаты.
shipmentMethod Идентификатор способа доставки.
shipmentAddress Идентификатор адреса доставки.
shipmentOffice Идентификатор офиса самовывоза
shipmentDate Дата отгрузки.
comment Комментарий к заказу.
basketId Необязательный параметр - идентификатор корзины при использовании мультикорзины

Пример запроса

http://api.demo.abcp.ru/basket/order

Параметры POST

userlogin=username&userpsw=md5pass&paymentMethod=37&shipmentMethod=4323&shipmentAddress=788&shipmentDate=2012-12-21&comment=срочно

Поля ответа

Метод возвращает объект вида:

Поле Описание
status Статус отправки корзины. При возникновении ошибки, параметр примет значение 0, иначе - 1.
errorMessage Текст сообщения об ошибке при статусе 0
orders Список созданных заказов со списком позиций.

Узел orders возвращает набор объектов вида:

Поле Описание
number Номер заказа в портале
status Статус заказа
statusCode Код статуса заказа
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
comment Комментарий к заказу
positions Список позиций заказа.

Узел positions содержит набор объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
code Код детали (уникальный код на сайте).
supplierCode Код поставки.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором!Параметр "itemKey" обязателен для передачи заказа онлайн-поставщику, а также при передаче заказа от франчайзи к ГК
description Описание детали.
quantity Заказываемое количество
price Цена за единицу товара
deadline Срок поставки в часах
deadlineMax Максимальный срок поставки в часах
comment Комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа

Моментальный заказ

Операция: orders/instant
Метод: POST

Объединяет в себе операции basket/add и basket/order то есть, добавляет переданный в параметрах список товаров в корзину и сразу же отправляет их в заказ. У данной операции есть важная особенность - она не учитывает позиции, которые уже лежат в корзине, в заказ они не попадут и останутся в корзине пользователя. Использование данной операции оптимально при автоматическом перезаказе у клиентов платформы ABCP.

Возвращает статус операции, а так же список созданных заказов со списками позиций в каждом из них. Внимание! При отправке заказа могут возникнуть ошибки, при этом, часть позиций могут отправиться. Следовательно, независимо от статуса выполнения операции, необходимо проверять узел orders на наличие сформированных заказов.

Внимание изменения с 10 августа 2017! Параметр shipmentAddress становится обязательным для заполнения. Получить идентификатор адреса доставки можно с помощью операции basket/shipmentAddresses, если она не возвращает никаких значений, то shipmentAddress - является необязательным параметром. Если не используете доставку на адрес, а пользуетесь самовывозом, то необходимо передать shipmentAddress=0.

Внимание изменения с 09 июля 2018! Параметр shipmentDate становится обязательным, если Вы используете функционал "Дни отгрузки"(опция "Корзина: показывать дату отгрузки").

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
positions Набор добавляемых деталей в формате brand - number - itemKey - supplierCode или code с указанием добавляемого количества в поле quantity и комментария к позиции в поле comment
paymentMethod Идентификатор способа оплаты.
shipmentMethod Идентификатор способа доставки.
shipmentAddress Идентификатор адреса доставки.
shipmentOffice Идентификатор офиса самовывоза
shipmentDate Дата отгрузки.
comment Комментарий к заказу.

Пример запроса

http://api.demo.abcp.ru/orders/instant


Параметры POST

userlogin=username&userpsw=md5pass&positions[0][number]=01089&positions[0][brand]=Febi&positions[0][supplierCode]=54325&positions[0][itemKey]=HFGJKfkdjghreiHJhfdjKhjskhfk&positions[0][quantity]=15&positions[1][number]=333305&positions[1][brand]=Kyb&positions[1][supplierCode]=87654&positions[1][itemKey]=HjfdksahGHHfsfkdjslajfnmra&positions[1][quantity]=4&positions[1][comment]=срочно!!!&paymentMethod=37&shipmentMethod=4323&shipmentAddress=788&shipmentDate=2012-12-21&comment=срочно
или
userlogin=username&userpsw=md5pass&positions[0][code]=FE01089&positions[0][quantity]=15&positions[0][itemKey]=HFGJKfkdjghreiHJhfdjKhjskhfk&positions[1][code]=KY333305&positions[1][quantity]=4&positions[1][itemKey]=HjfdksahGHHfsfkdjslajfnmra&positions[1][comment]=срочно!!!&paymentMethod=37&shipmentMethod=4323&shipmentAddress=788&shipmentDate=2012-12-21&comment=срочно


Поля ответа

Метод возвращает объект вида:

Поле Описание
status Статус отправки корзины. При возникновении ошибки, параметр примет значение 0, иначе - 1.
errorMessage Текст сообщения об ошибке при статусе 0
orders Список созданных заказов со списком позиций.

Узел orders содержит набор объектов вида:

Поле Описание
number Номер заказа в портале
status Статус заказа
statusCode Код статуса заказа
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
comment Комментарий к заказу
positions Список позиций заказа.

Узел positions содержит набор объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
code Код детали (уникальный код на сайте).
supplierCode Код поставки.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором!Параметр "itemKey" обязателен для передачи заказа онлайн-поставщику, а также при передаче заказа от франчайзи к ГК
description Описание детали.
quantity Заказываемое количество
price Цена за единицу товара
deadline Срок поставки в часах
deadlineMax Максимальный срок поставки в часах
comment Комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа

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

Операция: orders/list
Метод: GET

Принимает список номеров заказов. Осуществляет получение статусов заказов и позиций внутри. Возвращает список заказов со списком позиций в каждом из них.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
orders список номеров заказов

Пример запроса

http://api.demo.abcp.ru/orders/list?userlogin=username&userpsw=md5pass&orders[0]=5642365&orders[1]=8765875

Поля ответа

Метод возвращает массив объектов вида:

Поле Описание
number Номер заказа в портале
status Статус заказа
statusId Идентификатор статуса заказа уникальный в рамках всей системы
statusCode Код статуса заказа
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
debt Долг по оплате заказа
comment Комментарий к заказу
positions Список позиций заказа.

Узел positions содержит массив объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
code Код детали (уникальный код на сайте).
supplierCode Код поставки.
itemKey Код позиции. Внимание! Не является уникальным идентификатором! Параметр "itemKey" обязателен для передачи заказа онлайн-поставщику, а также при передаче заказа от франчайзи к ГК.
description Описание детали.
quantityOrdered Заказываемое количество
quantity Итоговое количество
price Цена за единицу товара
deadline Срок поставки в часах
deadlineMax Максимальный срок поставки в часах
comment Комментарий к позиции
status Статус позиции заказа
statusId Идентификатор статуса позиции заказа уникальный в рамках всей системы
statusCode Код статуса позиции заказа

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

Операция: orders/
Метод: GET

Осуществляет получение списка всех заказов клиента по страницам. Сортировка по номеру заказа по убыванию, т.е. сначала передаются самые новые заказы.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
format (необязательный) - формат вывода результата. По умолчанию отображается информация только по заказам. При значении p - к заказам добавляется информация по всем позициям.
skip (необязательный) - кол-во заказов, которые нужно пропустить. По умолчанию - 0.
limit (необязательный) - кол-во заказов, которые нужно отобразить за один раз. Допускается любое значение от 1 до 1000. По умолчанию - 100.

Примеры запросов

http://api.demo.abcp.ru/orders/?userlogin=username&userpsw=md5pass
http://api.demo.abcp.ru/orders/?userlogin=username&userpsw=md5pass&format=p&skip=10&limit=20

Поля ответа

Метод возвращает данные вида:

Поле Описание
count Кол-во всех заказов
items Массив с заказами

Свойства заказа:

Поле Описание
number Номер заказа в портале
status Статус заказа
statusCode Код статуса заказа
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
debt Долг по оплате заказа
comment Комментарий к заказу
positions Список позиций заказа (если параметр format имеет значение p)

Узел positions содержит массив объектов вида:

Поле Описание
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
code Код детали (уникальный код на сайте).
supplierCode Код поставки.
itemKey Код позиции. Внимание! Не является уникальным идентификатором! Параметр "itemKey" обязателен для передачи заказа онлайн-поставщику, а также при передаче заказа от франчайзи к ГК.
description Описание детали.
quantityOrdered Заказываемое количество
quantity Итоговое количество
price Цена за единицу товара
deadline Срок поставки в часах
deadlineMax Максимальный срок поставки в часах
comment Комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа

Пользователи

Регистрация пользователя

Операция: user/new
Метод: POST

Принимает параметры для регистрации пользователя. Осуществляет регистрацию нового пользователя в системе. Возвращает статус выполнения операции регистрации, учетные данные нового пользователя, а так же сообщение об ошибке в случае возникновения таковой. Регистрация через API запрещена при использовании модуля франчайзи, если выключен флаг "Головная компания (ГК) участвует в продажах".

Параметры запроса

Параметр Описание
marketType Тип регистрации:
  1. Розница
  2. Опт
filialId Код филиала (если имеются)
name Имя
secondName Отчество
surname Фамилия
password Пароль
birthDate Дата рождения, формат YYYY-MM-DD
mobile Номер мобильного телефона
memberOfClub Название автоклуба
office Идентификатор офиса
email Адрес электронной почты
icq ICQ UIN
skype Skype
regionId Код региона
city Город
organizationName Наименование организации
business Тип организации. Значение от 1 до 3:
  1. Автосервис
  2. Автомагазин
  3. Собственный автопарк
organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
deliveryAddress Адрес доставки
comment Комментарий

Пример запроса

http://api.demo.abcp.ru/user/new

Параметры POST

marketType=1&name=Василий&surname=Васильев&password=12345&mobile=79000000000&email=vasya@mail.ru&regionId=77&city=Москва&deliveryAddress=ул. Ленина, д.2&comment=

Поля ответа

Поле Описание
status Статус выполнения операции
userCode Внутренний код пользователя. Необходим для активации.
activationCode Код активации, если включена
errorMessage Массив сообщений об ошибках, если статус = 0

Упрощенная регистрация пользователя

Операция: user/new/instant
Метод: POST

Принимает параметры для регистрации пользователя. Осуществляет регистрацию нового пользователя в системе. При успешной регистрации на указанный номер телефона отправляется SMS-сообщение с паролем. Тип магазина выставляется в соответствии со значением опции Тип магазина (по умолчанию)

Параметры запроса

Параметр Описание
name Имя
mobile Номер мобильного телефона
phone (устарел) (Не используется, значение этого параметра заменяется на mobile)
email Адрес электронной почты (необязательный)

Пример запроса

http://api.demo.abcp.ru/user/new/instant

Параметры POST

name=Василий&phone=79000000000&email=vasya@mail.ru

Поля ответа

Поле Описание
userCode Внутренний код пользователя.
errorCode Код ошибки
errorMessage Сообщение ошибки

Активация пользователя

Операция: user/activation
Метод: POST

Параметры запроса

Параметр Описание
userCode Внутренний код пользователя.
activationCode Код активации

Пример запроса

http://api.demo.abcp.ru/user/activation


Параметры POST

userlogin=username&userpsw=md5pass&code=567ab097bcd

Метод возвращает набор узлов вида:

Поле Описание
status Статус активации.
errorMessage Сообщение об ошибке при статусе = 0

Получение данных пользователя (авторизация)

Операция: user/info
Метод: GET

Возвращает данные пользователя по логину и паролю.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе

Пример запроса

http://api.demo.abcp.ru/user/info?userlogin=username&userpsw=md5pass

Метод возвращает набор узлов вида:

Поле Описание
id Идентификатор пользователя в системе ABCP.
code Код пользователя.
email Адрес электронной почты пользователя.
name ФИО или название организации
mobile Мобильный телефон
organization Наименование юридического лица

Формы

Получение списка полей формы

Операция: form/fields
Метод: GET

Возвращает список полей формы и все параметры в соответствии с установленными настройками в панели управления на странице Внешний вид и контент / Формы. На текущий момент доступны только формы регистрации, реализованные в API-методе user/new. Метод не требует авторизации.

Параметры запроса

Параметр Описание
name Имя формы. Возможные значения: registration_wholesale - опт; registration_retail - розница
locale Локаль формы (по умолчанию, ru_RU)

Пример запроса

http://api.demo.abcp.ru/form/fields?name=registration_retail&locale=ru_KZ

Метод возвращает массив объектов вида:

Поле Описание
name Имя поля. Соответствует имени поля в соответствующем API-методе.
label Метка поля на языке локали. Название поля в форме.
isRequired Флаг "Обязательное поле".
errorMessage Текстовое сообщение на языке локали, которое будет показано при некорректном заполнении поля.

Артикулы

Получение справочника брендов

Операция: articles/brands
Метод: GET

Возвращает список всех брендов зарегистрированных в системе с их синонимами.

Параметры запроса

Параметр Описание
userlogin Имя пользователя
userpsw md5-хэш пароля пользователя


Пример запроса

http://api.demo.abcp.ru/articles/brands?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
name Имя бренда
aliases Массив, содержащий список синонимов текущего бренда

Получение карточки товара

Операция: articles/info
Метод: GET

vertical-align:middle;
Информация
Данная операция доступна только API-администратору

Возвращает данные по указанному в параметрах товару

Параметры запроса

Параметр Описание
userlogin Имя пользователя
userpsw md5-хэш пароля пользователя
brand Имя производителя
number Код детали
format Формат ответа. Допустимые значения: [b][n][p][c][h][m][t][i] - формат вывода информации (b - бренд, n - номер, p - свойства, c - кроссы, h - свойства с учетом локали, m - информация о модели, t - вывод типа кроссов с учетом направления, i - изображения запчасти).
cross_image При передаче cross_image=1 и [i] в параметре format в ответе операции будут выводиться изображения кроссов.
source Источник кроссов. Необязательный параметр. Через него передается массив со списком источников, в которых нужно искать кроссы.
standard - Кроссы с достоверностью 99.9 % ;
common- Кроссы с достоверностью 95%;
common_cat - Кроссы нескольких неоригинальных каталогов.
Если параметр не передается, то в ответе выводятся все источники, подключенные в ПУ
пример: &source[]=standard&source[]=common
with_original Признак кроссирования через оригинал. Необязательный параметр. Через него передается массив со списком источников, в которых используется кроссирование через оригинал. Работает данный параметр только при ручном указании источников кроссов (source). Если его не передавать то в ответе нет кроссов через оригинал по указанным источникам.

Если указать данный параметр без указания конкретных источников - в ответе получаем текст "Для получения аналогов через оригинал обязательно указывайте источники кроссов".
пример: &with_original[]=standard&with_original[]=common

locale Локаль. Задается в формате language[_territory], например, ru_RU. Это же значение используется по умолчанию.


Пример запроса

http://api.demo.abcp.ru/articles/info?userlogin=username&userpsw=md5pass&brand=Febi&number=01089&format=bnpic

Метод возвращает массив объектов вида:

Параметр Описание
brand Имя производителя
number Искомый номер детали
outer_number Номер детали, содержащий пробелы, слэши и другие символы.
properties Массив свойств детали: описание, вес, объем и т.п. (при включенном формате p)
crosses Массив информации об аналогах (при включенном формате c).
images Массив изображений товара (при включенном формате i). В массиве указаны имена файлов расположенных по адресу http://pubimg.4mycar.ru/images/

Получение данных каталога TecDoc

Для доступа к TecDoc API используется адрес tecdoc3.api.abcp.ru

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

Операция: manufacturers
Метод: GET

Осуществляет получение справочника производителей. Возвращает список производителей автомобилей.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
carType тип автомобилей (необязательный параметр): "1" - легковые, "2" - грузовые, "3" - Малотоннажные, "4" - Моторы;
motorcyclesFilter фильтрация по производителя мотоциклов (необязательный параметр): "0" - не фильтровать (по умолчанию), "1" - только производители авто, "2" - только мотоциклы;

Пример запроса

http://tecdoc.api.abcp.ru/manufacturers?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор
name Название бренда производителя

Получение списка моделей

Операция: models
Метод: GET

Осуществляет получение списка моделей. Возвращает список моделей автомобилей для выбранного производителя.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
manufacturerId идентификатор производителя
carType тип автомобилей (необязательный параметр, по умолчанию все): "1" - легковые, "2" - грузовые, "3" - Малотоннажные

Пример запроса

http://tecdoc.api.abcp.ru/models?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&manufacturerId=139

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор
name Название модели автомобиля
yearFrom год-месяц в формате ГГГГММ начала выпуска модели
yearTo год-месяц в формате ГГГГММ окончания выпуска модели

Получение списка модификаций

Операция: modifications
Метод: GET

Осуществляет получение списка модификаций. Возвращает список модификаций для выбранной модели автомобиля.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
manufacturerId идентификатор производителя
modelId идентификатор модели
carType тип автомобилей (необязательный параметр, по умолчанию все): "1" - легковые, "2" - грузовые

Пример запроса

http://tecdoc.api.abcp.ru/modifications?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&manufacturerId=16&modelId=5389

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор модификации
name Название модификации склеенное из manufacturerName modelName и modificationName через пробел
modificationName Название модификации
modelId Идентификатор модели
modelName Название модели
manufacturerId Идентификатор производжителя
manufacturerName Название производителя
yearFrom год-месяц в формате ГГГГММ начала выпуска модификации
yearTo год-месяц в формате ГГГГММ окончания выпуска модификации
constructionType форма кузова
brakeSystem тормозная система
cylinder количество цилиндров
cylinderCapacityCcm рабочий обьем в кубических сантиметрах
cylinderCapacityLiter рабочий обьем в литрах
fuelType вид топлива
fuelTypeProcess подготовка топлива
impulsionType тип привода
motorType вид двигателя
motorCodes коды двигателей
powerHP мощность в л/c
powerKW мощность в кВт
tonnage тоннаж
valves количество клапанов на цилиндр

Получение модификации по идентификатору

Операция: modification
Метод: GET

Осуществляет получение модификации. Возвращает модификацию.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
modelVariant идентификатор модификации

Пример запроса

http://tecdoc.api.abcp.ru/modification?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&modelVariant=1157

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор модификации
name Название модификации склеенное из manufacturerName modelName и modificationName через пробел
modificationName Название модификации
modelId Идентификатор модели
modelName Название модели
manufacturerId Идентификатор производжителя
manufacturerName Название производителя
yearFrom год-месяц в формате ГГГГММ начала выпуска модификации
yearTo год-месяц в формате ГГГГММ окончания выпуска модификации
constructionType форма кузова
brakeSystem тормозная система
cylinder количество цилиндров
cylinderCapacityCcm рабочий обьем в кубических сантиметрах
cylinderCapacityLiter рабочий обьем в литрах
fuelType вид топлива
fuelTypeProcess подготовка топлива
impulsionType тип привода
motorType вид двигателя
motorCodes коды двигателей
powerHP мощность в л/c
powerKW мощность в кВт
tonnage тоннаж
valves количество клапанов на цилиндр

Получение дерева категорий

Операция: tree
Метод: GET

Осуществляет получение дерева категорий. Возвращает дерево категорий для выбранной модификации автомобиля.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
modificationId идентификатор модификации
carType тип автомобилей (необязательный параметр): "1" - легковые (по умолчанию), "2" - грузовые, "3" - Малотоннажные, "4" - Моторы

Пример запроса

http://tecdoc.api.abcp.ru/tree?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&modificationId=27555

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор категории
name Название категории
hasChilds Признак наличия дочерних категорий
parentId Идентификатор родительской категории

Получение списка деталей для категории

Операция: articles
Метод: GET Осуществляет получение списка деталей для указанной категории. Возвращает список деталей для указанной категории.

Данная операция не рекомендуется к использованию и имеет ряд ограничений. В качестве замены предлагаем воспользоваться операцией articlesSimplified

Ограничения для операции:

  • Количество деталей в узле не может превышать 200 даже если фактически их больше
  • В запросе должен быть передан один из параметров brandNames или categoryId

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
categoryId идентификатор категории (необязательное поле)
brandNames название брендов в виде массива (необязательное поле)
userkey Ключ для доступа к api
modificationId идентификатор модификации

Пример запроса

http://tecdoc.api.abcp.ru/articles?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&categoryId=1&modificationId=27555

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор детали
number Номер детали
articleLinkId Идентификатор связанной детали
description Описание детали
addName Дополнительное название
brandName Название бренда
state Идентификатор типа детали (1-нормальная деталь, 7-псевдо-изделие и т.п.)
stateName Название типа детали (деталь, псевдо-изделие и т.п.)
genericArticleId Идентификатор группы товара
info Иформация о товаре
attributes Параметр товара (длина, ширина, вес и т.п.)
mainArticle Основные детали, если свойство содержит элементы, значит текущая деталь является псевдодеталью.
documents Изображения (картинки, pdf-ки)
oenNumbers Массив с оригинальными номерами
eanNumber Штрих-код


Узел mainArticle содержит массив объектов вида:

Поле Описание
articleId Идентификатор детали
name Название
addName Дополнительно название
number Номер детали

Узел info содержит массив объектов вида:

Поле Описание
id Идентификатор информации
text Текстовое описание
typeId Идентификатор типа
typeName Название типа

Узел attributs содержит массив объектов вида:

Поле Описание
id Идентификатор
isConditional Признак условия
isInterval Признак интервала
name Полное название параметра
shortName Короткое название параметра
type Тип значения параметра (A: Буквенно-цифровой, D: Дата, К: Ключ, N: Числовой, V: Без значения
unit Единица измерения
value Значение

Узел documents содержит массив объектов вида:

Поле Описание
id Идентификатор
fileType Тип файла (например, image/jpeg)
data Данные

Узел oenNumbers содержит массив объектов вида:

Поле Описание
blockNumber Номер блока (порядковый номер)
brandName Название бренда
oeNumber Оригинальный OE-номер
sortNumber Индекс сортировки

Получение списка деталей для категории, упрощенный

Операция: articlesSimplified
Метод: GET

Осуществляет получение списка деталей для указанной категории. Возвращает список деталей для указанной категории.

Отличия от операции articles

  • Изображения берутся из базы платформы abcp.
  • Сокращено количество свойств в ответе.
  • Снято ограничение на 50 позиций в узле.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
categoryId идентификатор категории
modificationId идентификатор модификации

Пример запроса

http://tecdoc.api.abcp.ru/articlesSimplified?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&categoryId=1&modificationId=27555

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор детали
brandName Название бренда
number Номер детали
articleLinkId Идентификатор связанной детали
description Описание детали
imageName Имя изображения
imageUrl Ссылка на изображение

Получение списка применимости

Получение списка применимости проходит в три этапа, первый этап получение производителей adaptabilityManufacturers затем adaptabilityModels и в завершении adaptabilityModifications операция получения модификаций.
Операция: adaptabilityManufacturers
Метод: GET

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

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
number Номер детали
brandName Бренд детали

Пример запроса

http://tecdoc.api.abcp.ru/adaptabilityManufacturers?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&brandName=febi&number=01089

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор производителя
name Название производителя

Операция: adaptabilityModels
Метод: GET

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

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
number Номер детали
brandName Бренд детали
manufacturerName Название производителя

Пример запроса

http://tecdoc.api.abcp.ru/adaptabilityModels?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&brandName=febi&number=01089&manufacturerName=audi

Метод возвращает массив строк, содержащий названия моделей


Операция: adaptabilityModifications
Метод: GET

Возвращает список модификаций, применимых для выбранной детали производителя и модели.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
number Номер детали
brandName Бренд детали
manufacturerName Название производителя
modelName Название модели

Пример запроса

http://tecdoc.api.abcp.ru/adaptabilityModifications?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&brandName=febi&number=01089&manufacturerName=audi&modelName=75

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
name Название производителя
manufacturerName Название производителя
modelName Название модели
yearFrom год-месяц в формате ГГГГММ начала выпуска модификации
yearTo год-месяц в формате ГГГГММ окончания выпуска модификации
constructionType форма кузова
brakeSystem тормозная система
cylinder количество цилиндров
cylinderCapacityCcm рабочий обьем в кубических сантиметрах
fuelType вид топлива
fuelTypeProcess подготовка топлива
impulsionType тип привода
motorType вид двигателя
motorCodes массив объектов motorCode с кодами двигателей
powerHP мощность в л/c
powerKW мощность в кВт
tonnage тоннаж
valves количество клапанов на цилиндр

Получение списка брендов

Операция: brands
Метод: GET

Возвращает список производителей автозапчастей.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api

Пример запроса

http://tecdoc.api.abcp.ru/brands?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор бренда
name Название бренда

Получение списка настоящих номеров

Операция: realNumberArticles
Метод: GET

Возвращает список деталей по идентификатору псевдо-детали

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
articleId Идентификатор детали

Пример запроса

http://tecdoc.api.abcp.ru/realNumberArticles?userlogin=USER_LOGIN&userpsw=USER_PSW&userkey=USER_KEY&articleId=123

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
id Идентификатор детали
number Номер детали
description Описание
addName Дополнительное название детали
brandId Идентификатор бренда
brandName Название бренда
state Состояние
stateName Название состояния
genericArticleId Идентификатор детали
attributes Список атрибутов детали

Узел attributes содержит массив объектов вида:

Поле Описание
id Идентификатор
isConditional Признак условия
isInterval Признак интервала
name Полное название параметра
shortName Короткое название параметра
type Тип значения параметра (A: Буквенно-цифровой, D: Дата, К: Ключ, N: Числовой, V: Без значения
unit Единица измерения
value Значение

Получение связанных атрибутов детали

Операция: assignedArticleAttributes
Метод: POST

Возвращает список дополнительных атрибутов детали

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
userkey Ключ для доступа к api
articleIdPairs пары из идентификаторов детали и связанной детали в виде ассоциативного массива с ключами articleId и articleLinkId соответственно
manufacturerId Идентификатор производителя
modelId Идентификатор модели
modificationId Идентификатор модификации

Поля ответа Метод возвращает массив объектов вида:

Поле Описание
articleId Идентификатор детали
articleLinkId Идентификатор связанной детали
attributes Список атрибутов

Узел attributes содержит массив объектов вида:

Поле Описание
id Идентификатор
isConditional Признак условия
isInterval Признак интервала
name Полное название параметра
shortName Короткое название параметра
type Тип значения параметра (A: Буквенно-цифровой, D: Дата, К: Ключ, N: Числовой, V: Без значения
unit Единица измерения
value Значение

Административный интерфейс

Все методы в данном разделе доступны только специальному пользователю со статусом API-администратор. Для получения учетных данных авторизации Вам необходимо отправить заявку в техническую поддержку.

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

Как узнать statusCode для статусов на сайте?

  1. через специальную операцию "Получение списка статусов", где id и есть тот самый statusCode
  2. в ПУ на странице Настройки/Статусы открыть на редактирование интересующий статус. statusCode будет в строке адреса после &edit=
Получение информации о заказе

Операция: cp/order
Метод: GET

Принимает в качестве параметра онлайн-номер заказа. Возвращает информацию о заказе (в т.ч. список позиций заказа).

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
number Онлайн-номер заказа
format Формат ответа. Доступные значения: additional - к заказу будет дописан массив additional, содержащий данные клиента при гостевом заказе.

Пример запроса

http://api.demo.abcp.ru/cp/order?userlogin=username&userpsw=md5pass&number=75892367

Метод возвращает объект вида:

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте
userName Имя клиента
userFullName Имя организации
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
comment Комментарий к заказу
debt Долг по оплате заказа
dateUpdated Дата обновления
profileId Идентификатор профиля клиента сделавшего заказ
deliveryAddressId Идентификатор адреса доставки
deliveryAddress Адрес доставки
deliveryOfficeId Идентификатор офиса самовывоза
deliveryOffice Офис самовывоза
deliveryTypeId Идентификатор типа доставки
deliveryType Тип доставки
paymentTypeId Идентификатор типа оплаты
paymentType Тип оплаты
deliveryCost Стоимость доставки
shipmentDate Дата отгрузки
basketId Идентификатор корзины
basketName Название корзины
managerId id менеджера , если заказ был создан менеджером
userCode Внутренний код пользователя
positions Список позиций заказа.

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
routeId Идентификатор маршрута склада с которого производится заказ.
distributorId Идентификатор поставщика с которого производится заказ.
distributorName Имя поставщика с которого производится заказ.
distributorOrderId Если был выполнен перезаказ у поставщика средствами платформы ABCP, данное поле будет содержать номер заказа у поставщика.
supplierCode Код поставки. Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
itemKey Код позиции. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое количество
priceIn Цена закупки за единицу товара
priceOut Цена продажи за единицу товара
priceRate Курс перевода цены в валюту сайта
priceInSiteCurrency Цена ПРОДАЖИ в валюте сайта
currencyInId Идентификатор валюты покупки (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
currencyOutId Идентификатор валюты продажи (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа
isCanceled Флаг "Запрос на удаление позиции"
dateUpdated Дата обновления
lineReference Дополнительная информация
weight Вес товара
articleCode Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С
Сохранение заказа

Операция: cp/order
Метод: POST

Универсальный метод сохранения. Принимает в качестве параметра объект описывающий заказ.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
order Объект описывающий заказ

Объект описывающий заказ содержит следующие поля

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Внутренний номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте, для которого создается заказ
date Дата заказа
comment Комментарий к заказу
deliveryTypeId Тип доставки
deliveryOfficeId Идентификатор офиса самовывоза
basketId Необязательный параметр - идентификатор корзины при использовании мультикорзины
positions Список позиций заказа.

Если передан онлайн-номер, заказ будет отредактирован. Если передан внутренний номер заказа в учетной системе, портал попробует найти заказ с этим номером и при наличии отредактирует его, иначе - создаст новый заказ. Если не передан ни онлайн-номер, ни внутренний номер, метод вернет ошибку. В случае редактирования, все поля кроме number или internalNumber являются необязательными - указанные будут изменены. В случае создания нового заказа, поля internalNumber, userId, date и positions являются обязательными. Параметр userId будет использоваться только при создании заказа, при редактировании будет проигнорирован (сменить владельца заказа невозможно).

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
number Номер детали (код производителя).
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое количество
priceIn Цена закупки за единицу товара
priceOut Цена продажи за единицу товара
priceRate Курс перевода цены в валюту сайта
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
routeId Идентификатор маршрута склада с которого производится заказ. Значение нужно брать из поля supplierCode операции поиска search/articles
supplierCode Код склада поставщика. Его необходимо указывать только при редактировании заказа, если вы хотите его переопределить. В иных случаях значение заполняется автоматически на основе переданного itemKey. При создании заказа параметр передавать не нужно. Если в имеющемся заказе значение будет пустым, то такую позицию нельзя будет отправить в заказ онлайн поставщику.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции, "Ваш ответ"
statusCode Код статуса позиции заказа
articleCode Внутренний код детали
delete если передать значение 1, позиция будет удалена, в остальных случаях устанавливать не надо.

В случае редактирования заказа, могут быть указаны только позиции и поля, которые требуют изменения. В случае создания заказа, должны быть указаны все позиции со всеми полями (кроме полей comment, supplierCode и itemKey). При редактировании позиций обязательна передача параметра id. Если параметр id не передан, будет добавлена новая позиция. При добавлении позиции все поля (кроме полей comment, supplierCode и itemKey) для нее являются обязательными. Для удаления позиции необходимо указать ей количество 0 или установить параметр delete в значение 1.


vertical-align:middle;
Внимание!
Не выполняйте данную операцию параллельно в несколько потоков при создании заказов. В данном варианте использования необходимо выполнять ее только последовательно
vertical-align:middle;
Внимание!
При большом количестве позиций настоятельно рекомендуется сохранять пакетами не более чем по 100 позиций
vertical-align:middle;
Внимание!
Для этой операции существует ограничение на 1000 позиций для одного заказа. При попытке добавить большее количество позиций, операция для этих позиций завершится с ошибкой

Пример запроса

http://api.demo.abcp.ru/cp/order

Параметры POST

userlogin=username&userpsw=md5pass&order[number]=5623478&order[internalNumber]=786593&order[positions][0][statusCode]=15&order[positions][0][id]=653463&order[positions][0][quantity]=10

Метод возвращает объект вида:

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте, для которого создается заказ
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
debt Долг по оплате заказа
comment Комментарий к заказу
dateUpdated Дата обновления
profileId Идентификатор профиля клиента сделавшего заказ
deliveryAddressId Идентификатор адреса доставки
deliveryAddress Адрес доставки
deliveryOfficeId Идентификатор офиса самовывоза
deliveryOffice Офис самовывоза
deliveryTypeId Идентификатор типа доставки
deliveryType Тип доставки
paymentTypeId Идентификатор типа оплаты
paymentType Тип оплаты
deliveryCost Стоимость доставки
managerId id менеджера , если заказ был создан менеджером
userCode Внутренний код пользователя
positions Список позиций заказа.

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
routeId Идентификатор маршрута склада с которого производится заказ.
distributorId Идентификатор поставщика с которого производится заказ.
distributorName Имя поставщика с которого производится заказ.
supplierCode (УСТАРЕЛО используйте для чтения значение dsRouteId) Код склада поставщика.
dsRouteId Код склада поставщика. Если в имеющемся заказе значение будет пустым, то такую позицию нельзя будет отправить в заказ онлайн поставщику.
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое количество
priceIn Цена закупки за единицу товара
priceOut Цена продажи за единицу товара
priceRate Курс перевода цены в валюту сайта
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа
isCanceled Флаг "Запрос на удаление позиции"
dateUpdated Дата обновления
lineReference Дополнительная информация
weight Вес товара
articleCode Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С
currencyInId Идентификатор валюты покупки (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
currencyOutId Идентификатор валюты продажи (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)

При возникновении ошибки в процессе сохранения заказа, помимо ответа с актуальным содержимым текущего заказа, будет возвращен узел errors, содержащий описание возникшей ошибки.

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

Операция: cp/orders
Метод: GET

Принимает в качестве параметров условия фильтрации заказов. Возвращает список заказов (в т.ч. список позиций заказа).

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
dateCreatedStart Начальная дата размещения заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateCreatedEnd Конечная дата размещения заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedStart Начальная дата последнего обновления заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedEnd Конечная дата последнего обновления заказа в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
statusCode Код статус позиции заказа. Будут выбраны заказы содержащие хотя бы одну позицию в данном статусе
distributorOrderId Идентификатор заказа у поставщика. В результате вернутся все заказы которые были отправлены поставщику под этим номером.
isCanceled Флаг "Запрос на удаление позиции".
format Формат ответа. Доступные значения: additional - к заказу будет дописан массив additional, содержащий данные клиента при гостевом заказе.

Если указан только параметр dateCreatedStart/dateUpdatedStart, будут выбраны все заказы начиная с этой даты. При указании фильтра по дате обновления, будут выбраны как новые заказы, так и обновленные, попадающие под действие фильтра.

Пример запроса

http://api.demo.abcp.ru/cp/orders?userlogin=username&userpsw=md5pass&dateUpdatedStart=2013-08-02 00:00:00&statusCode=56233

Метод возвращает массив объектов вида:

Поле Описание
number Онлайн-номер заказа в портале
internalNumber Номер заказа в учетной системе (например, в 1С)
userId Идентификатор клиента на сайте
positionsQuantity Количество позиций
sum Сумма заказа
date Дата заказа
dateUpdated Дата обновления
comment Комментарий к заказу
debt Долг по оплате заказа
profileId Идентификатор профиля клиента сделавшего заказ
deliveryAddressId Идентификатор адреса доставки
deliveryAddress Адрес доставки
deliveryOfficeId Идентификатор офиса самовывоза
deliveryOffice Офис самовывоза
deliveryTypeId Идентификатор типа доставки
deliveryType Тип доставки
paymentTypeId Идентификатор типа оплаты
paymentType Тип оплаты
deliveryCost Стоимость доставки
shipmentDate Дата отгрузки
userName Имя покупателя
userFullName Имя организации
basketId Идентификатор корзины
basketName Название корзины
managerId id менеджера , если заказ был создан менеджером
userCode Внутренний код пользователя
positions Список позиций заказа.

Узел positions содержит массив объектов вида:

Поле Описание
id Уникальный идентификатор позиции в портале
code Код позиции (произвольное значение)
brand Имя производителя.
number Номер детали (код производителя).
numberFix "Очищенный" код детали, содержащий только алфавитные и цифровые символы, и, иногда, знак слеша "/".
routeId Идентификатор маршрута склада с которого производится заказ.
distributorId Идентификатор поставщика с которого производится заказ.
distributorName Имя поставщика с которого производится заказ.
distributorOrderId Если был выполнен перезаказ у поставщика средствами платформы ABCP, данное поле будет содержать номер заказа у поставщика.
supplierCode Код поставки. Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
dsRouteId Маршрут поставщика
itemKey Код позиции. Необходим для добавления товара в корзину. Внимание! Не является уникальным идентификатором! Параметр из результатов search/article. Необходимо указывать при добавлении в заказ товаров от online-поставщиков для возможности дальнейшего перезаказа на сайте поставщика из ПУ.
description Описание детали.
quantity Заказываемое количество
quantityFinal Итоговое заказываемое количество
priceIn Цена закупки за единицу товара
priceOut Цена продажи за единицу товара
priceRate Курс перевода цены в валюту сайта
priceInSiteCurrency Цена ПРОДАЖИ в валюте сайта
currencyInId Идентификатор валюты покупки (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
currencyOutId Идентификатор валюты продажи (1-Российский рубль 2- Евро 3- Доллар США 4- Гривна Украины 5- Литовский лит 6- Белорусский рубль (до 1 июля 2016) 7- Казахстанский тенге 8- Латвийский лат 9- Японская иена 10- Китайский юань 11- Армянский драм 12- Киргизский сом 13- Азербайджанский манат 14- Белорусский рубль)
deadline Срок поставки в часах
deadlineMax Гарантированный срок поставки в часах
comment Комментарий к позиции
commentAnswer Ответ на комментарий к позиции
status Статус позиции заказа
statusCode Код статуса позиции заказа
isCanceled Флаг "Запрос на удаление позиции"
dateUpdated Дата обновления
lineReference Дополнительная информация
weight Вес товара
articleCode Внутренний код детали (присутствует только при условии что код выгружается в прайсе поставщика), используется как правило для синхронизации с 1С

Финансовая информация

Обновление баланса клиента

Операция: cp/finance/userBalance
Метод: POST

Изменяет баланс клиента. Принимает в качестве параметра текущий баланс пользователя (float) в валюте сайта и идентификатор пользователя на сайте. Идентификатор пользователя - это уникальное значение для всей системы, которое может не совпадать со значением поля "Код клиента" в карточке клиента. Узнать его можно, либо из URL карточки клиента, например, http://cp.abcp.ru/?page=customers&customerId=353169&action=editCustomer - в данном случае идентификатор клиента это значение параметра customerId, а именно, 353169; либо, при использовании синхронизации пользователей с помощью операции GET cp/users, идентификатор пользователя возвращается в поле userId.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте, для которого обновляется баланс.
balance Значение баланса в валюте сайта
inStopList Признак нахождения клиента в стоп-листе (необязательный параметр)

Пример запроса

http://api.demo.abcp.ru/cp/finance/userBalance

Параметры POST

userlogin=username&userpsw=md5pass&userId=5623478&balance=189.19

В случае успешного обновления баланса, метода возвращает актуальное значение баланса:

Поле Описание
userId Идентификатор клиента на сайте.
balance Текущий баланс клиента.
inStopList Признак нахождения клиента в стоп-листе
Обновление лимита кредита клиента

Операция: cp/finance/creditLimit
Метод: POST

Изменяет лимит кредита клиента. Принимает в качестве параметра текущий лимит кредита пользователя (float) в валюте сайта и идентификатор пользователя на сайте.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте, для которого обновляется баланс.
creditLimit Значение лимита кредита в валюте сайта

Пример запроса

http://api.demo.abcp.ru/cp/finance/creditLimit

Параметры POST

userlogin=username&userpsw=md5pass&userId=5623478&creditLimit=10000

В случае успешного обновления баланса, метода возвращает актуальное значение лимита кредита:

Поле Описание
userId Идентификатор клиента на сайте.
creditLimit Значение лимита кредита в валюте сайта
Обновление финансовой информации клиента

Операция: cp/finance/userInfo
Метод: POST

Изменяет финансовую информацию клиента. Принимает в качестве параметров идентификатор пользователя на сайте и финансовую информацию пользователя.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте, для которого обновляется баланс
balance Текущий баланс клиента
creditLimit Значение лимита кредита в валюте сайта
inStopList Признак нахождения клиента в стоп-листе
payDelay Отсрочка платежа(в днях)
overdueSaldo Просроченный баланс

Обязательно наличие как минимум одного из полей (balance, creditLimit, inStopList, payDelay, overdueSaldo).

Пример запроса

http://api.demo.abcp.ru/cp/finance/userInfo

Параметры POST

userlogin=username&userpsw=md5pass&userId=5623478&balance=10000&creditLimit=2000&inStopList=0&payDelay=4&overdueSaldo=6500

В случае успешного обновления, метод возвращает актуальное значение финансовой информации пользователя:

Поле Описание
userId Идентификатор клиента на сайте
balance Текущий баланс клиента
creditLimit Значение лимита кредита в валюте сайта
inStopList Признак нахождения клиента в стоп-листе
payDelay Отсрочка платежа(в днях)
overdueSaldo Просроченный баланс
stoplistDateTime Дата попадания в стоп-лист
Получение информации об оплатах из финмодуля

Операция: cp/finance/payments
Метод: GET

Возвращает список оплат из финмодуля.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя на сайте
paymentNumber Номер платежа
createDateTimeStart Начальный порог даты создания платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
createDateTimeEnd Конечный порог даты создания платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС

Параметры paymentNumber, userId необязательные. Если указан paymentNumber, то createDateTimeStart и createDateTimeEnd могут не указываться. Если интервал дат выбран больше года, то в ответе получаем ошибку "Сократите диапазон дат и выполните запрос снова. Диапазон не должен превышать 1 год."

Пример запроса

http://api.demo.abcp.ru/cp/finance/payments?userlogin=username&userpsw=md5pass&userId=5623478&paymentNumber=НАЛ00032


Метод возвращает массив объектов вида:

Поле Описание
paymentNumber номер платежа
paymentTypeId id типа платежа
createDateTime дата платежа
paymentType Тип платежа
paymentTypeCode Код типа платежа: 0 - Безналичный, 1 - Электронный, 2 - Наличный
amount сумма платежа
rest остаток
editorId id сотрудника,кем платеж был внесен/изменен.Если платеж был внесен автоматически (электронный) то значение параметра "0"
userId Идентификатор клиента на сайте
сomment комментарий к платежу
onlinePaymentId ID онлайн-оплаты
Получение информации привязках платежей из финмодуля

Операция: cp/finance/paymentOrderLinks
Метод: GET

Возвращает список привязок платежей из финмодуля.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
paymentNumbers массив с номерами платежей
orderIds массив с номерами заказов
userId Идентификатор пользователя на сайте
DateTimeStart Начальный порог даты создания привязки формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
DateTimeEnd Конечный порог даты создания привязки формат ГГГГ-ММ-ДД ЧЧ:ММ:СС

При запросе указывать либо paymentNumbers либо orderIds либо userId с DateTimeStart и DateTimeEnd.

Пример запроса

http://api.demo.abcp.ru/cp/finance/paymentOrderLinks?userlogin=username&userpsw=md5pass&paymentNumbers[]=НАЛ00032


Метод возвращает массив объектов вида:

Поле Описание
paymentLinkId id привязки платежа
paymentId id платежа
createDateTime дата/время создания привязки платежа формат ГГГГ-ММ-ДД ЧЧ:ММ:СС
orderId номер заказа (если номер заказа "0" - значит это Возврат средств)
amount сумма платежа
editorId id сотрудника, добавившего привязку. Если параметр равен "0", то привязка автоматическая.
paymentNumber номер платежа из ПУ в виде "НАЛ00010"

В запросе возможно фильтровать по paymentId или orderId с возможностью передавать массив платежей или заказов.

Пользователи

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

Операция: cp/users
Метод: GET

Принимает в качестве параметров условия фильтрации клиентов. Возвращает список клиентов.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
dateRegistredStart Начальная дата регистрации в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateRegistredEnd Конечная дата регистрации в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedStart Начальная дата последнего обновления в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
dateUpdatedEnd Конечная дата последнего обновления в формате ГГГГ-ММ-ДД ЧЧ:мм:СС
state Состояние клиента. Значения:

-1 - отклоненный,
0 - ожидает регистрации,
1 - зарегистрированный,
2 - удаленный.

customerStatus Идентификатор статуса покупателя, если указать 0 - будут выбраны пользователи без статуса
customersIds Массив идентификаторов покупателей
marketType Тип регистрации. Значение от 1 до 2:
1 - Розница
2 - Опт
safeMode "Безопасный режим" для клиентов не имеющих поддержки формата JSON. Может принимать значения 0 или 1. При включении (1), адреса доставки в ответе будут возвращаться в виде массива объектов с полями "id" и "name", а не как "ключ - значение".

Если указан только параметр dateRegistredStart/dateUpdatedStart, будут выбраны все пользователи, зарегистрированные начиная с этой даты. При указании фильтра по дате обновления, будут выбраны как новые пользователи, так и обновленные, попадающие под действие фильтра.

Пример запроса

http://api.demo.abcp.ru/cp/users?userlogin=username&userpsw=md5pass&dateUpdatedStart=2013-08-02 00:00:00&state=0
 или
http://api.demo.abcp.ru/cp/users?userlogin=username&userpsw=md5pass&customersIds[]=574823&customersIds[]=86954&customersIds[]=56234786
 или
http://api.demo.abcp.ru/cp/users?userlogin=username&userpsw=md5pass&customersIds[0]=574823&customersIds[1]=86954&customersIds[2]=56234786

Метод возвращает массив объектов вида:

Параметр Описание
userId Идентификатор пользователя
marketType Тип регистрации. Значение от 1 до 2:
  1. Розница
  2. Опт
business Тип организации. Значение от 1 до 6:
  1. Автопарк
  2. Автосервис
  3. Автосервис + Магазин
  4. Дистрибьютор
  5. Интернет-магазин
  6. Магазин
email Адрес электронной почты
name Имя
secondName Отчество
surname Фамилия
birthDate Дата рождения, формат YYYY-MM-DD
regionId Код региона
city Город
phone Номер телефона
mobile Номер мобильного телефона
memberOfClub Название автоклуба
icq ICQ UIN
skype Skype
state Состояние аккаунта. Значения:

-1 - отклоненный,
0 - ожидает регистрации,
1 - зарегистрированный,
2 - удаленный.

registrationDate Дата регистрации аккаунта.
updateTime Дата последнего обновления аккаунта.
profileId Идентификатор профиля
organizationName Наименование организации
organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
customerStatus Идентификатор статуса покупателя
deliveryAddress Адреса доставки (массив, где ключи - id адресов)
comment Комментарий пользователя
employeeId Идентификатор личного менеджера
clientServiceEmployeeId Идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee2Id Второй идентификатор личного менеджера клиентской службы (дополнительная опция)
balance Текущий баланс клиента
creditLimit Текущий лимит кредита клиента
inStopList Флаг "В стоп-листе"
stopListDateIn Дата попадания в стоп-лист (если inStopList = 1) в формате YYYY-MM-DD
offices Массив офисов, к которым привязан клиент
baskets Массив корзин (мультикорзина)
managerComment комментарий менеджера из поля "Комментарий менеджера:" карточки клиента
businessName тип организации из поля "Тип:" в буквенном обозначении (Автопарк, Дистрибьютор, Магазин и т.д.). карточки клиента
userCode Внутренний код пользователя

Получение списка профилей

Операция: cp/users/profiles
Метод: GET

Возвращает список всех профилей.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
format Формат ответа. Необязательное значение Может принимать значения: "distributors" - выводить информацию по наценкам на поставщиков; "brands" - выводить информацию по наценкам на поставщиков и бренды.

Пример запроса

http://api.demo.abcp.ru/cp/users/profiles?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
profileId Идентификатор профиля
code Код профиля
name Наименование профиля
comment Комментарий
priceUp Наценка, %
paymentMethods Платежные системы
matrixPriceUps Наценки от стоимости товара
distributorsPriceUps Наценки по поставщикам (выводится если format установлен в значение distributors или brands)
baseProfileId Идентификатор базового профиля (возвращается только при подключении опции Профили: использовать групповое сохранение)

Узел paymentMethods содержит массив объектов вида:

Параметр Описание
id Идентификатор платежной системы
name Наименование платежной системы
isEnabled Признак включения платежной системы для клиентов этого профиля

Узел matrixPriceUps содержит массив объектов вида:

Параметр Описание
from Цена от
to Цена до
priceUp Наценка

Узел distributorsPriceUps содержит массив объектов вида:

Параметр Описание
id Идентификатор поставщика
name Наименование поставщика
isEnabled Признак включения поставщика для клиентов этого профиля
priceUp Наценка на поставщика
brandsPriceUps Наценки на бренды поставщика (выводится, если format выставлен в значение brands)

Узел brandsPriceUps содержит массив объектов вида:

Параметр Описание
name Название бренда
priceUp Наценка на поставщика

Обновление профиля

Операция: cp/users/profile
Метод: POST

Изменяет профиль. Принимает в качестве параметров идентификатор профиля на сайте и всю информацию о профиле, возвращаемую операцией cp/users/profiles в формате brands. Работает только при выключенной опции Профили: использовать групповое сохранение, иначе возвращает ошибку. Если не указать идентификатор профиля, будет создан новый. В данном случае, обязательными параметрами будут name и priceUp. При создании профилья невозможно использовать имя и код существующих профилей.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
profileId Идентификатор профиля
code Код профиля
name Наименование профиля
comment Комментарий
priceUp Наценка, %
paymentMethods Платежные системы
matrixPriceUps Наценки от стоимости товара
distributorsPriceUps Наценки по поставщикам

Обязательно наличие как минимум одного из полей (code, name, comment, priceUp, paymentMethods, matrixPriceUps, distributorsPriceUps).

Пример запроса

http://api.demo.abcp.ru/cp/users/profile?userlogin=username&userpsw=md5pass&profileId=12345&priceUp=13

Узел paymentMethods содержит массив объектов вида:

Параметр Описание
id Идентификатор платежной системы
isEnabled Признак включения платежной системы для клиентов этого профиля

Узел matrixPriceUps содержит массив объектов вида:

Параметр Описание
from Цена от
to Цена до
priceUp Наценка

Узел distributorsPriceUps содержит массив объектов вида:

Параметр Описание
id Идентификатор поставщика
isEnabled Признак включения поставщика для клиентов этого профиля
priceUp Наценка на поставщика
brandsPriceUps Наценки на бренды поставщика

Узел brandsPriceUps не обязателен, если он отсутствует, то наценки по брендам не изменяются.

      • Внимание!*** Если узел brandsPriceUps, то все наценки по брендам удаляются и заполняются из переданных параметров.

Узел brandsPriceUps содержит массив объектов вида:

Параметр Описание
name Название бренда
priceUp Наценка на поставщика

В случае успешного обновления, метод возвращает актуальную информацию о профиле (формат узлов тотже):

Параметр Описание
profileId Идентификатор профиля
code Код профиля
name Наименование профиля
comment Комментарий
priceUp Наценка, %
paymentMethods Платежные системы
matrixPriceUps Наценки от стоимости товара
distributorsPriceUps Наценки по поставщикам


Обновление данных пользователя

Операция: cp/user
Метод: POST

Осуществляет обновление данных пользователя, присланных в запросе.

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

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор изменяемого клиента
business Тип организации. Значение от 1 до 6:
  1. Автопарк
  2. Автосервис
  3. Автосервис + Магазин
  4. Дистрибьютор
  5. Интернет-магазин
  6. Магазин
email Адрес электронной почты
name Имя
secondName Отчество
surname Фамилия
birthDate Дата рождения, формат YYYY-MM-DD
city Город
phone Номер телефона
mobile Номер мобильного телефона
icq ICQ UIN
skype Skype
state Состояние аккаунта. Значения:

-1 - отклоненный,
0 - ожидает регистрации,
1 - зарегистрированный,
2 - удаленный.

profileId Идентификатор профиля
organizationName Наименование организации
organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
deliveryAddress Адреса доставки (массив, где ключи - id адресов). Если передать пустой параметр deliveryAddress, то все адреса клиента будут удалены! Если необходимо добавить новый адрес, то используйте в качестве ключа любое отрицательное число, например deliveryAddress[-1] = 'Здесь новый адрес'. Если Вы изменяете один из адресов, то необходимо передать все имеющиеся адреса клиента. Если этого не сделать, то не переданные адреса клиента будут удалены.
baskets Корзины клиента (массив, где ключи - id корзин). Если передать пустой параметр baskets, то все корзины клиента будут удалены! Если необходимо добавить новую корзину, то используйте в качестве ключа любое отрицательное число, например baskets[-1] = 'Здесь новое название корзины'. Если Вы изменяете одну из корзин, то необходимо передать все имеющиеся корзины клиента. Если этого не сделать, то не переданные корзины клиента будут удалены.
comment Комментарий пользователя
managerId Идентификатор менеджера
userCode Внутренний код пользователя
clientServiceEmployeeId Идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee2Id Второй идентификатор личного менеджера клиентской службы (дополнительная опция)
office Массив идентификаторов офисов, к которым необходимо подключить клиента. Если идентификатор офиса, к одному из которых подключен клиент, не будет передан, то он будет отключен. Передать пустой параметр office нельзя, т.к. клиент должен быть подключен минимум к одному офису. Параметр актуален только если у вас на сайте включена опция: "Офисы: включить привязку к клиентам".
info "Информация" в личном кабинете. В поле допустимо использование html-тегов. max 6000 символов. Закладка появляется только если есть данные в поле info для клиента.
safeMode "Безопасный режим" для клиентов не имеющих поддержки формата JSON. Может принимать значения 0 или 1. При включении (1), адреса доставки в ответе будут возвращаться в виде массива объектов с полями "id" и "name", а не как "ключ - значение".


Пример запроса

http://api.demo.abcp.ru/cp/user

Параметры POST

userlogin=username&userpsw=md5pass&userId=12345&profileId=23456&managerId=34567&office[0]=45678&office[1]=56789

Метод возвращает набор узлов вида:

Поле Описание
userId Идентификатор пользователя в системе ABCP.
business Тип организации. Значение от 1 до 6:
  1. Автопарк
  2. Автосервис
  3. Автосервис + Магазин
  4. Дистрибьютор
  5. Интернет-магазин
  6. Магазин
email Адрес электронной почты
name Имя
secondName Отчество
surname Фамилия
birthDate Дата рождения, формат YYYY-MM-DD
city Город
phone Номер телефона
mobile Номер мобильного телефона
icq ICQ UIN
skype Skype
state Состояние аккаунта. Значения:

-1 - отклоненный,
0 - ожидает регистрации,
1 - зарегистрированный,
2 - удаленный.

profileId Идентификатор профиля
organizationName Наименование организации
organizationForm Правовая форма организации. Варианты:
  • ООО
  • ОАО
  • ЗАО
  • ТОО
  • АО
  • ЧП
  • ПБОЮЛ
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
ogrn ОГРН
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
deliveryAddress Адреса доставки (массив, где ключи - id адресов)
comment Комментарий пользователя
managerId Идентификатор менеджера
userCode Внутренний код пользователя
clientServiceEmployeeId Идентификатор личного менеджера клиентской службы (дополнительная опция)
clientServiceEmployee2Id Второй идентификатор личного менеджера клиентской службы (дополнительная опция)
office Массив идентификаторов офисов
baskets Массив корзин клиента в формате "идентификатор - имя корзины"
info "Информация" в личном кабинете. В поле допустимо использование html-тегов. Закладка появляется только если есть данные в поле info для клиента.

Получение автомобилей из гаража пользователя

Операция: cp/users/garage
Метод: GET

Возвращает список всех автомобилей из гаража пользователя.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
userId Идентификатор пользователя

Пример запроса

http://api.demo.abcp.ru/cp/users/garage?userlogin=username&userpsw=md5pass&userId=525002

Метод возвращает массив объектов вида:

Параметр Описание
garageCarId Идентификатор автомобиля в гараже
manufacturer Марка автомобиля
model Модель автомобиля
modification Модификация автомобиля
vin VIN номер
frame FRAME номер
mileage Пробег

Сотрудники

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

Операция: cp/managers
Метод: GET


Возвращает список менеджеров.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора


Пример запроса

http://api.demo.abcp.ru/cp/managers?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
id Идентификатор сотрудника
resellerId Идентификатор реселлера
typeId Тип сотрудника
typeName Наименование типа
firstName Имя сотрудника
lastName Фамилия сотрудника
email E-mail
phone Телефон
icq ICQ
skype Skype
comment Комментарий
contractorId Идентификатор пользователя сотрудника
bossId Идентификатор руководителя сотрудника
bossName Имя руководителя сотрудника
officeName Название офиса
officeId Идентификатор офиса
allowLogin Флаг разрешения входа на сайт
allowLoginToCP Флаг разрешения входа в Панель управления
isFranchiseeLogin Флаг франчайзи
isDelete Флаг удаленного сотрудника
isService Флаг сотрудника сервиса
mobile Мобильный телефон
photo Фотография
photoVersion Версия фотографии

Статусы

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

Операция: cp/statuses
Метод: GET

Возвращает список всех статусов позиций заказов.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора


Пример запроса

http://api.demo.abcp.ru/cp/statuses?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
id Идентификатор статуса (он же statusCode)
name Имя статуса
comment Описание для клиента
notify Флаг "Уведомить клиента"
paid Флаг "Статус после оплаты заказа"
startDelivery Флаг "Начальный статус доставки/списания"
delivery Флаг "Статус доставки/списания"
placingOrder Флаг "Статус после размещения заказа у поставщика"
color Цвет статуса

Артикулы

Доступ к данным операциям включается только после согласования.

Получение справочника брендов

Операция: cp/articles/brands
Метод: GET

Возвращает список всех брендов зарегистрированных в системе с их синонимами.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора


Пример запроса

http://api.demo.abcp.ru/cp/articles/brands?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
name Имя бренда
aliases Массив, содержащий список синонимов текущего бренда

Поставщики

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

Операция: cp/distributors
Метод: GET

Возвращает список всех поставщиков, подключенных в ПУ/Поставщики.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributors4mc При передаче "1" возвращает дополнительно поставщиков 4mycar"


Пример запроса

http://api.demo.abcp.ru/cp/distributors?userlogin=username&userpsw=md5pass

Метод возвращает массив объектов вида:

Параметр Описание
id id поставщика
name Имя поставщика
publicName Публичное (измененное) имя поставщика
currencyDesignation Валюта поставщика
isEnabled Статус поставщика
updateTime Последнее обновление (у онлайн поставщиков не выводится)
positionsNumber Позиций в наличии
updateRateInDays Норма обновления в днях для поставщика
email email поставщика
firstName Имя
lastName Фамилия
city Город
phone Телефон
mobile Мобильный
organizationForm Правовая форма организации.
organizationOfficialName Наименование по регистрации (без правовой формы юр. лица)
inn ИНН
kpp КПП
organizationOfficialAddress Юридический адрес организации
bankName Наименование банка
bik БИК банка
correspondentAccount Корреспондентский счет банка
organizationAccount Расчетный счет организации
description Описание

Изменение статуса поставщика

Операция: cp/distributor/status
Метод: POST

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId Id поставщика
status 1 - Вкл. \ 0 - Выкл.


Пример запроса

http://api.demo.abcp.ru/cp/distributor/status?userlogin=username&userpsw=md5pass&status=1

Метод возвращает объект вида:

Параметр Описание
status Статус выполнения операции. В случае успешного выполнения возвращает 1.
errorMessage Сообщение об ошибке(если она есть).

Загрузка прайс-листа поставщика

Операция: cp/distributor/pricelistUpdate
Метод: POST
В ПУ, в разделе "Поставщики"/"Обн."/"Конфигурация прайс-листа" предварительно настраивается конфигурация загружаемого прайс-листа. Специальных требований к прайс-листу нет, есть только обычные: наличие колонок с ценой, брендом, каталожным номером, описанием, наличием. На вкладке "Загрузка прайс-листа" может быть выбран любой способ загрузки.
Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId Id поставщика
uploadFile файл прайс-листа переданный в multipart/form-data
fileTypeId Необязательный параметр - идентификатор типа файла. Если не передаётся, то по умолчанию равен 1.

Список принимаемых значений:

1 - полный ассортимент

Пояснение: если загружается полный ассортимент, то вся загруженная ранее информация удаляется.


vertical-align:middle;
Внимание!
Для этой операции необходимо использовать медиа-тип multipart/form-data.

Пример запроса

curl -i -X POST -H "Content-Type: multipart/form-data" -F "userlogin=username" -F "userpsw=md5pass" -F "distributorId=369645" -F "uploadFile=@/home/user/pricelist.xlsx" http://api.demo.abcp.ru/cp/distributor/pricelistUpdate

Примеры скриптов для выполнения операции

  • Windows - СКАЧАТЬ После скачивания необходимо распаковать zip архив в любую папку. Открыть файл windows/upload.vbs для редактирования в Блокноте и указать в самом верху свои логин и пароль API администратора, а также хост для обращения к API. Сохраните и закройте его. После этого, откройте файл start_full.bat для редактирования в Блокноте. Вторым аргументом необходимо указать id поставщика для обновления, а третьим аргументом - путь к файлу прайс-листа. Путь к файлу может быть полным, например: "C:\Users\Admin\my_price.xls". Или относительным, например: ".\my_price.xls", если прайс-лист лежит в той же папке где и скрипт загрузки. Сохраните и закройте файл. Теперь вы можете запустить файл start_full.bat двойным кликом, чтобы прайс-лист был загружен.
  • Linux - СКАЧАТЬ После скачивания необходимо распаковать zip архив в любую папку. Отредактируйте файл posix/update_price.sh указав в блоке Config свои логин и пароль API администратора, а также хост для обращения к API. Для запуска используйте консоль:
sh /home/user/update_price.sh 369645 '/home/user/my_price.csv'

где первый аргумент: 369645 - id поставщика, второй аргумент - путь к файлу прайс-листа.

или

sh /home/user/update_price.sh 369645 '/home/user/my_price.csv'

Необходимо наличие установленной библиотеки curl.

Проект на GitHub

Метод возвращает объект вида:

Параметр Описание
status Статус выполнения операции. В случае успешного выполнения возвращает 1.
message Сообщение о результатах работы.

Получение списка маршрутов поставщика

Операция: cp/routes
Метод: GET

Возвращает список всех маршрутов поставщика.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
distributorId Идентификатор поставщика


Пример запроса

http://api.demo.abcp.ru/cp/routes?userlogin=username&userpsw=md5pass&distributorId=12345

Метод возвращает массив объектов вида:

Параметр Описание
id id маршрута
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (false - Нет, true - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (false - Нет, true - Да)

Обновление данных маршрута поставщика

Операция: cp/route
Метод: POST

Осуществляет обновление данных маршрута поставщика, присланных в запросе.
При изменении данных маршрута необязательно передавать все параметры. Используйте в запросе только те данные, которые вы собираетесь изменить.

Параметры запроса

Параметр Описание
userlogin Имя API-администратора
userpsw md5-хэш пароля API-администратора
routeId Идентификатор маршрута поставщика
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (0 - Нет, 1 - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (0 - Нет, 1 - Да). "1" сохраняется только при normalTimeDisplayOnly=1.


Пример запроса

http://api.demo.abcp.ru/cp/route?userlogin=username&userpsw=md5pass&routeId=12345&deadline=48

Метод возвращает массив с измененной информацией о маршруте:

Параметр Описание
id id маршрута
deadline Срок поставки (часов)
deadlineReplace Текстовое значение для "Срока поставки"
isDeadlineReplaceFranchEnabled Передавать текстовое значение для "Срока поставки" франчайзи
deadlineMax Максимальный срок поставки (часов)
normalTimeStart Начало рабочего времени
normalTimeEnd Конец рабочего времени
normalDaysOfWeek Стандартные дни недели
abnormalDeadline Срок поставки (вне стандартного времени)
abnormalDeadlineMax Максимальный срок поставки (вне стандартного времени)
p1 P1
p2 P2
pricePerKg Стоимость 1КГ (в валюте поставщика)
priceUpAdded Добавочная наценка
с1 C1
priceUpMin Минимальная наценка
priceUpMax Максимальная наценка
primaryPriceUpToContractor Приоритетная (если выше) наценка для клиента
deliveryProbability Вероятность поставки (в процентах) %
description Краткое описание маршрута
enableColor Выделять цветом
color Цвет
isAbnormalColorEnabled Выделять цветом в нерабочее время
abnormalColor Цвет в нерабочее время
noReturn Без возврата
supplierCodeEnabledList Ограничить выдачу складами (массив)
supplierCodeDisabledList Исключить позиции по складам (массив)
normalTimeDisplayOnly Показывать только в стандартное время (false - Нет, true - Да)
disableOrderAbnormalTime Блокировать отправку заказа в нестандартное время (false - Нет, true - Да)

Удаление маршрута поставщика

Операция: cp/route/delete
Метод: POST

Удаляет маршрут поставщика.

Параметры запроса

Параметр Описание
userlogin Имя пользователя в системе
userpsw md5-хэш пароля пользователя в системе
routeId Идентификатор маршрута поставщика

Пример запроса

http://api.demo.abcp.ru/cp/route/delete

Параметры POST

userlogin=username&userpsw=md5pass&routeId=12345

Поля ответа

Метод возвращает ответ:

Поле Описание
status Статус удаления маршрута. Принимает значение 0 - произошла ошибка или 1, если все успешно.
errorMessage Текст сообщения об ошибке при статусе 0.