Skip to main content

Standalone CLI wrapper around the xpoz Python SDK.

Project description

xpoz-cli

Work seamlessly with Xpoz from the command line.

Get data and insights from Twitter/X, Instagram, TikTok, Reddit and others social media with paginated result handling, CSV export, and persistent auth.

Install

One-liner (Linux/macOS)

curl -fsSL https://raw.githubusercontent.com/XPOZpublic/xpoz-cli/main/install.sh | sh

Auto-detects your OS and CPU architecture, downloads the matching binary from GitHub Releases, verifies its SHA256, and drops it in ~/.local/bin/xpoz-cli. Override the install dir with XPOZ_INSTALL_DIR=/usr/local/bin, or pin a version with XPOZ_VERSION=v0.2.0.

One-liner (Windows, PowerShell)

iwr -useb https://raw.githubusercontent.com/XPOZpublic/xpoz-cli/main/install.ps1 | iex

Same idea — installs to %LOCALAPPDATA%\xpoz-cli\xpoz-cli.exe and prints the one PATH command you need to run if it isn't already on your PATH.

Homebrew (macOS / Linux)

brew tap XPOZpublic/xpoz
brew install xpoz-cli

Or in one line: brew install XPOZpublic/xpoz/xpoz-cli.

winget (Windows)

winget install Xpoz.XpozCli

(or winget install xpoz-cli once the manifest is published in microsoft/winget-pkgs).

pip (any platform with Python ≥3.10)

pip install xpoz-cli

Pulls the wheel from PyPI. Requires Python on the user's machine; the other channels above bundle Python via PyInstaller.

Manual download

Pick the asset matching your platform from the Releases page:

Platform Asset
Linux x86_64 xpoz-cli-linux-amd64
Linux arm64 xpoz-cli-linux-arm64
macOS Apple Silicon xpoz-cli-macos-arm64
Windows x86_64 xpoz-cli-windows-amd64.exe

Each release also publishes SHA256SUMS for offline verification:

curl -fsSLO https://github.com/XPOZpublic/xpoz-cli/releases/latest/download/xpoz-cli-linux-amd64
curl -fsSLO https://github.com/XPOZpublic/xpoz-cli/releases/latest/download/SHA256SUMS
sha256sum -c --ignore-missing SHA256SUMS
chmod +x xpoz-cli-linux-amd64 && sudo mv xpoz-cli-linux-amd64 /usr/local/bin/xpoz-cli

macOS Intel is not currently shipped as a prebuilt binary — use pip install xpoz-cli instead.

Quick start

Authenticate once — your API key is stored at ~/.config/xpoz/config.json (or %APPDATA%\xpoz\config.json on Windows) with mode 0600:

xpoz-cli auth login
# Get your API key from: https://www.xpoz.ai/settings
# Open in browser? [Y/n]: y
# Paste your API key: xpz_...

xpoz-cli auth status
xpoz-cli auth logout

Then call any SDK method on any platform:

xpoz-cli twitter get_user --identifier elonmusk

xpoz-cli twitter search_posts \
    --query '"AI" AND ethics' \
    --start-date 2025-01-01 \
    --limit 20

xpoz-cli reddit search_posts \
    --query "python tutorial" \
    --subreddit learnpython \
    --sort top \
    --time month \
    --all-pages

xpoz-cli twitter search_posts --query bitcoin --export-csv-url

Discovery

The CLI is generated by reflecting on the installed SDK, so every method the SDK exposes is automatically a subcommand. Use --help at any level to explore:

xpoz-cli --help                             # global options and platforms
xpoz-cli twitter --help                     # available methods on twitter
xpoz-cli twitter search_posts --help        # flags, types, and an example

Each method's help screen shows a synthesized example built from its required parameters.

Global options

Flag Purpose
--api-key KEY Override stored key (env: XPOZ_API_KEY)
--server-url URL Custom MCP server (env: XPOZ_SERVER_URL)
--output json|pretty JSON output format (default json)
--all-pages Walk every page of a paginated result
--max-pages N Safety cap for --all-pages
--page N Jump to a specific page
--export-csv-url Return a CSV download URL instead of rows
--timeout SECS Operation timeout (default 300)

API key precedence: --api-key flag → XPOZ_API_KEY env → stored config.

Build from source

Requires Python 3.10+.

pip install xpoz pyinstaller
pyinstaller --onefile --name xpoz-cli xpoz_cli.py
./dist/xpoz-cli --help

Or run directly:

pip install xpoz
python xpoz_cli.py twitter get_user --identifier elonmusk

Releases

Multi-platform binaries are built by the build-release workflow, triggered by:

  • Git tag push (git tag v0.1.0 && git push origin v0.1.0) — builds all targets and publishes a GitHub Release.
  • Manual run via the Actions tab — same flow with a user-supplied tag and optional prerelease flag.

License

MIT — see LICENSE.

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

xpoz_cli-0.3.2.tar.gz (28.0 kB view details)

Uploaded Source

Built Distribution

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

xpoz_cli-0.3.2-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file xpoz_cli-0.3.2.tar.gz.

File metadata

  • Download URL: xpoz_cli-0.3.2.tar.gz
  • Upload date:
  • Size: 28.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for xpoz_cli-0.3.2.tar.gz
Algorithm Hash digest
SHA256 49b4818493858516b541480993ffd1ff8be1aa743fc313ea3902f18a846b251c
MD5 b093c8f536fe863d8c0b1dab595b4d25
BLAKE2b-256 1f379e25f130cfec31a714fcd14dfb84b547cb436db4ce92c10b4f4f711f7594

See more details on using hashes here.

Provenance

The following attestation bundles were made for xpoz_cli-0.3.2.tar.gz:

Publisher: publish.yml on XPOZpublic/xpoz-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 xpoz_cli-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: xpoz_cli-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 14.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for xpoz_cli-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6ae559e0965e1228d5e86f07e7f9d1631136e5027a28a4653c010252f1fabf43
MD5 39656e02b46fbd4c0bbc4d808dfbb642
BLAKE2b-256 395ace86d7433611fa6bea0a5790ca34d0576565d7375308bf08f47fa87d74b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for xpoz_cli-0.3.2-py3-none-any.whl:

Publisher: publish.yml on XPOZpublic/xpoz-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