Обращение к API происходит по протоколу HTTP/HTTPS и использует метод POST передачи данных в виде JSON. В самом запросе URI указывает на объект (класс), а тело запроса содержит метод этого класса и параметры вызова.
Для большинства запросов к API вам потребуется передавать токен, полученный после авторизации. Получить токен можно отправив следующий запрос на URL https://api.sweb.ru/notAuthorized/
version - текущая версия клиента приложения. Носит только информационный характер, используется в отчетах об ошибках method - публичный метод объекта Domains
params - ассоциативный массив параметров метода (ключ элемента массива - имя параметра)
id - уникальный идентификатор запроса
user - идентификатор пользователя, который отправляет запрос. Носит только информационный характер, сверяется со значением сессии токена и в случае расхождения приводит к ошибке авторизации
Параметр jsonrpc является обязательным. Если не передан id, то он будет сформирован на стороне API. Если не передан method будет вызван дефолтный метод для объекта.
result - результат, который возвращает вызванный метод
id - уникальный идентификатор ответа, если был в запросе, то совпадает с ним
Все параметры в ответе являются обязательными.
Сообщение об ошибке
В случае возникновения ошибок, ответ вместо параметра result будет содержать error с двумя значениями code и message. Например:
{"jsonrpc":"2.0","version":"0.1","id":"20183910121.UPNWsDxwmn","error":{"code":-32601,"message":"Object not
found"}}
Описание параметров:
jsonrpc - текущая версия JSON-RPC
version - текущая версия клиента
error - объект ошибки, который содержит (code - код ошибки http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php и message - текст ошибки)
id - уникальный идентификатор ответа, если был в запросе, то совпадает с ним
Все параметры в ответе являются обязательными. Важно: HTTP-код ответа при этом всегда будет 200 Расширенное сообщение о результатах работы метода
Если метод кроме успешного или неуспешного результата должен передать клиенту какое-то кастомизированное сообщение или данные, то применяется общий тип ExtendedResult для таких ответов. Например: