checkitonus / cachet-api
PHP Implementation of the Cachet API
Installs: 35 496
Dependents: 0
Suggesters: 0
Security: 0
Stars: 8
Watchers: 3
Forks: 2
Open Issues: 0
Requires
- php: >=5.6.0
- cocur/slugify: ^2.5
- composer/semver: ^1.4
- guzzlehttp/guzzle: ^6.3
- nesbot/carbon: ^1
- tightenco/collect: ^5.4
Requires (Dev)
- psy/psysh: *
README
Easy to use Cachet API implementation.
Installation
$ composer require checkitonus/cachet-api
{
"require": {
"checkitonus/cachet-api": "~1"
}
}
Then, in your PHP file, all you need to do is require the autoloader:
require_once 'vendor/autoload.php'; use CheckItOnUs\Cachet\Server; $server = new Server([ 'api_key' => 'API-KEY', 'base_url' => 'https://demo.cachethq.io', // The base URL for the Cachet installation ]); // Should return pong echo $server->ping();
API Components
Once installed, you will have access to several objects all of which will hit the API and retrieve the data as needed.
Please Note: Although all of these samples are using the Component
class, they are available for the following objects:
- CheckItOnUs\Cachet\Component
- CheckItOnUs\Cachet\ComponentGroup
- CheckItOnUs\Cachet\Incident
- CheckItOnUs\Cachet\IncidentUpdate (In development - Cachet 2.4 feature)
require_once 'vendor/autoload.php'; use CheckItOnUs\Cachet\Server; use CheckItOnUs\Cachet\Component; $server = new Server([ 'api_key' => 'API-KEY', 'base_url' => 'https://demo.cachethq.io', // The base URL for the Cachet installation ]); // Find a component based on the name $component = Component::on($server)->findByName('API'); // Find a component based on the ID $component = Component::on($server)->findById(1); // Find all components Component::on($server)->all();
CRUD Operations
Creation
require_once 'vendor/autoload.php'; use CheckItOnUs\Cachet\Server; use CheckItOnUs\Cachet\Component; $server = new Server([ 'api_key' => 'API-KEY', 'base_url' => 'https://demo.cachethq.io', // The base URL for the Cachet installation ]); // Fluent API $component = (new Component($server)) ->setName('Name Here') ->setStatus(Component::OPERATIONAL) ->create();
Update
require_once 'vendor/autoload.php'; use CheckItOnUs\Cachet\Server; use CheckItOnUs\Cachet\Component; $server = new Server([ 'api_key' => 'API-KEY', 'base_url' => 'https://demo.cachethq.io', // The base URL for the Cachet installation ]); // Fluent API Component::on($server) ->findById(1) ->setName('Name Here') ->setStatus(Component::OPERATIONAL) ->update();
Delete
require_once 'vendor/autoload.php'; use CheckItOnUs\Cachet\Server; use CheckItOnUs\Cachet\Component; $server = new Server([ 'api_key' => 'API-KEY', 'base_url' => 'https://demo.cachethq.io', // The base URL for the Cachet installation ]); // Fluent API Component::on($server) ->findById(1) ->delete();