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.3.tar.gz (28.6 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.3-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: xpoz_cli-0.3.3.tar.gz
  • Upload date:
  • Size: 28.6 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.3.tar.gz
Algorithm Hash digest
SHA256 627391a79102873e60f5b46bf661416f33373208102e9163f9a29a0b475d2006
MD5 c33f7ffb481e1bd9a3af352bf2e6197b
BLAKE2b-256 1c470adaa9c44cacc1be3c66915581431a1d1c67c6a551a9650763e3e7cb85a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for xpoz_cli-0.3.3.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.3-py3-none-any.whl.

File metadata

  • Download URL: xpoz_cli-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 15.3 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 4a9ff327da942fe7d96594c313a070cce391f85653bea7c1d3410545eaad1427
MD5 57ed20b5d7f07a1a8e4a3a2fb8d2aff4
BLAKE2b-256 a1d9d5e44f69ef72e0357ef4b74f44657a244002c2474538689427c82ce833c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for xpoz_cli-0.3.3-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