Skip to main content

Python SDK for Nightfall

Project description

Nightfall Python SDK

This is a python SDK for working with the Nightfall API.

PyPI version

Installation

This module requires Python 3.7 or higher.

pip install nightfall

Quickstart

Make a new API Token in Nightfall and store the value as an environment variable.

import os

from nightfall import Confidence, DetectionRule, Detector, Nightfall

nightfall = Nightfall(os.getenv('NIGHTFALL_API_KEY'))

findings, _ = nightfall.scan_text(
        ["4916-6734-7572-5015 is my credit card number"],
        [DetectionRule(
            [Detector(min_confidence=Confidence.LIKELY,
                     nightfall_detector="CREDIT_CARD_NUMBER")])])
print(findings)

For more information on the details of this library, please refer to the API Documentation.

Contributing

Please create an issue with a description of your problem, or open a pull request with the fix.

Development

Installing Development Dependencies

If you want to hack on this project, you should set up your local development environment with the following commands:

  1. Fork and clone this repo and open a terminal with the root of this repository in your working directory.
  2. Create and activate a virtualenv python3 -m venv venv && source venv/bin/activate
  3. Install development dependencies with pip install -r dev-requirements.txt
  4. Install an editable version of this package pip install -e .

Run Unit Tests

Unit and Integration tests can be found in the tests/ directory. You can run them with pytest. Be sure to have NIGHTFALL_API_KEY set as an environment variable before running the tests.

View Code Coverage

You can view the code coverage report by running coverage html and python3 -m http.server --directory htmlcov after running the unit tests.

Creating a Release

Releases are automatically published to PyPI using GitHub Actions. Creating a release in GitHub will trigger a new build that will publish the latest version of this library to PyPI.

The steps to do this are:

  1. Add what changed to the CHANGELOG file
  2. Update the version in setup.py
  3. Commit changes and push to the main branch.
  4. Create a new release in the GitHub UI.
  5. Observe the release action succeed and see the latest version of this library on PyPI.

License

MIT

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

nightfall-1.1.0.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

nightfall-1.1.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file nightfall-1.1.0.tar.gz.

File metadata

  • Download URL: nightfall-1.1.0.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for nightfall-1.1.0.tar.gz
Algorithm Hash digest
SHA256 a63d2f61aca44dfd83f4059cd16edd681d68af129527e081db569332659146a6
MD5 2b3485a82d05354433aa8f52be1e0875
BLAKE2b-256 84cecf8053ffca3e109a2d5b484789ff0d8d7be39db69f6e22ceac7e055750d6

See more details on using hashes here.

File details

Details for the file nightfall-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: nightfall-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for nightfall-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 059e3a7c9186d1a83956ad14cdf83a9f1154e25ea3821a11cd8d8e6d89e42626
MD5 0940f7e36eeeaa742f2192f45f5f9d9b
BLAKE2b-256 b5a1f976d410e66c49cd39f64d39b5770a9c02cea5857cd50f76d1048a10afc3

See more details on using hashes here.

Supported by

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