require_once dirname(__FILE__).'/include/func.inc.php';
require_once dirname(__FILE__).'/include/defines.inc.php';
require_once dirname(__FILE__).'/include/classes/user/CWebUser.php';
require_once dirname(__FILE__).'/include/classes/core/CHttpRequest.php';
$requestType = getRequest('type', PAGE_TYPE_JSON);
if ($requestType == PAGE_TYPE_JSON) {
$http_request = new CHttpRequest();
$data = json_decode($http_request->body(), true);
if (is_array($data) && array_key_exists('method', $data) && $data['method'] === 'zabbix.status') {
CWebUser::disableSessionExtension();
require_once dirname(__FILE__).'/include/config.inc.php';
$page['file'] = 'jsrpc.php';
$page['type'] = detect_page_type($requestType);
require_once dirname(__FILE__).'/include/page_header.php';
if (!is_array($data) || !isset($data['method'])
|| ($requestType == PAGE_TYPE_JSON && (!isset($data['params']) || !is_array($data['params'])))) {
fatal_error('Wrong RPC call to JS RPC!');
$limit = CSettingsHelper::get(CSettingsHelper::SEARCH_LIMIT);
switch ($data['method']) {
$result = API::Host()->get([
'output' => ['hostid', 'name'],
'search' => ['name' => $data['params']['search'], 'host' => $data['params']['search']],
if (!CSessionHelper::has('serverCheckResult')