Страница, где вводится запрос: http://

Страница, куда выводится результат: http:///page1.html



Партнерское API сайта b2b.

API представляет собой веб-версис, принимающий в качестве параметров GET и POST запросы и возвращающий данные в JSON формате

API доступно по адресу https://b2b. /apiv2

Каждый запрос к API должны содержать обязательные параметры:

    client - уникальный идентификатор клиента mod - вид запроса (допустимые варианты - account/rests/cart/orders)

Каждый ответ API содержит массив, где:

    answer_code - статус, соответствующий коду состояния http error_text (если при выполнении запроса произошла ошибка) - текст ошибки


Для того, чтобы получить ответ в удобном для прочтения виде (вместо JSON), добавьте в запрос параметр debug

Другие параметры запросов и ответов:


Модуль "Аккаунт"

Запрос

GET | POST

params:

  mod=account

  client={ APIID клиента}

Ответ

массив с ключем account, в котором содержится информация об аккаунте

[account] => Array

(

  [name] => Имя

  [username] => Логин

  [client_debd] => Задолженность

)

Примеры

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201i3&mod=account

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201i3&mod=account&debug

Модуль "Остатки"

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

НЕ нашли? Не то? Что вы ищете?

Вывод брендов по артикулу

Запрос

GET | POST

params:

  mod=rests

  client={ APIID клиента}  !обязательный параметр

  article={артикул товара} !обязательный параметр

Ответ

массив с ключем brands, в котором содержатся бренды с такми артикулом

{

  "brands": {

  "items": {

  "DENSO|IK20": {

  "detailid": "id детали",

  "formattedoem": "Артикула товара неотчищенный",

  "manufacturer": "Производитель",

  "manufacturerid": "id производителя",

  "name": "Название продукта",

  "oem": "Артикула товара отчищенный",

  "weight": "Вес",

  "instock": "Если true то товар находиться на складах компании"

  }

  }

  },

  "answer_code": 200

}

Примеры

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201i3&mod=rests&article=PH2820

Запрос остатоков по бренду и артикулу

Запрос

GET | POST

params:

  mod=rests

  client={ APIID клиента}  !обязательный параметр

  article={артикул товара} !обязательный параметр

  brand={название брэнда } !обязательный параметр

  location= расположение товара

  all - на вcех складах  (по умолчанию)

  local - на складах компании

  partners - на складах партнеров

Ответ

массив с ключем rests, в котором содержатся остатки товара с запрошенным кодом

{

  "rests": {

  "items": {

  "DENSO|IK20": {

  "detailid": "id детали",

  "formattedoem": "Артикула товара неотчищенный",

  "manufacturer": "Производитель",

  "manufacturerid": "id производителя",

  "name": "Название продукта",

  "oem": "Артикула товара отчищенный",

  "weight": "Вес",

  "instock": "Если true то товар находиться на складах компании"

  "replacements": { "Замены для этого артикула"

  "NGK|3764": {

  "detailid": "1146571",

  "formattedoem": "3764",

  "manufacturer": "NGK",

  "manufacturerid": "15",

  "oem": "3764",

  "weight": 0,

  "rate": 4,

  "name": "BKR6EIX-11_свеча зажигания! Honda Civic, Mazda 323, Mitsubishi Galant 1.3-2.0i 89>",

  "stocks": [ "Остатки замены для этого артикула"

  {

  "detailid": "79b40025-9d4b-11e3-bef3-00155d647f5f",

  "name": "Свеча зажигания BKR6EIX-11",

  "moq": "Минимальное количество штук к заказу",

  "quantity": "Качество доставки в %. от 0 до 100.",

  "delivery_max": "Дней на доставку",

  "quality": "Количество товаров",

  "store_name": "Название склада",

  "store_id": "id склада",

  "price": "Цена",

  "brand": "NGK",

  "delivery_min_date": "2017-02-03",

  "delivery_max_date": "2017-02-03",

  "delivery_price": "Цена доставки",

  "discount": "Скидка"

  }

  ]

  }

  },

  "stocks": [

  {

  "detailid": "69a0372a-eb26-11dd-bb07-00196616d816",

  "name": "5304 / IK20 Denso свечи зажигания",

  "moq": "1",

  "quantity": 30,

  "delivery_max": 1,

  "quality": 5,

  "store_name": "Склад Астана Автозапчасти",

  "store_id": "627da9b8-2a18-11e2-ada7-3c4a92fa410c",

  "price": 2458,

  "brand": "DENSO",

  "delivery_min_date": "2017-02-03",

  "delivery_max_date": "2017-02-03",

  "delivery_price": 0,

  "discount": 0

  }

  ]

  }

  }

  },

  "answer_code": 200

}

Примеры

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201i3&mod=rests&code=IM1756514W&with_remotestores=1

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201i3&mod=rests&code=IM1756514W&with_remotestores=1&debug

Модуль "Группы товаров"

Запрос

GET | POST

params:

  mod=product_types

  client={ APIID клиента}

Ответ

массив с ключем product_types, в котором содержится информация о группах товаров и их свойствах

[product_types] => Array

