<aside> ℹ️ В случае несоответствия языковых версий документации приоритетной считается версия на украинском языке.
</aside>
Шлюз: 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-urlencoded | param_1=2¶m_2=4 |
Названия полей и значения необходимо передавать в кодировке UTF-8. Результат также возвращается в кодировке UTF-8.
<aside> ℹ️ Важно
При использовании кодировки UTF-8 в запросах необходимо данные передавать без BOM строки.
Для ответов в кодировке UTF-8 также возвращается без BOM
Также настоятельно рекомендуется использовать запросы JSON POST с Content-type: application/json заголовком
</aside>
Начиная с Хорошопа версии 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 | Содержит ответ сервера в зависимости от статуса и функции |