1. Общие положения

Взаимодействие происходит по протоколу HTTPS.

  • Сервер для подключения: ekfgroup.com.
  • Имя приложения: api.

Формирование URL запроса к API:

POST https://ИмяСервера/ИмяПриложения/Версия/Группа/ИмяМетода

GET https://ИмяСервера/ИмяПриложения/Версия/Группа/ИмяМетода?Параметр

Где:
  • ИмяСервера - смотри «Сервер для подключения».
  • ИмяПриложения - смотри «Имя приложения».
  • Версия – версия API-метода. Номер версии указывается после символа «v». Версия API-метода указывается в его описании (см. раздел «Версионирование»).
  • Группа – наименование группы методов (см. структуру раздела «API-методы»). Имеются следующие группы методов:
    • Partners - данные, получаемые от партнеров.
    • EKF - данные, получаемые от EKF.
  • Если группа методов имеет подгруппу, то все входящие подгруппы последовательно указывается после группы через «/».
  • ИмяМетода – имя API – метода. Смотри раздел «API-методы» имя метода.
  • Параметр1&Параметр2 – параметры, применимые к соответствующему API – методу. Смотри раздел «API-методы».

2. Авторизация

Авторизация выполняется по ключу доступа (API-KEY), который выдается отдельно каждому пользователю (только юридическому лицу) по запросу. Запрос должен быть отправлен на e-mail: support@ekf.su.

В запросе должна быть следующая информация:
  • Ф.И.О. * – ваши фамилия, имя и отчество.
  • ИНН * – идентификационный налоговый номер юридического лица.
  • e-mail * – ваш адрес электронной почты, на который будет отправлен API-KEY.
  • Телефон – ваш номер телефона.
  • Поля, обозначенные «*» являются обязательными для заполнения.
  • API-KEY должен быть указан в HEADER каждого запроса в атрибуте Authorization. Запись вида: Bearer "ваш API-KEY".

3. Работа с сервером (запросы и ответы)

Запросы к серверу

Сервер EKF поддерживает 2 вида запросов: POST и GET.

  • POST-запрос осуществляет отправку данных Партнерами на сервер EKF.
    Данные отправляются в теле запроса (не в заголовке).
    Для отправки POST-запроса URL должен заканчиваться на методе (вводить параметры в URL запроса не нужно).

    Пример POST-запроса:

    https://ekfgroup.com/api/v1/partners/stocks

  • GET-запрос осуществляет принятие данных Партнерами от сервера EKF.
    Данные отправляются в заголоке запроса (тело запроса остается пустым).
    Для отправки GET-запроса URL должен включать параметры метода.
  • Пример GET-запроса:

    https://ekfgroup.com/api/v1/ekf/catalog/products?id=0001cc0d-efa2-11e6-bd2e-000c29c6d5f2

Ответ сервера

После отправки запроса, сервер присылает один из данных вариантов ответа:

  • 200 - OK.
  • 400 - Bad Request.
  • 401 - You must be authorized to view this page.
  • 403 - Forbidden.
  • 404 - The requested URL was not found.
  • 500 - The server encountered an error processing your request.
  • 501 - The requested method is not implemented.
  • 505 - HTTP Version Not Supported.

4. Версионирование

Версия отражает изменение на уровне API-метода, например, формат выдачи ответа, добавление новых атрибутов. Номер версии API-метода – это целое число ≥ 1.

Версия API-метода указывается в его описании, а при описании API-метода с версией >1 также отражаются изменения по отношению к предыдущей версии.

Используемая версия API должен быть указан в URL-адресе запроса к API-методу после символа «v» (см. «Общие положения»).

5.1.1 Остатки товаров Партнеров (stocks, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерами о свободном остатке (без учета резервов) товаров торговой марки EKF на складах. Возможно предоставление данных как суммарно по всем складам, так и отдельно по каждому складу.

  • Имя метода: stocks.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Атрибут Тип значения Описание данных Пример
date Дата в формате:гггг-мм-дд Дата и время данных по остаткам товара на момент времени 2018-02-15
location Строка Наименование склада, распределительного центра без пробелов на латинском Noginsk
vendorCode Строка Артикул товара mcb4763-1-01C-pro
unitInternationalCode Строка Кодовое буквенное обозначение (международное) единицы измерения согласно Общероссийскому классификатору единиц измерения ОК 015-94
PCE - Штука
KOM - Комплект
NMP - Упаковка
MTR - Метр
PCE
quantity Число, точность 3. Разделитель дробной части «.» Количество остатка товара 1000.000

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/partners/stocks

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/partners/stocks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}',
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/partners/stocks"

