Entropy Data CLI
June 10, 2026 ยท View on GitHub
The entropy-data CLI lets you manage your Entropy Data platform from the command line.
You can manage data products, data contracts, access agreements, teams, source systems, definitions, certifications, and more โ directly from your terminal or CI/CD pipeline.
- Docs: https://docs.entropy-data.com
- PyPI: https://pypi.org/project/entropy-data/
- GitHub: https://github.com/entropy-data/entropy-data-cli
Install
Requires Python >= 3.11.
uv tool install entropy-data
entropy-data --help
Or with pip:
pip install entropy-data
entropy-data --help
Docker
docker run --rm entropy-data/cli --help
Getting Started
1. Configure a connection
Generate an API key in the Entropy Data UI under organization settings, then:
entropy-data connection add prod
# prompts for API key and host
2. Explore your data platform
# List teams
entropy-data teams list
# Get a specific data product
entropy-data dataproducts get my-data-product
# List data contracts as JSON
entropy-data datacontracts list --output json
3. Manage resources
# Create or update a team from a YAML file
entropy-data teams put marketing --file team.yaml
# Approve an access agreement
entropy-data access approve 640864de-83d4-4619-afba-ccea8037ed3a
# Search across all resources
entropy-data search query "customer orders"
Commands
entropy-data [--version] [--connection NAME] [--output table|json|yaml] [--debug]
connection list | get | add | remove | set-default | test
dataproducts list | get | put | delete | import-from-git | gitconnection ...
datacontracts list | get | put | test | delete | yaml | generate | import-from-git | gitconnection ...
access list | get | put | delete | approve | reject | cancel | request
teams list | get | put | delete | git-credentials ... | notifications ...
sourcesystems list | get | put | delete
definitions list | get | put | delete
certifications list | get | put | delete
policies list | get | put | delete
example-data list | get | put | delete
test-results list | get | publish | delete
costs list | add | delete
assets list | get | put | delete | tags ...
tags list | get | put | delete
api-keys create | delete
connectors list | get | put | delete
integrations list | get | configuration | runs | runs-get | run | cancel
organization get | members ... | git-credentials ... | custom-team-roles ...
settings get-customization | put-customization | get-scim-mapping | put-scim-mapping
events poll
lineage list | submit | delete
search query
semantics namespaces ... | concepts ... | relationships ... | search
usage list | submit | delete
import zip
Connection Management
Connections are stored in ~/.entropy-data/config.toml:
default_connection_name = "prod"
[connections.prod]
api_key = "ed_abc123..."
host = "https://api.entropy-data.com"
[connections.dev]
api_key = "ed_xyz789..."
host = "https://localhost:8080"
You can also use environment variables (ENTROPY_DATA_API_KEY, ENTROPY_DATA_HOST) or CLI options (--api-key, --host).
.env File Support
The CLI automatically loads a .env file from the current working directory. This is useful for project-specific configuration:
# .env
ENTROPY_DATA_API_KEY=ed_abc123...
ENTROPY_DATA_HOST=https://api.entropy-data.com
Values from .env are loaded as environment variables and do not override already-set environment variables.
Resolution precedence: CLI options > environment variables / .env > config file.
Development
git clone https://github.com/entropy-data/entropy-data-cli
cd entropy-data-cli
uv sync --dev
uv run pytest
uv run ruff check .
Release
- Update the version in
pyproject.toml - Update
CHANGELOG.mdwith a## [X.Y.Z]section - Commit, tag, and push:
git add pyproject.toml CHANGELOG.md
git commit -m "Bump version to X.Y.Z"
git tag vX.Y.Z
git push origin main --tags
The release workflow will automatically run tests, publish to PyPI, create a GitHub Release, and push a Docker image to Docker Hub.