Skip to content

CLI Reference

Bizon provides a command-line interface for discovering sources, listing streams, and running pipelines.

The CLI is automatically installed when you install Bizon:

Terminal window
pip install bizon

Verify the installation:

Terminal window
bizon --help

Run a pipeline from a YAML configuration file.

Terminal window
bizon run <config.yml> [OPTIONS]

Arguments:

ArgumentRequiredDescription
config.ymlYesPath to your pipeline configuration file

Options:

OptionTypeDefaultDescription
--custom-sourcePathNonePath to a custom Python file implementing a Bizon source
--runnerChoicethreadRunner type: thread, process, or stream
--log-levelChoiceINFOLog level: DEBUG, INFO, WARNING, ERROR

Examples:

Terminal window
# Basic run
bizon run config.yml
# Run with process-based parallelism
bizon run config.yml --runner process
# Run in streaming mode (continuous)
bizon run config.yml --runner stream
# Run with debug logging
bizon run config.yml --log-level DEBUG
# Run with a custom source connector
bizon run config.yml --custom-source ./my_source.py

List all available source connectors.

Terminal window
bizon source list

Output:

Retrieving available sources...
Available sources:
dummy - ['creatures', 'plants']
kafka - ['topic']
hubspot - ['contacts', 'companies', 'deals']
notion - ['users', 'databases', 'pages']
gsheets - ['spreadsheet']

Sources that require additional dependencies will show an installation hint:

periscope - NOT AVAILABLE, run 'pip install bizon[periscope]' to install missing dependencies.

List available streams for a specific source.

Terminal window
bizon stream list <source_name>

Arguments:

ArgumentRequiredDescription
source_nameYesName of the source connector

Output:

Terminal window
bizon stream list hubspot
Available streams for hubspot:
[Supports incremental] - contacts
[Supports incremental] - companies
[Full refresh only] - owners

The output indicates whether each stream supports incremental sync mode.

The --runner option determines how the pipeline executes:

RunnerUse CaseDescription
threadDefault, most workloadsUses ThreadPoolExecutor for async I/O operations
processCPU-intensive transformsUses ProcessPoolExecutor for true parallelism
streamReal-time streamingSingle-threaded synchronous mode for low-latency streaming
CodeMeaning
0Pipeline completed successfully
1Pipeline failed with an error

You can reference environment variables in your YAML configuration. Bizon will automatically substitute values prefixed with BIZON_ENV_:

authentication:
type: api_key
params:
token: BIZON_ENV_MY_API_TOKEN

Set the environment variable before running:

Terminal window
export BIZON_ENV_MY_API_TOKEN="your-secret-token"
bizon run config.yml