foundry-sample-functions-python

Functions with Python sample Foundry app

https://github.com/crowdstrike/foundry-sample-functions-python

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.8%) to scientific vocabulary

Keywords

falcon-foundry python
Last synced: 6 months ago · JSON representation ·

Repository

Functions with Python sample Foundry app

Basic Info
Statistics
  • Stars: 3
  • Watchers: 4
  • Forks: 0
  • Open Issues: 1
  • Releases: 0
Topics
falcon-foundry python
Created 9 months ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Security Support

README.md

CrowdStrike Falcon

Functions with Python sample Foundry app

The Functions with Python sample Foundry app is a community-driven, open source project which serves as an example of an app which can be built using CrowdStrike's Foundry ecosystem. foundry-sample-functions-python is an open source project, not a CrowdStrike product. As such, it carries no formal support, expressed or implied.

This app is one of several App Templates included in Foundry that you can use to jumpstart your development. It comes complete with a set of preconfigured capabilities aligned to its business purpose. Deploy this app from the Templates page with a single click in the Foundry UI, create an app from this template using the Foundry CLI, or download it as a zip and import it.

[!IMPORTANT]
To view documentation and deploy this sample app, you need access to the Falcon console.

Description

The Functions with Python sample Foundry app shows how to use Python functions with FalconPy, workflows, API integrations, collections, and UI extensions.

