Skip to main content
Interact with the Binarly Transparency Platform (BTP). All btp subcommands require authentication credentials.

Authentication

Every btp subcommand requires the following options (or their environment variable equivalents):
OptionEnv VariableDescription
-u, --username <username>BTP_USERNAMEBTP username
-p, --password <password>BTP_PASSWORDBTP password
-s, --instance-slug <slug>BTP_INSTANCE_SLUGInstance slug (e.g., your-org.prod)

push-rules

Push a VulHunt rule pack to a BTP instance.
vulhunt-ce btp push-rules [OPTIONS] -r <repository> <INPUTS>...
OptionRequiredDescription
-r, --repository <repository>YesRepository name (e.g., rulepacks/custom)
<INPUTS>...YesRule directories (named posix/ or uefi/) or .vh files
-t, --tag <tag>NoImage tag (defaults to latest)
--name <name>NoRule pack name
--platform <platform>NoPlatform for individual .vh files (posix or uefi)
--modules <path>NoDirectory containing modules (.vhm files)
--deploy-to-product <ULID>NoDeploy rule pack to a product
--deploy-to-org <ULID>NoDeploy rule pack to an organisation
--deploy-to-product and --deploy-to-org are mutually exclusive. When passing directories as inputs, they must be named posix/ or uefi/ so the platform is inferred automatically. When passing individual .vh files, --platform is required.

list-products

List products in a BTP instance. No additional options beyond authentication.
vulhunt-ce btp list-products

create-product

Create a new product in a BTP instance.
vulhunt-ce btp create-product --name <name> [--description <desc>]
OptionRequiredDescription
--name <name>YesProduct name
--description <desc>NoProduct description

upload

Upload an image or firmware file to a product.
vulhunt-ce btp upload --product-id <ULID> --name <name> --version <version> [--scan] <FILE>
OptionRequiredDescription
--product-id <ULID>YesProduct ID
--name <name>YesImage name
--version <version>YesImage version
<FILE>YesFile to upload
--scanNoCreate a scan after upload

list-images

List images in a product.
vulhunt-ce btp list-images --product-id <ULID>
OptionRequiredDescription
--product-id <ULID>YesProduct ID

list-scans

List scans for an image.
vulhunt-ce btp list-scans --product-id <ULID> --image-id <ULID>
OptionRequiredDescription
--product-id <ULID>YesProduct ID
--image-id <ULID>YesImage ID

create-scan

Create a scan for an existing image.
vulhunt-ce btp create-scan --product-id <ULID> --image-id <ULID>
OptionRequiredDescription
--product-id <ULID>YesProduct ID
--image-id <ULID>YesImage ID

get-scan

Get details of an individual scan.
vulhunt-ce btp get-scan --product-id <ULID> --image-id <ULID> --scan-id <ULID>
OptionRequiredDescription
--product-id <ULID>YesProduct ID
--image-id <ULID>YesImage ID
--scan-id <ULID>YesScan ID

get-findings

Get findings for an image.
vulhunt-ce btp get-findings --product-id <ULID> --image-id <ULID>
OptionRequiredDescription
--product-id <ULID>YesProduct ID
--image-id <ULID>YesImage ID

download-ba2

Download the BA2 file for an image from BTP.
vulhunt-ce btp download-ba2 --product-id <ULID> --image-id <ULID> --scan-id <ULID> [-o <path>]
OptionRequiredDescription
--product-id <ULID>YesProduct ID
--image-id <ULID>YesImage ID
--scan-id <ULID>YesScan ID
-o, --output <path>NoOutput path (defaults to URL filename)