README

CrowdStrike FalconPy
CrowdStrike FalconPy

CrowdStrike Subredditarrow-up-right

FalconPy - The CrowdStrike Falcon SDK for Python

Package Statusarrow-up-right PyPIarrow-up-right Release datearrow-up-right Repo statusarrow-up-right Commit activityarrow-up-right GitHub forks

The FalconPy SDK contains a collection of Python classes that abstract CrowdStrike Falcon OAuth2 API interaction, removing duplicative code and allowing developers to focus on just the logic of their solution requirements.

Overview 🔎

There are many CrowdStrike Falcon API service collectionsarrow-up-right collectively containing hundreds of individual operationsarrow-up-right, all of which are accessible to your project via FalconPy.

The CrowdStrike Falcon SDK for Python completely abstracts token management, while also supporting interaction with all CrowdStrike regions, custom connection and response timeouts, routing requests through a list of proxies, disabling SSL verification, and custom header configuration.

If the CrowdStrike APIs were rings of great power, that the Dark Lord Sauron gifted to the kings of dwarves, elves and men, then CrowdStrike's FalconPy would be the One Ring.

"One SDK to rule them all, One SDK to find them, One SDK to bring them all and in the darkness bind them."

Downloadsarrow-up-right Development Installsarrow-up-right

Supported versions of Python

The CrowdStrike Falcon SDK for Python was developed for Python 3. Current versions of FalconPy provide support for Python versions 3.8 - 3.13. Every commit to the FalconPy code base is unit tested for functionality using all versions of Python the library currently supports.

[!NOTE] Developers working with Python version 3.6 will need to leverage versions of FalconPy less than 1.4.0. Developers working with Python version 3.7 will need to leverage version of FalconPy less than 1.6.0.

PyPI - Implementationarrow-up-right PyPI - Wheelarrow-up-right PyPI - Python Versionarrow-up-right

Supported Operating Systems

The FalconPy SDK is unit tested on the following operating systems.

macOSarrow-up-right Ubuntuarrow-up-right Windowsarrow-up-right

FalconPy will also run on any of the following operating systems.

Amazon Linuxarrow-up-right CentOSarrow-up-right Fedoraarrow-up-right RedHatarrow-up-right Archarrow-up-right

Debianarrow-up-right Kaliarrow-up-right Pop! OSarrow-up-right SUSEarrow-up-right openSUSEarrow-up-right

Details regarding supported operating systems and Python versions, and project security and testing procedures can be found here.

Components

The FalconPy SDK provides two distinct methods for interacting with CrowdStrike's API.

Service Classes

The Uber Class

Each Service Class represents a single CrowdStrike API service collection providing an interface to the operations availablearrow-up-right within that service collection.

An all-in-one class that provides a singular interface for all operationsarrow-up-right in every CrowdStrike API service collection.

Service Classes

Representing a single CrowdStrike Falcon API service collection, each Service Class has a method defined for every operation availablearrow-up-right within that service collection.

Available Service Classes

For each CrowdStrike Falcon API service collection, a matching Service Class is available in the FalconPy library. For a complete list of service collections and their related Service Class, please review the Operations by Collectionarrow-up-right page on falconpy.ioarrow-up-right.

Service Class benefits

  • Closely follows Python and OpenAPI best practice for code style and syntax. PEP-8 compliant.

  • Completely abstracts token management, automatically refreshing your token when it expires.

  • Interact with newly released API operations not yet available in the library via the override method.

  • Provides simple programmatic patterns for interacting with CrowdStrike Falcon APIs.

  • Supports cloud region autodiscoveryarrow-up-right for the CrowdStrike US-1, US-2 and EU-1 regions.

  • Supports dynamic configurationarrow-up-right based upon the needs of your environment.

  • Supports CrowdStrike Falcon API parameter abstractionarrow-up-right functionality.

  • Supports CrowdStrike Falcon API body payload abstractionarrow-up-right functionality.

The Uber Class

Operating as a single harness for interacting with the entire CrowdStrike Falcon API, the Uber Class can access every available operationarrow-up-right within every API service collectionarrow-up-right.

Uber Class benefits

Comparing FalconPy class types

While the usage syntaxarrow-up-right varies slightly, the Uber Class provides the same performance and outputarrow-up-right as FalconPy Service Classes, and can perform all of the same operationsarrow-up-right. The Uber Class does not support body payload abstractionarrow-up-right.

CrowdStrike Divider

Quick Start 💫

Stable releases of FalconPy are available on the Python Package Index. In a terminal, execute the following command:

Once installed, you can immediately begin using CrowdStrike functionality in your Python projects.

More samples

If you are interested in reviewing more examples of FalconPy usage, this repository also maintains a collection of samplesarrow-up-right to help get you started with integrating CrowdStrike Falcon into your DevOps processes.

Documentation and Support 📖

FalconPy is a community-driven, open source project designed to assist developers in leveraging the power of CrowdStrike APIs within their solutions. While not a formal CrowdStrike product, FalconPy is maintained by CrowdStrike and supported in partnership with the open source developer community.

Official Project Documentation: falconpy.ioarrow-up-right

Websitearrow-up-right Documentation Version

Extended documentation is also available via the wikiarrow-up-right for this repository.

Issues and Questions

Is something going wrong? 🔥

GitHub Issues are used to report bugs and errors.

Report Issuearrow-up-right

Have a question you can't find answered in the documentation?

Please submit usage questions to the Q&A section of our discussion board.

Discussionsarrow-up-right

Community forums

The discussion board for this repository also provides the community with means to communicate regarding enhancements ideasarrow-up-right, integration examplesarrow-up-right and new releasesarrow-up-right.

Discussionsarrow-up-right

More information regarding FalconPy documentation and support can be found here.

Contribute to FalconPy ☕

Interested in being acknowledged as a member of an elite community of security-focused Python developers that stop breaches?

There are many ways you can contribute to the FalconPy project!

To get started, review the Code of Conduct for community guidelines, and the contribution guide for more detail regarding contributing to the CrowdStrike FalconPy project.


WE STOP BREACHES

Last updated

Was this helpful?