payload = {
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}
headers = {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/partners/stocks");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.AddParameter("undefined", '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}', ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}');
Request request = new Request.Builder()
    .url("https://ekfgroup.com/api/v1/partners/stocks")
    .post(body)
    .addHeader("Accept", "application/json")
    .addHeader("Content-Type", "application/json")
    .addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz")
    .build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/partners/stocks",
"method": "POST",
"headers": {
  "Accept": "application/json",
  "Content-Type": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMzMDBkMGE0OGI2OTY1NGNhMTU3MDdlNTQ2MWU5Mjn92LyL1WrsdF92s4ypAilr6hMXaUsyNgzvWs3Xw64EsHVTBUb94spncNKXpjM3ZoGLgQHufNk6sZuujGMkQcwqMvr8ChpdALa6MvxNmp-FjWjXmLwqrK6lkXZrZfZwYre_JUMcPm-ieyUYJNrJIfXtKOE3ozxAN4zq8EcOE13SP-fGLPajdqZhiXcfocWOJ1fUAi_qJfnScaax4zf40-v9SsbE52lzYynQJTCWUHa-kcIs3RjJPLY-GjckX9rusuF67i3d1OeIhVumg2KO5zvNaBJ7VuXT1n8_22nOVxIw26mSD5gNlTDhUCDIkWxH--kWUPKKm9zPlQbovi0unEg5Xgnri28iWd79p5ib2SYmF24iQrQvScDl14e_9w3zyECndtxh_Jzfgj0-Tur-bMuRiRD9adX-KwumDkeRoCECBzrtBPeEf8LDr8a1JgHp7XMRxkKPQQMeMpkzcuOewFCm9eTSiefYh6qFgGQBvn0elJfFP5UWKLtDW1C7QygAi5syS0bBkajdkVkSsAOENzoZUl2Scxz24OGuGd-GMRvAIlCB4pxrWoGq1dKMCNiWLuMdENeCk0B7gbR4aiaGJtcb9icPbWyY4yEq7-bt58k99kIV_yzbXezi8384lyh",
},
"processData": false,
"data": {
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.1.2 Остатки товаров Партнеров (stocks, пакетная выгрузка, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерами о свободном остатке (без учета резервов) товаров торговой марки EKF на складах. Возможно предоставление данных как суммарно по всем складам, так и отдельно по каждому складу.

  • Имя метода: stocks.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Атрибут Тип значения Описание данных Пример
date Дата в формате:гггг-мм-дд Дата и время данных по остаткам товара на момент времени 2018-02-15
location Строка Наименование склада, распределительного центра без пробелов на латинском Noginsk
Объект stocks (остатки)
vendorCode Строка Артикул товара mcb4763-1-01C-pro
unitInternationalCode Строка Кодовое буквенное обозначение (международное) единицы измерения согласно Общероссийскому классификатору единиц измерения ОК 015-94
PCE - Штука
KOM - Комплект
NMP - Упаковка
MTR - Метр
PCE
quantity Число, точность 3. Разделитель дробной части «.» Количество остатка товара 1000.000

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/partners/stocks

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/partners/stocks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "stocks": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}',
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/partners/stocks"

payload = {
    "date": "2018-02-15",
    "location": "Ryazan",
    "stocks": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}
headers = {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/partners/stocks");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.AddParameter("undefined", '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "stocks": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}', ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "stocks": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}');
Request request = new Request.Builder()
    .url("https://ekfgroup.com/api/v1/partners/stocks")
    .post(body)
    .addHeader("Accept", "application/json")
    .addHeader("Content-Type", "application/json")
    .addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz")
    .build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/partners/stocks",
"method": "POST",
"headers": {
  "Accept": "application/json",
  "Content-Type": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMzMDBkMGE0OGI2OTY1NGNhMTU3MDdlNTQ2MWU5Mjn92LyL1WrsdF92s4ypAilr6hMXaUsyNgzvWs3Xw64EsHVTBUb94spncNKXpjM3ZoGLgQHufNk6sZuujGMkQcwqMvr8ChpdALa6MvxNmp-FjWjXmLwqrK6lkXZrZfZwYre_JUMcPm-ieyUYJNrJIfXtKOE3ozxAN4zq8EcOE13SP-fGLPajdqZhiXcfocWOJ1fUAi_qJfnScaax4zf40-v9SsbE52lzYynQJTCWUHa-kcIs3RjJPLY-GjckX9rusuF67i3d1OeIhVumg2KO5zvNaBJ7VuXT1n8_22nOVxIw26mSD5gNlTDhUCDIkWxH--kWUPKKm9zPlQbovi0unEg5Xgnri28iWd79p5ib2SYmF24iQrQvScDl14e_9w3zyECndtxh_Jzfgj0-Tur-bMuRiRD9adX-KwumDkeRoCECBzrtBPeEf8LDr8a1JgHp7XMRxkKPQQMeMpkzcuOewFCm9eTSiefYh6qFgGQBvn0elJfFP5UWKLtDW1C7QygAi5syS0bBkajdkVkSsAOENzoZUl2Scxz24OGuGd-GMRvAIlCB4pxrWoGq1dKMCNiWLuMdENeCk0B7gbR4aiaGJtcb9icPbWyY4yEq7-bt58k99kIV_yzbXezi8384lyh",
},
"processData": false,
"data": {
    "date": "2018-02-15",
    "location": "Ryazan",
    "stocks": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.1.3 Продажи товаров Партнерами (sales, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерами о продажах (без учета возвратов товара) товаров торговой марки EKF. Возможно предоставление данных как суммарно по всем юридическим лицам, так и отдельно по каждому юридическому лицу.

  • Имя метода: sales.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Атрибут Тип значения Описание данных Пример
date Дата в формате:гггг-мм-дд Дата и время данных по остаткам товара на момент времени 2018-02-15
location Строка Наименование склада, распределительного центра без пробелов на латинском Noginsk
vendorCode Строка Артикул товара mcb4763-1-01C-pro
unitInternationalCode Строка Кодовое буквенное обозначение (международное) единицы измерения согласно Общероссийскому классификатору единиц измерения ОК 015-94
PCE - Штука
KOM - Комплект
NMP - Упаковка
MTR - Метр
PCE
quantity Число, точность 3. Разделитель дробной части «.» Количество остатка товара 1000.000

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/partners/sales

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/partners/sales",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}',
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/partners/sales"

payload = {
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}
headers = {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/partners/sales");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.AddParameter("undefined", '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}', ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}');
Request request = new Request.Builder()
    .url("https://ekfgroup.com/api/v1/partners/sales")
    .post(body)
    .addHeader("Accept", "application/json")
    .addHeader("Content-Type", "application/json")
    .addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz")
    .build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/partners/sales",
"method": "POST",
"headers": {
  "Accept": "application/json",
  "Content-Type": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMzMDBkMGE0OGI2OTY1NGNhMTU3MDdlNTQ2MWU5Mjn92LyL1WrsdF92s4ypAilr6hMXaUsyNgzvWs3Xw64EsHVTBUb94spncNKXpjM3ZoGLgQHufNk6sZuujGMkQcwqMvr8ChpdALa6MvxNmp-FjWjXmLwqrK6lkXZrZfZwYre_JUMcPm-ieyUYJNrJIfXtKOE3ozxAN4zq8EcOE13SP-fGLPajdqZhiXcfocWOJ1fUAi_qJfnScaax4zf40-v9SsbE52lzYynQJTCWUHa-kcIs3RjJPLY-GjckX9rusuF67i3d1OeIhVumg2KO5zvNaBJ7VuXT1n8_22nOVxIw26mSD5gNlTDhUCDIkWxH--kWUPKKm9zPlQbovi0unEg5Xgnri28iWd79p5ib2SYmF24iQrQvScDl14e_9w3zyECndtxh_Jzfgj0-Tur-bMuRiRD9adX-KwumDkeRoCECBzrtBPeEf8LDr8a1JgHp7XMRxkKPQQMeMpkzcuOewFCm9eTSiefYh6qFgGQBvn0elJfFP5UWKLtDW1C7QygAi5syS0bBkajdkVkSsAOENzoZUl2Scxz24OGuGd-GMRvAIlCB4pxrWoGq1dKMCNiWLuMdENeCk0B7gbR4aiaGJtcb9icPbWyY4yEq7-bt58k99kIV_yzbXezi8384lyh",
},
"processData": false,
"data": {
    "date": "2018-02-15",
    "location": "Ryazan",
    "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
    "unitInternationalCode": "PCE",
    "quantity": "10.000"
}
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.1.4 Продажи товаров Партнерами (sales, пакетная выгрузка, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерами о продажах (без учета возвратов товара) товаров торговой марки EKF. Возможно предоставление данных как суммарно по всем юридическим лицам, так и отдельно по каждому юридическому лицу.

  • Имя метода: sales.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Атрибут Тип значения Описание данных Пример
date Дата в формате:гггг-мм-дд Дата и время данных по остаткам товара на момент времени 2018-02-15
location Строка Наименование склада, распределительного центра без пробелов на латинском Noginsk
Объект sales (продажи)
vendorCode Строка Артикул товара mcb4763-1-01C-pro
unitInternationalCode Строка Кодовое буквенное обозначение (международное) единицы измерения согласно Общероссийскому классификатору единиц измерения ОК 015-94
PCE - Штука
KOM - Комплект
NMP - Упаковка
MTR - Метр
PCE
quantity Число, точность 3. Разделитель дробной части «.» Количество остатка товара 1000.000

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/partners/sales

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/partners/sales",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "sales": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}',
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/partners/sales"

payload = {
    "date": "2018-02-15",
    "location": "Ryazan",
    "sales": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}
headers = {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/partners/sales");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.AddParameter("undefined", '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "sales": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}', ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{
    "date": "2018-02-15",
    "location": "Ryazan",
    "sales": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}');
Request request = new Request.Builder()
    .url("https://ekfgroup.com/api/v1/partners/sales")
    .post(body)
    .addHeader("Accept", "application/json")
    .addHeader("Content-Type", "application/json")
    .addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz")
    .build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/partners/sales",
"method": "POST",
"headers": {
  "Accept": "application/json",
  "Content-Type": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMzMDBkMGE0OGI2OTY1NGNhMTU3MDdlNTQ2MWU5Mjn92LyL1WrsdF92s4ypAilr6hMXaUsyNgzvWs3Xw64EsHVTBUb94spncNKXpjM3ZoGLgQHufNk6sZuujGMkQcwqMvr8ChpdALa6MvxNmp-FjWjXmLwqrK6lkXZrZfZwYre_JUMcPm-ieyUYJNrJIfXtKOE3ozxAN4zq8EcOE13SP-fGLPajdqZhiXcfocWOJ1fUAi_qJfnScaax4zf40-v9SsbE52lzYynQJTCWUHa-kcIs3RjJPLY-GjckX9rusuF67i3d1OeIhVumg2KO5zvNaBJ7VuXT1n8_22nOVxIw26mSD5gNlTDhUCDIkWxH--kWUPKKm9zPlQbovi0unEg5Xgnri28iWd79p5ib2SYmF24iQrQvScDl14e_9w3zyECndtxh_Jzfgj0-Tur-bMuRiRD9adX-KwumDkeRoCECBzrtBPeEf8LDr8a1JgHp7XMRxkKPQQMeMpkzcuOewFCm9eTSiefYh6qFgGQBvn0elJfFP5UWKLtDW1C7QygAi5syS0bBkajdkVkSsAOENzoZUl2Scxz24OGuGd-GMRvAIlCB4pxrWoGq1dKMCNiWLuMdENeCk0B7gbR4aiaGJtcb9icPbWyY4yEq7-bt58k99kIV_yzbXezi8384lyh",
},
"processData": false,
"data": {
    "date": "2018-02-15",
    "location": "Ryazan",
    "sales": [
        {
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "unitInternationalCode": "PCE",
            "quantity": "15.000"
        },
        {
            "vendorCode": "\u042f4762",
            "unitInternationalCode": "PCE",
            "quantity": "1000.000"
        },
        {
            "vendorCode": "apd2-ak0101",
            "unitInternationalCode": "PCE",
            "quantity": "2050.000"
        }
    ]
}
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.1.5 URL для карточек товаров (product-urls, версия 1)

Общие положения

API – метод предназначен для выгрузки Партнерами URL для карточек товаров.

  • Имя метода: product-urls.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты должны быть переданы в массиве data:

Атрибут Тип значения Описание данных Пример
type Число Тип сегмента:
1 - B2B,
2 - B2C,
3 - оба
3
vendorCode Строка Артикул товара mcb4763-1-01C-pro
url Строка Ссылка на товар https://ekfgroup.com/catalog/avtomaticheskie-vykljuchateli-modulnye-i-dop-ustrojstva/vykljuchateli-avtomaticheskie-serii-av-6

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/partners/product-urls

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/partners/product-urls",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{
    "data": [
        {
            "type": "2",
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "url": "https:\/\/ekfgroup.com\/this-is-example"
        },
        {
            "type": "1",
            "vendorCode": "apd2-dk20",
            "url": "https:\/\/ekfgroup.com\/this\/is\/example"
        }
    ]
}',
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/partners/product-urls"

payload = {
    "data": [
        {
            "type": "2",
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "url": "https:\/\/ekfgroup.com\/this-is-example"
        },
        {
            "type": "1",
            "vendorCode": "apd2-dk20",
            "url": "https:\/\/ekfgroup.com\/this\/is\/example"
        }
    ]
}
headers = {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz"
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/partners/product-urls");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Accept", "application/json");
request.AddParameter("undefined", '{
    "data": [
        {
            "type": "2",
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "url": "https:\/\/ekfgroup.com\/this-is-example"
        },
        {
            "type": "1",
            "vendorCode": "apd2-dk20",
            "url": "https:\/\/ekfgroup.com\/this\/is\/example"
        }
    ]
}', ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{
    "data": [
        {
            "type": "2",
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "url": "https:\/\/ekfgroup.com\/this-is-example"
        },
        {
            "type": "1",
            "vendorCode": "apd2-dk20",
            "url": "https:\/\/ekfgroup.com\/this\/is\/example"
        }
    ]
}');
Request request = new Request.Builder()
    .url("https://ekfgroup.com/api/v1/partners/product-urls")
    .post(body)
    .addHeader("Accept", "application/json")
    .addHeader("Content-Type", "application/json")
    .addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMz")
    .build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/partners/product-urls",
"method": "POST",
"headers": {
  "Accept": "application/json",
  "Content-Type": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImU1MzY2OWRjOThhMjAwN2JlNjc3ZDBjYmZhY2I1OTMzMDBkMGE0OGI2OTY1NGNhMTU3MDdlNTQ2MWU5Mjn92LyL1WrsdF92s4ypAilr6hMXaUsyNgzvWs3Xw64EsHVTBUb94spncNKXpjM3ZoGLgQHufNk6sZuujGMkQcwqMvr8ChpdALa6MvxNmp-FjWjXmLwqrK6lkXZrZfZwYre_JUMcPm-ieyUYJNrJIfXtKOE3ozxAN4zq8EcOE13SP-fGLPajdqZhiXcfocWOJ1fUAi_qJfnScaax4zf40-v9SsbE52lzYynQJTCWUHa-kcIs3RjJPLY-GjckX9rusuF67i3d1OeIhVumg2KO5zvNaBJ7VuXT1n8_22nOVxIw26mSD5gNlTDhUCDIkWxH--kWUPKKm9zPlQbovi0unEg5Xgnri28iWd79p5ib2SYmF24iQrQvScDl14e_9w3zyECndtxh_Jzfgj0-Tur-bMuRiRD9adX-KwumDkeRoCECBzrtBPeEf8LDr8a1JgHp7XMRxkKPQQMeMpkzcuOewFCm9eTSiefYh6qFgGQBvn0elJfFP5UWKLtDW1C7QygAi5syS0bBkajdkVkSsAOENzoZUl2Scxz24OGuGd-GMRvAIlCB4pxrWoGq1dKMCNiWLuMdENeCk0B7gbR4aiaGJtcb9icPbWyY4yEq7-bt58k99kIV_yzbXezi8384lyh",
},
"processData": false,
"data": {
    "data": [
        {
            "type": "2",
            "vendorCode": "rcbo6-1pn-63C-30-ac-av56",
            "url": "https:\/\/ekfgroup.com\/this-is-example"
        },
        {
            "type": "1",
            "vendorCode": "apd2-dk20",
            "url": "https:\/\/ekfgroup.com\/this\/is\/example"
        }
    ]
}
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.1.1 Товары (products, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам о товарах торговой марки EKF.

  • Имя метода: products.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) mcb4763-1-01C-pro
vendorСode Строка Артикул номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima
series Строка Серия номенклатуры PROxima
status Строка Статус номенклатуры Новая
multiplicity Число, точность 2. Разделитель дробной части «.» Кратность упаковки 1.00
productionTime Число Время производства 14 или 125
Объект productGroup (группа товара)
id Строка Уникальный идентификационный номер группы 3cf00bc0-60a3-11e7-80cd-0cc47a0cbffe
name Строка Наименование группы Характеристика D
series Строка Серия группы PROxima
Объект productType (вид номенклатуры)
name Строка Наименование вида номенклатуры Модульный автоматический выключатель
etimClass Строка ETIM Class номенклатуры EC000042
Объект manufacturedBy (страна происхождения товара)
name Строка Страна производства товара Россия
alfa2 Строка Код страны производства товара Общероссийский классификатор стран мира ОК (МК (ИСО3166) 004-97) 025-2001 код Альфа-2 RU
alfa3 Строка Код страны производства товара Общероссийский классификатор стран мира ОК (МК (ИСО3166) 004-97) 025-2001 код Альфа-3 RUS
Объект unitStorage (единица хранения)
internationalCode Строка Кодовое буквенное обозначение (международное) единицы измерения согласно Общероссийскому классификатору единиц измерения ОК 015-94 PCE
name Строка Наименование единицы измерения шт
barcode Строка Штрих-код единицы измерения 4690216154503
coefficient Число, точность 3. Разделитель дробной части «.» Количество единиц хранения в единице измерения номенклатуры 1.000
weight Число, точность 4. Разделитель дробной части «.» Вес единицы измерения в кг 0.1000
height Число, точность 4. Разделитель дробной части «.» Высота единицы измерения в м 0.0800
width Число, точность 4. Разделитель дробной части «.» Ширина единицы измерения в м 0.0180
depth Число, точность 4. Разделитель дробной части «.» Глубина единицы измерения в м 0.0730
volume Число, точность 8. Разделитель дробной части «.» Объем единицы измерения в м3 0.00010512
Объект unitGroupPacking (групповая упаковка)
internationalCode Строка Международный код единицы измерения PCE
name Строка Наименование единицы измерения шт
barcode Строка Штрих-код единицы измерения 4690216154503
coefficient Число, точность 3. Разделитель дробной части «.» Количество единиц хранения в единице измерения номенклатуры 1.000
weight Число, точность 4. Разделитель дробной части «.» Вес единицы измерения в кг 0.1000
height Число, точность 4. Разделитель дробной части «.» Высота единицы измерения в м 0.0800
width Число, точность 4. Разделитель дробной части «.» Ширина единицы измерения в м 0.0180
depth Число, точность 4. Разделитель дробной части «.» Глубина единицы измерения в м 0.0730
volume Число, точность 8. Разделитель дробной части «.» Объем единицы измерения в м3 0.00010512
Объект unitTransportPackaging (транспортная упаковка)
internationalCode Строка Международный код единицы измерения NMP
name Строка Наименование единицы измерения коробка (60 шт)
barcode Строка Штрих-код единицы измерения 4690216154503
coefficient Число, точность 3. Разделитель дробной части «.» Количество единиц хранения в единице измерения номенклатуры 120.000
weight Число, точность 4. Разделитель дробной части «.» Вес единицы измерения в кг 0.1000
height Число, точность 4. Разделитель дробной части «.» Высота единицы измерения в м 0.0800
width Число, точность 4. Разделитель дробной части «.» Ширина единицы измерения в м 0.0180
depth Число, точность 4. Разделитель дробной части «.» Глубина единицы измерения в м 0.0730
volume Число, точность 8. Разделитель дробной части «.» Объем единицы измерения в м3 0.00010512
Объект relatedProducts (покупают с данным товаром)
id Строка Уникальный идентификационный номер элемента (номенклатуры) 72c126f7-04d5-11e7-ab3e-000c29c6d5f2
vendorСode Строка Артикул номенклатуры av-m6-averes
shortName Строка Краткое наименование номенклатуры Привод моторный с режимом автовзвода AV-M6 EKF AVERES
name Строка Полное наименование номенклатуры Привод моторный с режимом автовзвода AV-M6 EKF AVERES
url URL Ссылка на данный товар https://ekfgroup.com/catalog/avtomaticheskie-vykljuchateli-differencialnogo-toka-i-uzo/avtomaticheskie-vykljuchateli-differencialnogo-toka-serii-dva-6/differentsialnyy-avtomat-dva-6-1pn-1a-d-30ma-ac-6ka-ekf-averes

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorСode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/ekf/catalog/products?vendorCode=rcbo6-1pn-1D-30-ac-av

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/catalog/products?vendorCode=rcbo6-1pn-1D-30-ac-av",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/catalog/products"

payload = {'vendorCode': 'rcbo6-1pn-1D-30-ac-av'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/catalog/products?vendorCode=rcbo6-1pn-1D-30-ac-av");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/catalog/products?vendorCode=rcbo6-1pn-1D-30-ac-av")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/catalog/products?vendorCode=rcbo6-1pn-1D-30-ac-av",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.1.2 Файлы продукции (files, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам о файлах торговой марки EKF.

  • Имя метода: files.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorCode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima
Объект files (файлы номенклатуры)
name Строка Наименование файла Дополнительное изображение
В объекте files объект fileType (тип файла)
id Строка Уникальный идентификационный номер типа файла f79f43cf-5fd0-11e6-b98c-000c29c6d5f2
code Строка Уникальный символьный идентификатор типа файла
3dmodel - 3Д - модель
additional_image - Дополнительное изображение
additional_photo - Дополнительное фото
advantages_file - Преимущества
advertisement - Листовка
banner - Баннер
booklet - Буклет
certificate - Сертификат
conditions - Условия
description_features - Описание и особенности
description_features_site - Описание и преимущества Сайт
description_file - Описание
doc - Документация
dwg - Чертеж
group_packing - Макет групповой упаковки
individual_packing - Макет индивидуальной упаковки
logo - Логотип
main_image - Основное изображение
manual - Инструкция
master_catalogue - Мастер-каталог
pac_group - Макет групповой
pac_transp - Макет транспортный
pac_unit - Макет единичный
pasport - Паспорт
promotions - Акции
reference - Референс
shtamp - Печать (штамп)
specifications_dimensions - Технические характеристики
standard_equipment - Типовая комплектация
table - Таблица
to_description - К описанию
transport_packing - Макет транспортной упаковки
usage_file - Применение
video - Видео
additional_image
name Строка Наименование типа файла Дополнительное изображение
file Строка Ссылка на файл https://ekfgroup.com/uploads/products/48048BF119F5F6.jpg

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorСode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima

Пример запроса/ответа

URL

https://ekfgroup.com/api/v1/ekf/catalog/files?vendorCode=rcbo6-1pn-1D-30-ac-av

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/catalog/files?vendorCode=rcbo6-1pn-1D-30-ac-av",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/catalog/files"

payload = {'vendorCode': 'rcbo6-1pn-1D-30-ac-av'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/catalog/files?vendorCode=rcbo6-1pn-1D-30-ac-av");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/catalog/files?vendorCode=rcbo6-1pn-1D-30-ac-av")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/catalog/files?vendorCode=rcbo6-1pn-1D-30-ac-av",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.1.3 Характеристики (свойства) товаров (properties, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам о характеристиках (свойствах) товаров торговой марки EKF.

  • Имя метода: properties.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorCode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima
Объект properties (свойства номенклатуры)
id Строка Уникальный идентификационный номер свойства 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
name Строка Наименование свойства Номинальный ток
etimFeature Строка ETIM Feature EF000001
value Строка Значение свойства 0,25
unit Строка Единица измерения значения свойства А
etimUnit Строка Код ETIM Unit EU570459

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorСode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/ekf/catalog/properties?vendorCode=rcbo6-1pn-1D-30-ac-av

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/catalog/properties?vendorCode=rcbo6-1pn-1D-30-ac-av",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/catalog/properties"

payload = {'vendorCode': 'rcbo6-1pn-1D-30-ac-av'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/catalog/properties?vendorCode=rcbo6-1pn-1D-30-ac-av");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/catalog/properties?vendorCode=rcbo6-1pn-1D-30-ac-av")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/catalog/properties?vendorCode=rcbo6-1pn-1D-30-ac-av",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.1.4 Цены продукции (prices, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам о ценах товаров торговой марки EKF.

  • Имя метода: prices.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorCode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
Объект prices (цены)
id Строка Уникальный идентификационный номер типа цены 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
name Строка Наименование типа цен Базовая цена
currency Строка Валюта цены руб.
price Число, точность 2. Разделитель дробной части «.» Цена продукции 52.00

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorСode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/ekf/catalog/prices?vendorCode=rcbo6-1pn-1D-30-ac-av

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/catalog/prices?vendorCode=rcbo6-1pn-1D-30-ac-av",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/catalog/prices"

payload = {'vendorCode': 'rcbo6-1pn-1D-30-ac-av'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/catalog/prices?vendorCode=rcbo6-1pn-1D-30-ac-av");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/catalog/prices?vendorCode=rcbo6-1pn-1D-30-ac-av")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/catalog/prices?vendorCode=rcbo6-1pn-1D-30-ac-av",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.1.5 Группы товаров (product-groups, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам о группах товаров торговой марки EKF.

  • Имя метода: product-groups.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
Объект product (товар)
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0624426b-3c5d-11e6-87e5-000c29c6d5f2
parentId Строка Идентификационный номер группы товара e9935bb2-c971-11e4-bfc3-005056b80040
name Строка Наименование номенклатуры 04.01 Выключатели силовые до 1000А AV Power EKF AVERES
hierarchyLevel Число Иерархический уровень товара 2
mainImage Строка Ссылка на изображение товара https://ekfgroup.com/uploads/products/30DA434AB1B7EB485AED319214625A95.jpg

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
parentId Строка Идентификационный номер группы товара e9935bb2-c971-11e4-bfc3-005056b80040
name Строка Наименование номенклатуры 04.01 Выключатели силовые до 1000А AV Power EKF AVERES

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/ekf/catalog/product-groups?parentId=e9935bb2-c971-11e4-bfc3-005056b80040

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/catalog/product-groups?parent_id=e9935bb2-c971-11e4-bfc3-005056b80040",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/catalog/product-groups"

payload = {'parent_id': 'e9935bb2-c971-11e4-bfc3-005056b80040'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/catalog/product-groups?parent_id=e9935bb2-c971-11e4-bfc3-005056b80040");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/catalog/product-groups?parent_id=e9935bb2-c971-11e4-bfc3-005056b80040")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/catalog/product-groups?parent_id=e9935bb2-c971-11e4-bfc3-005056b80040",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.2 Остатки (stocks, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам об остатках товаров торговой марки EKF.

  • Имя метода: stocks.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorCode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima
quantity Число, точность 3. Разделитель дробной части «.» Количество остатка товара на складе 1000.000
Объект warehouse (склад)
id Строка Уникальный идентификационный номер свойства 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
name Строка Наименование склада Региональный склад EKF, Новосибирск г
short_name Строка Краткое наименование склада Региональный склад в Новосибирске
location Строка Расположение склада 321232, Новосибирск г, Бирюлева ул, дом № 12

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
vendorСode Строка Артикул номенклатуры mcb4763-1-01C-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima
Объект warehouse (склад)
warehouse_id Строка Уникальный идентификационный номер склада 0a83c726-6cc4-11dc-9807-0080484601b3
warehouse_short_name Строка Краткое наименование склада Региональный склад в Новосибирске

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/ekf/stocks?vendorCode=rcbo6-1pn-1D-30-ac-av

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/stocks?vendorCode=rcbo6-1pn-1D-30-ac-av",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/stocks"

payload = {'vendorCode': 'rcbo6-1pn-1D-30-ac-av'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/stocks?vendorCode=rcbo6-1pn-1D-30-ac-av");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/stocks?vendorCode=rcbo6-1pn-1D-30-ac-av")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/stocks?vendorCode=rcbo6-1pn-1D-30-ac-av",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.3 Склады (warehouses, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам о складах торговой марки EKF.

  • Имя метода: warehouses.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер склада 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
name Строка Наименование склада Региональный склад EKF, Новосибирск г
shortName Строка Краткое наименование склада Региональный склад в Новосибирске
location Строка Расположение склада 321232, Новосибирск г, Бирюлева ул, дом № 12

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер склада 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
name Строка Наименование склада Региональный склад EKF, Новосибирск г
shortName Строка Краткое наименование склада Региональный склад в Новосибирске
location Строка Расположение склада 321232, Новосибирск г, Бирюлева ул, дом № 12

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/ekf/warehouses?id=0a83c726-6cc4-1

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/warehouses?id=0a83c726-6cc4-1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/warehouses"

payload = {'id': '0a83c726-6cc4-1'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/warehouses?id=0a83c726-6cc4-1");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/warehouses?id=0a83c726-6cc4-1")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/warehouses?id=0a83c726-6cc4-1",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});

5.2.4 Предполагаемые поступления (receipts, версия 1)

Общие положения

API – метод предназначен для предоставления данных Партнерам о предполагаемых поступлениях товаров торговой марки EKF.

  • Имя метода: receipts.
  • Запрос:
  • Версия: 1.
  • Формат выдачи ответа API: JSON.

Атрибуты

Все атрибуты в массиве data:

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) mcb4763-1-01C-pro
vendorСode Строка Артикул номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
shortName Строка Краткое наименование номенклатуры Авт. выкл. 1P 1А (C) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 1P 1А (C) 4,5kA ВА 47-63 EKF PROxima
Объект receipt (предполагаемые поступления)
quantity Число, точность 3. Разделитель дробной части «.» Количество остатков товара 592.000
date Дата в формате: ГГГГ-ММ-ДД ЧЧ:ММ:СС Предполагаемая дата поступления 2018-11-09 12:00:00
Объект warehouse (склад)
id Строка Уникальный идентификационный номер склада 0001cc0d-efa2-11e6-bd2e-000c29c6d5f2
name Строка Наименование склада Региональный склад EKF, Новосибирск г
shortName Строка Краткое наименование склада Региональный склад в Новосибирске
location Строка Расположение склада 321232, Новосибирск г, Бирюлева ул, дом № 12

Параметры

Атрибут Тип значения Описание данных Пример
id Строка Уникальный идентификационный номер элемента (номенклатуры) ed8be717-c218-11e2-abc0-005056b80040
vendorCode Строка Артикул номенклатуры mcb4763-2-63D-pro
shortName Строка Краткое наименование номенклатуры Авт. выкл. 2P 63А (D) 4,5kA ВА 47-63 EKF
name Строка Полное наименование номенклатуры Автоматический выключатель 2P 63А (D) 4,5kA ВА 47-63 EKF PROxima

Пример запроса/ответа

URL:

https://ekfgroup.com/api/v1/ekf/receipts?vendorCode=mcb4763-2-63D-pro

Data:

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://ekfgroup.com/api/v1/ekf/receipts?vendorCode=mcb4763-2-63D-pro",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
    "Accept: application/json",
    "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
    ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
import requests

url = "https://ekfgroup.com/api/v1/ekf/receipts"

payload = {'vendorCode': 'mcb4763-2-63D-pro'}

headers = {
'Accept': 'application/json',
'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ'
}

response = requests.request("GET", url, headers=headers, params=payload)

print(response.text)
var client = new RestClient("https://ekfgroup.com/api/v1/ekf/receipts?vendorCode=mcb4763-2-63D-pro");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0");
request.AddHeader("Accept", "application/json");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
.url("https://ekfgroup.com/api/v1/ekf/receipts?vendorCode=mcb4763-2-63D-pro")
.get()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ")
.build();

Response response = client.newCall(request).execute();
var settings = {
"async": true,
"crossDomain": true,
"url": "https://ekfgroup.com/api/v1/ekf/receipts?vendorCode=mcb4763-2-63D-pro",
"method": "GET",
"headers": {
  "Accept": "application/json",
  "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjMzMjY2MzQ5OWQyOTZjZTM1ZjVmNTAwYWU2ZDhjMjEzZjBmYTNiYThkMGJlYTliNzdiYjRkMGY5ZGZlM2U4MzkzN2RkOTNmYTRiMTlmNjEzIn0.eyJhdWQiOiIzIiwianRpIjoiMzMyNjYzNDk5ZDI5NmNlMzVmNWY1MDBhZTZkOGMyMTNmMGZhM2JhOGQwYmVhOWI3N2JiNGQwZjlkZ"
  }
}

$.ajax(settings).done(function (response) {
console.log(response);
});