Skip to main content

Dataverse Explorer

Python CLI for querying the Dataverse API and exploring datasets. Give Cursor or your AI IDE the abiltity to run read/list queries via terminal rather than browsing the data via the slow web interface.

Features

✅ Auto-Discovery: Automatically detects tenant ID and Dataverse URL from Azure/PAC CLI ✅ SQL Queries: Write familiar SQL syntax - automatically translated to OData ✅ OAuth Device Code Flow: Secure authentication with automatic token caching ✅ Multiple Output Formats: Table, JSON, or CSV output ✅ CloudFlare WARP Compatible: SSL verification disabled by default ✅ Interactive Graph Visualization: Cytoscape.js-powered HTML reports

Prerequisites

  • Python 3.11+
  • Power Platform CLI.
    • It's easier if you install .NET via the installer here.
    • Then you can run dotnet tool install --global Microsoft.PowerApps.CLI.Tool to install the Power Platform CLI.
  • Azure CLI (az command - you can install with brew install azure-cli on MacOS)
  • Login to Azure CLI with az login

Cheat sheet

Setup:

make setup-env
source venv/bin/activate

./main.py --help
# This will open up a web browser for authentication and save your configuration in .env
./main.py configure

Listing Tables

# This will list the tables you have access to.
./main.py list-tables
# filter by tables matching 'account'
./main.py list-tables --filter account

Querying Data

  • Run a SQL query against a specific table:
# Clean output (smart filtering of columns to reduce noise)
./main.py query "SELECT * FROM connectionreferences LIMIT 10"

# Further reduce noise by specifying the exact column
./main.py query "SELECT name FROM account" --quiet

# Show all columns including metadata
./main.py query "SELECT * FROM connectionreferences LIMIT 10" --all-columns

# Output as JSON
./main.py query "SELECT * FROM account" --format json | jq

# Output as JSON and pipe into jq
./main.py query "SELECT * FROM account LIMIT 5" --json | jq '.value[].name'

# CSV for spreadsheets
./main.py query "SELECT name FROM account" --format csv > output.csv

Dumping and Visualizing Data

# This will dump all data from the dataverse for offline analysis and graph visualization
./main.py dump-dataverse

# This will visualize the dumped dataverse data as a graph, explorable via Cytoscape.
./main.py visualize-graph --input dumped_dataverse.json --output graph.html

Metadata

Release files for dataverse-explorer 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dataverse-explorer 1.0.1
File Size Uploaded Provenance
dataverse_explorer-1.0.1.tar.gz 35.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for dataverse-explorer 1.0.1
File Interpreter ABI Platform
dataverse_explorer-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 75.5 kB

Release files / dataverse_explorer-1.0.1.tar.gz

Download URL dataverse_explorer-1.0.1.tar.gz
Size 35.7 kB
Tags Source
SHA-256 checksum
How to use checksums
6f8a9b5a540921fbd6cfdd7897e77682dae118d93d756ee745088fc27fc8ce5b
BLAKE2b-256 checksum
How to use checksums
5db232ae3998cd277607f4ddd782207ea4b27168bff33aa601839c3eb6468e81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / dataverse_explorer-1.0.1-py3-none-any.whl

Download URL dataverse_explorer-1.0.1-py3-none-any.whl
Size 39.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
75eeac5547c90a3fdad9024a5b5642f0cc2365a7462559cbab621712b0671485
BLAKE2b-256 checksum
How to use checksums
ff77868c8f9089c7be062bb4b29cb5de42d1c348e82379ebb07730d4377f2d8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Security for dataverse-explorer 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page