Metadata-Version: 2.1
Name: cyapi
Version: 0.9.16
Summary: Python bindings for Cylance Console
Home-page: https://github.com/cylance/python-cyapi
License: MIT
Author: Shane Shellenbarger
Author-email: soggysec@gmail.com
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Requires-Dist: futures; python_version == "2.7"
Requires-Dist: pyjwt
Requires-Dist: python-dateutil
Requires-Dist: pytz
Requires-Dist: requests
Requires-Dist: tqdm
Project-URL: Repository, https://github.com/cylance/python-cyapi
Description-Content-Type: text/markdown

# Summary

This Library provides python bindings to interact with the Cylance API. Examples have been created for you in the Examples/ directory, and provide a majority of the common code you'll need to get setup. In order to utilize this Library, you will need an API token from the API Integrations tab inside of the Cylance Console.

# Supported Systems
* Python 2.7 & Python 3 Compatible
* Windows
* Mac

# Installation

```
python setup.py install
```

# Example

This example will create a connection to the API and return all devices that have registered.

```
from cyapi.cyapi import CyAPI
from pprint import pprint
API = CyAPI(tid=your_id, aid=your_aid, ase=your_ase)
API.create_conn()
devices = API.get_devices()
print("Successful: {}".format(devices.is_success))
pprint(devices.data[0]) # Print info about a single device.
```

If you have lots of devices/threats/zones/etc, and you'd like to see a progress bar, pass the `disable_progress` parameter:

```
devices = API.get_devices(disable_progress=False)
pprint(devices.data[0])
```

Additionally you can copy examples/simple_setup.py to your_new_file.py and begin hacking away from there.

# Creds File

You can create a file that will store your api credentials instead of passing them in via the command line. The creds file should look like the following:

creds.json:
```
{
    "tid": "123456-55555-66666-888888888",
    "app_id": "11111111-222222-33333-44444444",
    "app_secret": "555555-666666-222222-444444",
    "region": "NA"
}
```

This file can then be passed in by passing -c path/to/creds.json to any of the examples

