panopta/php-panopta-api-client

A thin PHP wrapper for the Panopta API

1.1.0 2015-08-28 04:11 UTC

This package is not auto-updated.

Last update: 2024-04-27 16:25:35 UTC


README

The Panopta REST API provides full access to all configuration, status and outage management functionality of the Panopta monitoring service, including the ability to create and modify monitoring checks that are being performed, manage notification configuration, respond to active outages and to pull availability statistics for monitored servers.

Installation

Run the Composer require command:

composer require panopta/php-panopta-api-client

Add the Composer autoloader to your project:

require 'vendor/autoload.php';

API Documentation

Full documentation for the API is available at https://api2.panopta.com/v2/api-docs/. By entering your API token you can view full details on all of the API methods and issue API requests from the documentation page. A token can be generated from the API management section of the Settings menu in the control panel at https://my.panopta.com.

Usage

The library provides a wrapper around the Panopta REST API, making it easy to issue GET, POST, PUT and DELETE operations to the API.

Instantiate the Panopta API client

$client = Panopta\ApiClient(
    'https://api2.panopta.com',
    'your-api-token',
    2, // API version
    Panopta\ApiClient::LOG_DEBUG,
    'logs/' // Log directory
);

GET

$fiveContacts = $client->get('/contact', ['limit' => 5]);

$serversWithACertainFullyQualifiedDomainName = $client->get(
    '/server',
    ['fqdn' => 'panopta.com']
);

$serverFortyTwo = $client->get('/server/42');

POST

$newNotificationSchedule = $client->post(
    '/notification_schedule',
    ['name' => 'New Notification Schedule', 'targets' => [$serverFortyTwo['url']]]
);

PUT

$updatedServerGroup = $client->put(
    '/server_group',
    [
        'name' => 'Updated Server Group',
        'notification_schedule' => $newNotificationSchedule['url']
    ]
);

DELETE

$client->delete('/contact/1');