Prerequisites

  • The Foundry CLI (instructions below).
  • Python 3.13+ (needed if running the app's functions locally). See Python For Beginners for installation instructions.

Install the Foundry CLI

You can install the Foundry CLI with Scoop on Windows or Homebrew on Linux/macOS.

Windows:

Install Scoop. Then, add the Foundry CLI bucket and install the Foundry CLI.

shell scoop bucket add foundry https://github.com/crowdstrike/scoop-foundry-cli.git scoop install foundry

Or, you can download the latest Windows zip file, expand it, and add the install directory to your PATH environment variable.

Linux and macOS:

Install Homebrew. Then, add the Foundry CLI repository to the list of formulae that Homebrew uses and install the CLI:

shell brew tap crowdstrike/foundry-cli brew install crowdstrike/foundry-cli/foundry

Run foundry version to verify it's installed correctly.

Getting Started

Clone this sample to your local system, or download as a zip file and import it into Foundry.

shell git clone https://github.com/CrowdStrike/foundry-sample-functions-python cd foundry-sample-functions-python

Log in to Foundry:

shell foundry login

Select the following permissions:

  • [ ] Create and run RTR scripts
  • [x] Create, execute and test workflow templates
  • [x] Create, run and view API integrations
  • [ ] Create, edit, delete, and list queries

Deploy the app:

shell foundry apps deploy

[!TIP] If you get an error that the name already exists, change the name to something unique to your CID in manifest.yml.

Once the deployment has finished, you can release the app:

shell foundry apps release

Next, go to Foundry > App catalog, find your app, and install it. Go to Fusion SOAR > Workflows to see the test workflows from this app.

About this sample app

This sample is designed to show how to use Python Functions in Falcon Foundry. It contains a few capabilities:

  1. Python functions:
  • hello: Simple greeting service
  • host-details: Uses FalconPy to get Host details
  • servicenow: Uses FalconPy to invoke an API Integration
  • log-event: Uses FalconPy to store data in a collection
  1. Test workflows to invoke each function.
  2. A UI extension on Endpoint security > Endpoint detections that can be used to call the hello function.

See this sample's App docs README for configuration and usage information.

Technical Implementation

Foundry resources



WE STOP BREACHES

Owner

  • Name: CrowdStrike
  • Login: CrowdStrike
  • Kind: organization
  • Email: github@crowdstrike.com
  • Location: United States of America

Citation (CITATION.cff)

cff-version: 1.2.0
title: 'CrowdStrike Foundry Sample App - Functions with Python'
message: >-
  If you use this software, and wish to cite the origins,
  please use metadata from this file.
type: software
authors:
  - given-names:
    family-names: CrowdStrike
    email: oss-questions@crowdstrike.com
repository-code: 'https://github.com/CrowdStrike/foundry-sample-functions-python'
url: 'https://www.crowdstrike.com'
abstract: >-
  The CrowdStrike Foundry Sample App - Functions with Python
  is a community-driven, open source project designed
  to illustrate creating apps with CrowdStrike Foundry.
keywords:
  - crowdstrike
  - oauth2
  - crowdstrike-foundry
  - python
  - windows
  - linux
  - mac
license: MIT

GitHub Events

Total
  • Watch event: 2
  • Delete event: 21
  • Issue comment event: 3
  • Push event: 31
  • Pull request review event: 16
  • Pull request review comment event: 3
  • Pull request event: 43
  • Create event: 16
Last Year
  • Watch event: 2
  • Delete event: 21
  • Issue comment event: 3
  • Push event: 31
  • Pull request review event: 16
  • Pull request review comment event: 3
  • Pull request event: 43
  • Create event: 16

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 1
  • Total pull requests: 26
  • Average time to close issues: 2 minutes
  • Average time to close pull requests: about 11 hours
  • Total issue authors: 1
  • Total pull request authors: 3
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.04
  • Merged pull requests: 13
  • Bot issues: 1
  • Bot pull requests: 18
Past Year
  • Issues: 1
  • Pull requests: 26
  • Average time to close issues: 2 minutes
  • Average time to close pull requests: about 11 hours
  • Issue authors: 1
  • Pull request authors: 3
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.04
  • Merged pull requests: 13
  • Bot issues: 1
  • Bot pull requests: 18
Top Authors
Issue Authors
  • github-actions[bot] (1)
Pull Request Authors
  • dependabot[bot] (16)
  • mraible (8)
  • github-actions[bot] (2)
Top Labels
Issue Labels
dependencies (1)
Pull Request Labels
dependencies (18) javascript (15) github_actions (1)

Dependencies

.github/workflows/pylint.yml actions
  • actions/checkout v5 composite
  • actions/setup-python v5 composite
.github/workflows/rebuild.yml actions
  • actions/checkout v5 composite
  • actions/setup-node v4 composite
  • peter-evans/create-pull-request v7 composite
.github/workflows/main.yml actions
  • actions/checkout v4 composite
  • actions/setup-node v4 composite
  • actions/setup-python v5 composite
ui/extensions/hello/package-lock.json npm
  • 723 dependencies
ui/extensions/hello/package.json npm
  • @babel/core 7.28.0 development
  • @babel/preset-env ^7.28.0 development
  • @babel/preset-react 7.27.1 development
  • @rollup/plugin-babel 6.0.4 development
  • @rollup/plugin-commonjs 28.0.6 development
  • @rollup/plugin-json 6.1.0 development
  • @rollup/plugin-node-resolve 16.0.1 development
  • @rollup/plugin-replace 6.0.2 development
  • @testing-library/jest-dom ^6.6.3 development
  • @testing-library/react ^16.3.0 development
  • @testing-library/user-event ^14.6.1 development
  • @web/rollup-plugin-html 2.3.0 development
  • jest ^30.0.5 development
  • jest-environment-jsdom ^30.0.5 development
  • postcss ^8.5.6 development
  • rollup 4.45.1 development
  • rollup-plugin-postcss ^4.0.2 development
  • @crowdstrike/falcon-shoelace ^0.4.0
  • @crowdstrike/foundry-js ^0.18.0
  • @crowdstrike/tailwind-toucan-base ^5.0.0
  • @shoelace-style/shoelace ^2.20.1
  • react 19.1.0
  • react-dom 19.1.0
  • react-router-dom 7.7.0
functions/hello/requirements.txt pypi
  • crowdstrike-foundry-function ==1.1.1
functions/host-details/requirements.txt pypi
  • crowdstrike-falconpy *
  • crowdstrike-foundry-function ==1.1.1
functions/host-info/requirements.txt pypi
  • crowdstrike-foundry-function ==1.1.1
functions/log-event/requirements.txt pypi
  • crowdstrike-falconpy *
  • crowdstrike-foundry-function ==1.1.1
functions/servicenow/requirements.txt pypi
  • crowdstrike-falconpy *
  • crowdstrike-foundry-function ==1.1.1
functions/user-management/requirements.txt pypi
  • crowdstrike-foundry-function ==1.1.1