Panopta API Client
Project description
Panopta API Python Package
==========================
The Panopta API (previously `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. This package makes it simple to interact with
the Panopta API.
# API Documentation
Full documentation for the API is available at
[https://api2.panopta.com/v2/api-docs/](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.
# Installation
```bash
pip install panopta_api
```
# Usage
The library provides a wrapper around the Panopta API, making it easy to issue
GET, POST, PUT and DELETE operations to the API. The `Client` is an adapter
built on top of [Requests](http://python-requests.org), so anything you can do
with a `requests.Session`, you can with `panopta_api.Client`.
## Instantiate the Panopta API client
```python
from panopta_api import Client
client = Client('your-api-key',
host='http://api2.panopta.com',
version='2',
log_level=Client.LOG_INFO,
log_path='logs/')
```
## Generate API urls
```python
resource = 'server'
id = '123'
collection = 'network_service'
server_network_services = client.url(resource, id, collection)
```
## GET
```python
five_contacts = client.get(client.url('contact'), params={'limit': 5});
servers_with_a_certain_fully_qualified_domain_name = client.get(
client.url('server'),
params={'fqdn': 'panopta.com'}
)
server_forty_two = client.get(client.url('server', '42'))
```
## POST
```python
new_notification_schedule = client.post(
client.url('notification_schedule'),
json={'name': 'New Notification Schedule',
'targets': [server_forty_two['url']]}
)
```
## PUT
```python
updated_server_group = client.put(
client.url('server_group'),
json={'name': 'Updated Server Group',
'notification_schedule': new_notification_schedule['url']}
)
```
## DELETE
```python
client.delete(client.url('contact', '1'))
```
==========================
The Panopta API (previously `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. This package makes it simple to interact with
the Panopta API.
# API Documentation
Full documentation for the API is available at
[https://api2.panopta.com/v2/api-docs/](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.
# Installation
```bash
pip install panopta_api
```
# Usage
The library provides a wrapper around the Panopta API, making it easy to issue
GET, POST, PUT and DELETE operations to the API. The `Client` is an adapter
built on top of [Requests](http://python-requests.org), so anything you can do
with a `requests.Session`, you can with `panopta_api.Client`.
## Instantiate the Panopta API client
```python
from panopta_api import Client
client = Client('your-api-key',
host='http://api2.panopta.com',
version='2',
log_level=Client.LOG_INFO,
log_path='logs/')
```
## Generate API urls
```python
resource = 'server'
id = '123'
collection = 'network_service'
server_network_services = client.url(resource, id, collection)
```
## GET
```python
five_contacts = client.get(client.url('contact'), params={'limit': 5});
servers_with_a_certain_fully_qualified_domain_name = client.get(
client.url('server'),
params={'fqdn': 'panopta.com'}
)
server_forty_two = client.get(client.url('server', '42'))
```
## POST
```python
new_notification_schedule = client.post(
client.url('notification_schedule'),
json={'name': 'New Notification Schedule',
'targets': [server_forty_two['url']]}
)
```
## PUT
```python
updated_server_group = client.put(
client.url('server_group'),
json={'name': 'Updated Server Group',
'notification_schedule': new_notification_schedule['url']}
)
```
## DELETE
```python
client.delete(client.url('contact', '1'))
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
panopta_api-2.0.0.tar.gz
(2.8 kB
view hashes)
Built Distribution
Close
Hashes for panopta_api-2.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 944dfefdb656af298ec306460c297ba5fa50c06f47c24e4fdf216e4acfebba84 |
|
MD5 | 1c87d1bdaef003d233bd2c116304b290 |
|
BLAKE2b-256 | d29f035d4dd0fd91e7bfa6b5ae5f51d4aa48a6a6e692c78eb3d17a86f49ffb5a |