Wrapper to use the Lumeta Spectre API
Project description
spectre-api-python
General
This module is intended to make it a bit easier to work with The Lumeta Corporation's Spectre API.
Lumeta and Spectre are both registered trademarks of the Lumeta Corporation
Install this module by running pip3 install spectre-api
Introduction
This Python module is intended to be a relatively light weight wrapper around the Spectre API. The idea is to abstract out some of the authentication and paging pieces to make it easier to focus on fine-tuning the actual underlying calls. Basically, you configure a server (currently using username/password or API Key authentication) and then have it perform API calls. For example:
>>> import spectreapi
>>> s = spectreapi.UsernameServer("cc", "username", "password")
>>> r = s.get("zonedata/devices", params = { "filter.zone.id": 1} )
>>> for d in r:
... if d['ip'] is not None:
... print(d['ip'])
...
10.2.1.1
10.201.0.1
10.201.0.7
10.202.0.1
10.202.0.2
172.18.1.180
>>>
Servers
A Server is the base class that has most of the functionality needed to use the Spectre API. You'll instantiate a more specific Server based on which authentication method you're using.
UsernameServer
spectreapi.UsernameServer(<server>, <username>, <password>, [<page_size>,] [<verify>])
Where:
<server>
= The IP address or DNS name of the Spectre Command Center
<username>
= Username
<password>
= Password
<page_size>
= How many results should a GET request return at a time.
<verify>
= Should we verify the SSL certificate of the server (True or False, defaults to False). You'll want to leave this a False unless you've given your command center an actual SSL certificate.
Behind the scenes, this makes an API call to system/information
with basic authentication
(over https) and then uses the resulting JSESSIONID cookie for the rest of the time.
APIKeyServer
spectreapi.APIKeyServer(<server>, <api_key>, [, <page_size>] [, <verify>])
Where:
<server>
= The IP address or DNS name of the Spectre Command Center
<api_key>
= API Key for API access. You get this via the GUI or by issuing the
user key new <username>
command at the command center CLI.
<page_size>
= How many results should a GET request return at a time.
<verify>
= Should we verify the SSL certificate of the server (True or False, defaults to False). You'll want to leave this a False unless you've given your command center an actual SSL certificate.
GET, POST, PUT, DELETE
Notes on using the underlying Spectre API
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
Built Distribution
Hashes for spectre_api-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c4caa275acea3ecd1e61113d1a925bfc75226b5d1943ff2547bc287ce4b2988 |
|
MD5 | dd97e9034addba907deca19482ce70bb |
|
BLAKE2b-256 | 605f77597081a80ab1e507e71c6ab11fbf45e8969d3413b355d3b161b225c5fd |