(

  [[items][x][id]] => Идентификатор группы товаров

  [[items][x][title]] => Название группы товаров

  [[items][x][parent]] => Идентификатор родительской группы товаров

  [[items][x][ptype]] => Код группы товаров

  [[items][x][fields]] => Параметры группы товаров

  [[items][x][fields][y][name]] => Имя параметра

  [[items][x][fields][y][description]] => Заголовок параметра

)

Примеры

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201c3&mod=ptypes

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201c3&mod=ptypes&help&debug

Модуль "Каталог"

Запрос

GET | POST

params:

  mod=group

  client={ APIID клиента}!обязательный параметр

  ptype={код группы товаров} !обязательный параметр

  with_remotestores={1/0} - показывать ли товары партнеров

  count - количество возвращаемых товаров (если не установлено, то возвращаются все товары)

  page - номер страницы (если установлен параметр count)

  filter - массив параметров для фильтрации результатов запроса, уникальный для каждой группы товаров (подробнее в [params][enableFilters])

  sort - способ сортировки списка (подробнее в [params][sortParams])

  with_params={1/0} - возвращать ли параметры выборки и свойства товаров

Ответ

    массив с ключем rests, в котором будут находиться остатки массив с ключем rests_fields с описанием ключей массива rests массив с ключем pagination с информацией о количестве записей и параметрах навигации (актуально, если задан параметр count)

Если параметр запроса with_params=1, в ответ будут включен массив params с ключами:

    list - свойства товаров (в зависимости от группы товаров) fields - значения ключей свойств товаров active_sort - активный вид сортировки (можно задать в параметре sort) sortParams - возможные виды сортировки enableFilters - возможные фильтры и их значения enableFilters_fields - описание ключей массива enableFilters currentFiltersValues - активные (переданные в запросе и примененные) фильтры

[products] => Array

(

  [[items][x][id]] => Идентификатор товара

  [[items][x][description]] => Описание параметров товара

  [[items][x][description][prod_{ptype}_*]] => Специфические для группы товаров параметры

  [[items][x][description][prod_s_number]] => Артикул товара

  [[items][x][description][prod_name]] => Наименование товара

  [[items][x][description][image]] => ссылка на изображение товара

  [[items][x][description][cnt]] => совокупное количество остатков товара

  [[items][x][rests]] => Информация об остатках товара

  [[items][x][rests][y][store_id]] => Идентификатор склада

  [[items][x][rests][y][stock_amount]] => Количество остатков

  [[items][x][rests][y][price_value]] => Цена

  [[items][x][rests][y][store_name]] => Название склада

  [[items][x][rests][y][store_delivery_time]] => Срок доставки до склада

  [[items][x][rests][y][delivery_time]] => Срок доставки

  [[items][x][rests][y][DDPercent]] => Вероятность наличия (в %)

)

[pagination] => Array

(

  [cur] => Текущая страница

  [all] => Общее количество страниц

  [onpage] => Количество товаров на странице

  [records] => Общее количество товаров, найденных по запросу

  [sort] => Способ сортировки (см. [cases][request_fields][group][sort])

)

[filters] => Array

(

  [[items][x][field]] => Фильтр

  [[items][x][variants]] => Варианты фильтра

  [[items][x][variants][y][value]] => Значение фильтра

  [[items][x][variants][y][activ]] => Флаг активности фильтра

  [[items][x][variants][y][*activ]] => Array

  (

  [1] => Значение активно (может быть использовано для дальнейшей фильтрации найденных товаров)

  [0] => Значение не активно (не может быть использовано)

  )

  [[items][x][title]] => Заголовок фильтра

  [[items][x][value]] => Выбранное (использованное при текущем запросе) значение фильтра

)

Примеры

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201c3&mod=ptypes

https://b2b. /apiv2?client=f98282abe6f80739b9f16baec15201c3&mod=ptypes&help&debug

Пример подключения для PHP через CURL

<?php

//функция возврата данных по get-запросу (по URL)

function get_url($url)

{

  //инифиализация CURL

  $ch = curl_init();

  //параметры curl

  $options = [

  CURLOPT_URL => $url,

  CURLOPT_RETURNTRANSFER => true,

  CURLOPT_HEADER => false,

  CURLOPT_FOLLOWLOCATION => 1,

  CURLOPT_SSL_VERIFYHOST => false,

  CURLOPT_SSL_VERIFYPEER => false,

  CURLOPT_SSLVERSION => CURL_SSLVERSION_TLSv1,

  ];

  curl_setopt_array($ch, $options);

  //запрос данных

  $res = curl_exec($ch);

  curl_close($ch);

  //возврат результата в виде массива

  return json_decode($res, true);

}

//формирование запроса

$base_url = 'https://https://b2b. /apiv2?';

$http_qr = [

  'client' => 'f98282abe6f80739b9f16baec15201i3',

  'mod' => 'rests',

  'code' => 'ik20',

  'with_remotestores' => '1',

];

$url = $base_url. http_build_query($http_qr);

//получение данных

$data = get_url($url);

//вывод данных (обработка)

echo '<pre>';

print_r($data);

echo '</pre>';

?>

  Второй сервис: http://zaptrade. ru/webservices/