мета-данные страницы
Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
api [26.03.2024 06:03] tima_eremeev |
api [27.04.2024 14:40] (текущий) Anatoly [Оглавление] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Api ====== | + | ====== Документация по Api ====== |
===== Api Личного кабинета версии 1.4 ===== | ===== Api Личного кабинета версии 1.4 ===== | ||
Строка 6: | Строка 6: | ||
[[#Описание API|Описание API]]\\ | [[#Описание API|Описание API]]\\ | ||
[[#Формат команд|Формат команд]]\\ | [[#Формат команд|Формат команд]]\\ | ||
+ | [[#Примеры интеграции]]\\ | ||
[[#Коды ошибок API|Коды ошибок API]]\\ | [[#Коды ошибок API|Коды ошибок API]]\\ | ||
[[#Авторизация|Авторизация]]\\ | [[#Авторизация|Авторизация]]\\ | ||
Строка 112: | Строка 113: | ||
//**В ответе на запрос могут присутствовать поля, не описанные в настоящей документации. Приложению следует их игнорировать.**// | //**В ответе на запрос могут присутствовать поля, не описанные в настоящей документации. Приложению следует их игнорировать.**// | ||
+ | ---- | ||
+ | ===== Примеры интеграции ===== | ||
+ | |||
+ | **Пример запросов на php:** | ||
+ | |||
+ | <sxh php> | ||
+ | $curl = curl_init(); | ||
+ | |||
+ | curl_setopt_array($curl, [ | ||
+ | CURLOPT_URL => "//himinfo.ru/cl/{Path}/api/?command=".urlencode('{"param1": "{$param1}", "param2": "{$param2}", "param3": "{$param3}"}'), | ||
+ | CURLOPT_RETURNTRANSFER => true, | ||
+ | CURLOPT_ENCODING => "", | ||
+ | CURLOPT_MAXREDIRS => 10, | ||
+ | CURLOPT_TIMEOUT => 30, | ||
+ | CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, | ||
+ | CURLOPT_CUSTOMREQUEST => "GET", | ||
+ | CURLOPT_POSTFIELDS => "", | ||
+ | ]); | ||
+ | |||
+ | $response = curl_exec($curl); | ||
+ | $err = curl_error($curl); | ||
+ | |||
+ | curl_close($curl); | ||
+ | |||
+ | if ($err) | ||
+ | echo "cURL Error #:" . $err; | ||
+ | else | ||
+ | echo $response; | ||
+ | </sxh> | ||
+ | |||
+ | **Пример запросов на JavaScript:** | ||
+ | |||
+ | <sxh javascript> | ||
+ | const data = null; | ||
+ | |||
+ | const xhr = new XMLHttpRequest(); | ||
+ | xhr.withCredentials = true; | ||
+ | |||
+ | xhr.addEventListener("readystatechange", function () { | ||
+ | if (this.readyState === this.DONE) | ||
+ | console.log(this.responseText); | ||
+ | }); | ||
+ | |||
+ | xhr.open("GET", '//himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val()+ '"}'); | ||
+ | |||
+ | xhr.send(data); | ||
+ | </sxh> | ||
- | **Пример запросов jQuery.** | + | **Пример запросов на jQuery:** |
- | Функция encodeURIComponent выполняется для всех значений параметров команды: | + | Функция __encodeURIComponent__ выполняется для всех значений параметров команды: |
<sxh javascript> | <sxh javascript> | ||
- | '//www.himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val()+ '"}'), | + | '//himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val()+ '"}'), |
</sxh> | </sxh> | ||
Строка 124: | Строка 172: | ||
<sxh javascript> | <sxh javascript> | ||
$.ajax({ | $.ajax({ | ||
- | 'url': '//www.himinfo.ru/cl/{Path}/api/', | + | 'url': '//himinfo.ru/cl/{Path}/api/', |
'data': {'command': '{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val() + '"}'}, | 'data': {'command': '{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val() + '"}'}, | ||
'dataType': 'jsonp', | 'dataType': 'jsonp', | ||
Строка 137: | Строка 185: | ||
<sxh javascript> | <sxh javascript> | ||
$.ajax({ | $.ajax({ | ||
- | 'url': '//www.himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + email.val() + '", "param1": "' + name.val()+ '"}'), | + | 'url': '//himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + email.val() + '", "param1": "' + name.val()+ '"}'), |
'dataType': 'jsonp', | 'dataType': 'jsonp', | ||
'success': function(response, ioArgs){}, | 'success': function(response, ioArgs){}, | ||
Строка 2353: | Строка 2401: | ||
где\\ | где\\ | ||
- | //PromoCode// - активируемый промо-код; | + | //PromoCode// - активируемый промо-код, **обязательный параметр**;\\ |
- | + | //dor_id// – ID заказа (для проверки кол-ва заказов клиента), **необязательный параметр**.\\ | |
- | //dor_id// - ID заказа (необязательный). | + | |
Строка запроса: <code>.../api/?PromoCodeActivate=%7B%22PromoCode%22%3A%22123%22%7D&%7B%22dor_id%22%3A%2212345%22%7D&SessionID=...</code> | Строка запроса: <code>.../api/?PromoCodeActivate=%7B%22PromoCode%22%3A%22123%22%7D&%7B%22dor_id%22%3A%2212345%22%7D&SessionID=...</code> |