Skip to main content

Command-line interface for Boomi Platform API

Project description

pyboomi-cli

Command-line interface for the Boomi Platform API.

Installation

For Development

# Clone the repository
git clone https://github.com/iesoftwaredeveloper/pyboomi-cli
cd pyboomi-cli

# Install with development dependencies
pip install -e .[dev]

For Usage (when published)

pip install pyboomi-cli

From Source

git clone https://github.com/iesoftwaredeveloper/pyboomi-cli
cd pyboomi-cli
pip install -e .

Usage

Authentication

Recommended: Use environment variables for authentication

export BOOMI_ACCT=your-account-id
export BOOMI_USER=your-username
export BOOMI_TOKEN=your-api-token

# Now run commands without authentication flags
boomi folder query
boomi component get 1234-abcd

Alternatively, use command-line options (must be specified BEFORE the subcommand):

# Correct: Options before subcommand
boomi folder --account-id YOUR_ACCOUNT_ID --username YOUR_USERNAME --api-token YOUR_API_TOKEN query

# Incorrect: Options after subcommand will fail
boomi folder query --account-id YOUR_ACCOUNT_ID  # This will NOT work

Examples

# Get help (both entry points are available)
boomi --help
pyboomi --help

# Query folders (folders alias is supported)
boomi folder query
# or
boomi folders query

# Filter folders by name and print verbose request/response
boomi folder query --name "My Folder" --verbose

# Filter folders with parent constraints
boomi folder query --name "My Folder" --parent-id 0000-parent-id
boomi folder query --name "My Folder" --parent-name "Parent Folder"
boomi folder query --name "My Folder" --parent-path "/Root/Parent"

# Create a folder (parent can be provided by id or name/path)
boomi folder create --name "New Folder" --parent-id 0000-parent-id
boomi folder create --name "New Folder" --parent-name "Parent Folder"
boomi folder create --name "New Folder" --parent-name "Parent Folder" --parent-path "/Root/Parent"

# Get component XML (optionally include branch/version with ~)
boomi component get 1234-abcd
boomi component get 1234-abcd --branch-id 5678-branch --version 1.0

# Get component metadata for a branch (json|yaml|text)
boomi component metadata 1234-abcd --branch-id 5678-branch --output-format json

# Create a packaged component
boomi package create 1234-abcd --version 1.0.0 --notes "Initial package"

# Query packaged components by component ID or version (supports xml)
boomi package query --component-id 1234-abcd --package-version 1.0.0 --output-format xml

# Query branches (filter by name or parent)
boomi branch query --name "feature-x"

# Create a new branch under a parent branch
boomi branch create 1111-parent "feature-x"

# Update a branch
boomi branch update 2222-branch --name "feature-x-renamed" --ready

# Delete a branch
boomi branch delete 2222-branch

Commands

  • folder — Manage Boomi folders (group command, alias: folders)
    • Subcommands:
      • folder query — Query and list folders (--name, --parent-id, --parent-name, --parent-path, --verbose)
      • folder create — Create a folder (--name required; --parent-id or --parent-name required, with optional --parent-path to disambiguate; --output-format json|yaml|text)
    • Common options: --account-id, --username, --api-token
  • component — Manage Boomi components (group command)
    • Subcommands:
      • component get <component_id> — Get component XML (--branch-id, --version optional; always returns XML)
      • component metadata <component_id> — Get component metadata (--branch-id optional; --output-format json|yaml|text)
    • Common options: --account-id, --username, --api-token
  • package — Manage Boomi packages (group command)
    • Subcommands:
      • package create <component_id> --version <version> — Create packaged component (--notes, --branch-name, --output-format json|yaml|text|xml)
      • package get <packaged_component_id> — Get packaged component (--output-format json|yaml|text|xml)
      • package query — Query packaged components (--component-id, --package-version, --output-format json|yaml|text|xml)
    • Common options: --account-id, --username, --api-token
  • branch — Manage Boomi branches (group command)
    • Subcommands:
      • branch get <branch_id> — Get a branch
      • branch query — Query branches (--name, --parent-branch-id, --package-id, --ready, --output-format json|yaml|text)
      • branch create <parent_branch_id> <branch_name> — Create a branch (--package-id, --output-format json|yaml|text)
      • branch update <branch_id> — Update a branch (--name, --description, --ready/--not-ready, --output-format json|yaml|text)
      • branch delete <branch_id> — Delete a branch
    • Common options: --account-id, --username, --api-token
  • process — Manage Boomi processes (alias: processes) — placeholder

Environment Variables

Recommended: Use environment variables instead of command-line options

  • BOOMI_ACCT: Your Boomi account ID
  • BOOMI_USER: Your Boomi username (email)
  • BOOMI_TOKEN: Your Boomi API token
  • BOOMI_AUTH: Base64 encoded Basic Auth string (alternative to username/token)

Environment variables are preferred because:

  • More secure (not visible in command history or process lists)
  • Cleaner command syntax
  • Easier to manage across multiple commands
  • Can be set once per session or in shell configuration

If you must use command-line options, remember they must be specified BEFORE the subcommand:

# Correct
boomi component --account-id ACCT123 get <component-id>

# Incorrect
boomi component get --account-id ACCT123 <component-id>

Output Formats

Many commands support --output-format with the following values:

  • json (default)
  • yaml (falls back to json if PyYAML is not installed)
  • text (simple key/value text)
  • xml (returns raw XML when requested; defaults to XML for component get)

Templates

The templates/ directory contains XML templates for various Boomi component types including:

  • Processes: Unit test harnesses and process templates
  • Connectors: Database, API, and file connectors
  • Profiles: JSON, XML, flat file, and database profiles
  • Maps: Data mapping templates and functions
  • APIs: API services and proxy configurations
  • Scripts: Process and map scripts
  • Certificates: Security certificate templates

These templates provide standardized starting points for creating Boomi components. See TEMPLATE_SYSTEM.md for detailed information about the template system and usage.

Documentation

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

pyboomi_cli-0.5.0.tar.gz (42.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyboomi_cli-0.5.0-py3-none-any.whl (47.8 kB view details)

Uploaded Python 3

File details

Details for the file pyboomi_cli-0.5.0.tar.gz.

File metadata

  • Download URL: pyboomi_cli-0.5.0.tar.gz
  • Upload date:
  • Size: 42.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyboomi_cli-0.5.0.tar.gz
Algorithm Hash digest
SHA256 dd9df06e2d4ea91a1287bfa83881074a6efe9eb47d3082d752ce6745a02b04d8
MD5 40596527df512893ee65c91d6089fdbc
BLAKE2b-256 2e310ae591a65dadb8780cd0e77a70e0704f9c22740226d6c82891dd7d5c13b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyboomi_cli-0.5.0.tar.gz:

Publisher: publish-pypi.yml on iesoftwaredeveloper/pyboomi-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyboomi_cli-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: pyboomi_cli-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 47.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyboomi_cli-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aa5854808c20bbaea011c9cd292ebf89d89211e9736bfbf089ef0a992aeb3705
MD5 6627b6c8a038945cf8c9a09e0d0a5ab9
BLAKE2b-256 167e6e36afe61837de49b1450723506bdf065b67030093fde931f01542d5a661

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyboomi_cli-0.5.0-py3-none-any.whl:

Publisher: publish-pypi.yml on iesoftwaredeveloper/pyboomi-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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