Skip to content

Ikke/phpzabbix

Repository files navigation

PHPZabbix

Zabbix PHP API library based on pyzabbix.

Example

$api = phpzabbix\PHPZabbix::withDefaultClient('http://example.com/zabbix/api_jsonrpc.php');
$api->login('username', 'password');

$hosts = $api->host->get(['output' => ['hostid', 'name']]);

It's also possible to directly set the authorization token, either obtained earlier by logging in, or an API token:

$api = phpzabbix\PHPZabbix::withDefaultClient('http://example.com/zabbix/api_jsonrpc.php');
$api->authToken = 'abcdef123456';

$hosts = $api->host->get(['output' => ['hostid', 'name']]);

Error handling

The following exceptions can be thrown:

  • phpzabbix\Exception\NotAuthorized when trying to make an API call with an invalid or expired auth hash.

  • phpzabbix\Exception\InvalidCredentials when trying to login with invalid credentials.

  • phpzabbix\JSONRPC\ErrorException on other errors, such as invalid API calls

Documentation

The PHPZabbix class does not know every API call, but just translates $api->obj->method() to 'obj.method'. The method call takes an array which is passed as params.

Refer to the Zabbix API for more information about the Zabbix API itself.

Compattibility

This library should work with Zabbix 3.0 and higher. Older versions should also work, but that has not been verified.

License

This code is distributed under the GPLv3 license.

About

PHP Zabbix API library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages