/
Повна документація Хорошоп API

Повна документація Хорошоп API

Основна версія документації.  У випадку розбіжності між мовними версіями пріоритетною вважається документація українською мовою.


Шлюз: http(s)://<DOMAIN>/api/

Логін і пароль - необхідно створити в адмінпанелі сайту, вкладка Налаштування — Адміни.


API працює за протоколом HTTP/HTTPs. Функції передаються через адресний рядок у вигляді "http://<DOMAIN>/api/<FUNCTION>/".

Якщо сайт знаходиться на https, то необхідно звертатися до API, вказуючи протокол https.


Наприклад: https://<DOMAIN>/api/<FUNCTION>/.

Параметри для функції можна передавати двома способами:


Тип

Уточнення

Приклад

JSON POST (рекомендовано)

Необхідно передати в заголовку запиту поле Content-type: application/json, для коректної обробки даних на сервері. Параметри необхідно передавати в тілі запиту у форматі JSON{“param_1”:”1”,”param_2”:”4”}
POST (застарілий)Передається стандартно відповідно до специфікацій HTTP 1.1 (у тілі запиту). Обов'язково потрібно передавати Заголовок Content-type: multipart/form-data або Content-type: application/x-www-form-urlencodedparam_1=2&param_2=4

Назви полів і значення необхідно передавати в кодуванні UTF-8. Результат також повертається в кодуванні UTF-8.

Важливо

Під час використання кодування UTF-8 у запитах необхідно дані передавати без BOM рядка.

Для відповідей у кодуванні UTF-8 також повертається без BOM.

Також наполегливо рекомендуємо використовувати запити JSON POST з Content-type: application/json заголовком.

Починаючи з Хорошопа 3.8.0, якщо Ви віддаєте контент через JSON POST метод у кодуванні, відмінному від UTF-8, то необхідно це явно вказати в заголовку (наприклад: "Content-type: application/json; charset=windows-1251").

Якщо Вам необхідно отримати відповідь від сервера в кодуванні, відмінному від UTF-8, то також необхідно вказати заголовок Accept-Charset із зазначенням потрібного кодування (див. https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.2).


Відповідь завжди повертається у форматі JSON. Містить поля:

Поле

Призначення

Опис

status

Відображає статус виконаного запиту

Можливі значення:

"OK" - виконання функції пройшло успішно;

"UNAUTHORIZED" - потрібна авторизація або не передано токен;

"AUTHORIZATION_ERROR" - помилка під час авторизації;

"EXCEPTION" - помилка сервера;

"ERROR" - будь-яка помилка (пояснення може бути в полі response.message);

"EMPTY" - немає результатів після виконання функції;

"UNDEFINED_FUNCTION" - виклик неіснуючої функції,

"HTTP_ERROR" - HTTP помилка (поле response.code містить HTTP код, response.message - пояснення до коду помилки)

response

Містить відповідь сервера залежно від статусу та функції



Приклад JSON POST запиту

POST https://foo.bar/api/func/action
Content-Type: application/json

{"param_1": "value_1", "param_2": "value_2"}


Приклад формату відповіді сервера

Пример ответа
{
	"status": "OK",
	"response": {"foo": "bar"}
}


Логи запитів і відповідей сервера доступні за адресою http://<DOMAIN>/api/logs/, для того щоб логи працювали, необхідно авторизуватися в адмін. панелі за адресою http://<DOMAIN>/edit/login.php (можна використовувати логін і пароль для api).




Функції:



Related content

Документация по API
Документация по API
More like this
Авторизація
Авторизація
More like this
Авторизация
Авторизация
More like this
Отримання списку замовлень
Отримання списку замовлень
More like this
Імпорт товарів в каталог
Імпорт товарів в каталог
Read with this
Можливі помилки при роботі з API та причини їх виникнення
Можливі помилки при роботі з API та причини їх виникнення
More like this