Skip to main content

Python bindings for Cylance Console and MTC

Project description

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
  • Linux

Installation

pip install cyapi

Example

Please note there are a number of example scripts in the examples directory. These are valuable for initial authentication as well as some basic interactions with the library. The example scripts include: Single Tenant

simple_setup.py find_stale_devices.py safelist_trusted_local.py time_getting_all_detection_detail.py

Multi-Tenant Console (MTC)

simple_MTC_setup.py MTC_tenants_loop.py

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:

For a standard tenant: creds.json:

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

For a Multi-Tenant Console (MTC)

{
    "tid": "Not Used for MTC Auth",
    "app_id": "11111111-222222-33333-44444444",
    "app_secret": "555555-666666-222222-444444",
    "region": "NA",
    "mtc": "True"
}

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

API End Point Documentation

Tenant User API Guide - https://docs.blackberry.com/content/dam/docs-blackberry-com/release-pdfs/en/cylance-products/api-and-developer-guides/Cylance%20User%20API%20Guide%20v2.0%20rev24.pdf Tenant User API Release Notes - https://docs.blackberry.com/en/unified-endpoint-security/cylance--products/cylance-api-release-notes/BlackBerry-Cylance-API-release-notes Multi-Tenant API - https://dev-admin.cylance.com/documentation/api.html

Contributing

See CONTRIBUTING.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cyapi-1.0.11.tar.gz (22.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cyapi-1.0.11-py2.py3-none-any.whl (30.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file cyapi-1.0.11.tar.gz.

File metadata

  • Download URL: cyapi-1.0.11.tar.gz
  • Upload date:
  • Size: 22.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0 CPython/3.7.4 Darwin/19.6.0

File hashes

Hashes for cyapi-1.0.11.tar.gz
Algorithm Hash digest
SHA256 b30e2103af6855e8b17649f3f86acca78e28073c0ece10dc0acaff13ba24d3df
MD5 28026c8ad7ec1035a7f4a800f4f95748
BLAKE2b-256 a69d6e870609366ea365e42bd67c0d73fafc93bf9a9e17fb4892ae93a49b38dc

See more details on using hashes here.

File details

Details for the file cyapi-1.0.11-py2.py3-none-any.whl.

File metadata

  • Download URL: cyapi-1.0.11-py2.py3-none-any.whl
  • Upload date:
  • Size: 30.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0 CPython/3.7.4 Darwin/19.6.0

File hashes

Hashes for cyapi-1.0.11-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8b5cee5667c6b29c919e2ebabaccf7e2db302e4a20e1d156a864517eb9c31c28
MD5 029fed426a75a669b88892a7dbc39d7c
BLAKE2b-256 d0fd96812d0f957d8718271ba1a36ca453420cb6423b1e51ddf91ccdebb969b4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page