Documentation

EverBee CLI

everbee-pp-cli

Install

npx -y @mvanhorn/printing-press-library install everbee

Installs the CLI binary and the agent skill for Claude Code, Codex, Cursor, Gemini CLI, Copilot, and more. Add --cli-only or --skill-only for one half. Requires Node.

Documentation

Research Etsy products, shops, and keywords from EverBee in a repeatable agent-ready workflow.

EverBee is strongest inside an interactive browser. This CLI turns captured product analytics, shop analyzer, and keyword research workflows into repeatable commands with JSON, local snapshots, search, SQL, and cross-workflow opportunity scoring.

Learn more at EverBee.

Created by @horknfbr (horknfbr).

Authentication

EverBee uses Google login in the browser. Captured API requests authenticate with an x-access-token header; set EVERBEE_ACCESS_TOKEN for CLI calls until browser-login replay is proven.

Quick Start

# Confirm the access token and API reachability before running research commands.
everbee-pp-cli doctor

# Pull the product analytics table for the current account.
everbee-pp-cli product-analytics --per-page 25 --time-range last_30_days --json

# Inspect keyword suggestions in a narrowed JSON shape.
everbee-pp-cli keyword-research --type-of-search keyword --json --select data

# Fetch shop analyzer results for competitor research.
everbee-pp-cli shops --per-page 25 --json

# Rank product opportunities after data has been synced or fetched.
everbee-pp-cli opportunity shortlist --query "teacher gift" --limit 25 --agent

Unique Features

These capabilities aren't available in any other tool for this API.

Cross-workflow opportunity scoring

Insight commands read local research snapshots first. If matching data is missing or stale, they refresh only the EverBee data needed for that query and save the result locally for repeat analysis. Use --no-refresh for offline/local-only runs, --refresh to force a targeted pull, and --max-age to control freshness.

  • opportunity shortlist — Rank Etsy product opportunities by combining product analytics, keyword demand, competition, and local trend history.

    Use this when an agent needs a short list of products worth researching or creating next.

    everbee-pp-cli opportunity shortlist --query "teacher gift" --limit 25 --agent
    
  • niche score — Score a niche by weighing search demand, competition, product saturation, pricing, and trend movement.

    Use this before committing to a product niche or SEO direction.

    everbee-pp-cli niche score --keyword "mother's day mug" --agent
    

Competitor intelligence

  • shop gaps — Find competitor shop openings from product mix, pricing bands, tags, and keyword coverage.

    Use this when comparing a target Etsy shop against market demand.

    everbee-pp-cli shop gaps --shop competitor-shop --agent
    
  • competitors watch — Detect competitor changes in top products, price bands, and tags across saved shop snapshots.

    Use this to monitor shops without manually reopening EverBee dashboards.

    everbee-pp-cli competitors watch --shop competitor-shop --agent
    

SEO and tag strategy

  • tags gap — Compare winning listing tags against a target shop or keyword set to reveal missing SEO coverage.

    Use this when optimizing tags from competitor evidence instead of guessing.

    everbee-pp-cli tags gap --query candle --shop my-shop --agent
    
  • keywords cluster — Group related keyword suggestions by term overlap, demand, competition, and opportunity score.

    Use this to turn raw keyword suggestions into listing-title and tag themes.

    everbee-pp-cli keywords cluster --seed "wedding sign" --agent
    
  • listing audit — Audit a listing's keyword and tag fit using EverBee-derived product and keyword context.

    Use this when checking whether a listing matches the market signals behind a niche.

    everbee-pp-cli listing audit --listing-id 123456789 --agent
    

Local history that compounds

  • trends diff — Compare saved research snapshots to show which products, shops, or keywords moved over time.

    Use this when deciding whether a niche is growing, fading, or seasonally spiking.

    everbee-pp-cli trends diff --query "teacher gift" --days 30 --agent
    

Recipes

Narrow product analytics for agents

everbee-pp-cli product-analytics --per-page 25 --time-range last_30_days --agent --select data

Fetch a compact product analytics payload for downstream ranking.

Cluster keywords from a seed

everbee-pp-cli keywords cluster --seed "wedding sign" --agent

Group keyword suggestions into usable listing and tag themes.

Find competitor openings

everbee-pp-cli shop gaps --shop competitor-shop --agent

Compare competitor shop data against keyword and product opportunities.

Track niche movement

everbee-pp-cli trends diff --query "teacher gift" --days 30 --agent

Use saved snapshots to identify rising or fading research targets.

Usage

Run everbee-pp-cli --help for the full command reference and flag list.

Commands

folders

Operations on folders

  • everbee-pp-cli folders - GET /folders

keyword_research

Operations on default_keyword_suggestion

  • everbee-pp-cli keyword-research - GET /keyword_research/default_keyword_suggestion

management_modals

Operations on management_modals

  • everbee-pp-cli management-modals - GET /management_modals

product_analytics

Operations on default_product_analytics

  • everbee-pp-cli product-analytics - GET /product_analytics/default_product_analytics

shops

Operations on shops

  • everbee-pp-cli shops - GET /shops

Output Formats

# Human-readable table (default in terminal, JSON when piped)
everbee-pp-cli folders

# JSON for scripting and agents
everbee-pp-cli folders --json

# Filter to specific fields
everbee-pp-cli folders --json --select id,name,status

# Dry run — show the request without sending
everbee-pp-cli folders --dry-run

# Agent mode — JSON + compact + no prompts in one flag
everbee-pp-cli folders --agent

Agent Usage

This CLI is designed for AI agent consumption:

  • Non-interactive - never prompts, every input is a flag
  • Pipeable - --json output to stdout, errors to stderr
  • Filterable - --select id,name returns only fields you need
  • Previewable - --dry-run shows the request without sending
  • Read-only by default - this CLI does not create, update, delete, publish, send, or mutate remote resources
  • Offline-friendly - sync/search commands can use the local SQLite store when available
  • Agent-safe by default - no colors or formatting unless --human-friendly is set

Exit codes: 0 success, 2 usage error, 3 not found, 4 auth error, 5 API error, 7 rate limited, 10 config error.

Freshness

This CLI owns bounded freshness for registered store-backed read command paths. In --data-source auto mode, covered commands check the local SQLite store before serving results; stale or missing resources trigger a bounded refresh, and refresh failures fall back to the existing local data with a warning. --data-source local never refreshes, and --data-source live reads the API without mutating the local store.

Set EVERBEE_NO_AUTO_REFRESH=1 to disable the pre-read freshness hook while preserving the selected data source.

Covered command paths:

  • everbee-pp-cli competitors watch
  • everbee-pp-cli folders
  • everbee-pp-cli folders get
  • everbee-pp-cli folders list
  • everbee-pp-cli folders search
  • everbee-pp-cli keyword_research
  • everbee-pp-cli keyword_research get
  • everbee-pp-cli keyword_research list
  • everbee-pp-cli keyword_research search
  • everbee-pp-cli opportunity shortlist
  • everbee-pp-cli product_analytics
  • everbee-pp-cli product_analytics get
  • everbee-pp-cli product_analytics list
  • everbee-pp-cli product_analytics search
  • everbee-pp-cli report export
  • everbee-pp-cli shops
  • everbee-pp-cli shops get
  • everbee-pp-cli shops list
  • everbee-pp-cli shops search

JSON outputs that use the generated provenance envelope include freshness metadata at meta.freshness. This metadata describes the freshness decision for the covered command path; it does not claim full historical backfill or API-specific enrichment.

Health Check

everbee-pp-cli doctor

Verifies configuration, credentials, and connectivity to the API.

Configuration

Config file: ~/.config/everbee-pp-cli/config.toml

Static request headers can be configured under headers; per-command header overrides take precedence.

Environment variables:

NameKindRequiredDescription
EVERBEE_ACCESS_TOKENper_callYesSet to your API credential.

agentcookie (optional)

If you use agentcookie to sync secrets across machines, this CLI auto-adopts agentcookie-managed credentials with no extra setup. When the daemon writes to this CLI's config, everbee-pp-cli doctor reports agentcookie: detected and auth-status labels the source as agentcookie. Skip this section if you don't use agentcookie - the CLI works the same as any other.

Troubleshooting

Authentication errors (exit code 4)

  • Run everbee-pp-cli doctor to check credentials
  • Verify the environment variable is set: echo $EVERBEE_ACCESS_TOKEN Not found errors (exit code 3)
  • Check the resource ID is correct
  • Run the list command to see available items

API-specific

  • 401 or 403 from EverBee endpoints — Set a fresh EVERBEE_ACCESS_TOKEN captured from a logged-in EverBee browser session.
  • Empty product or keyword results — Run the matching EverBee app workflow in the browser first, then refresh the token and retry with a smaller --per-page value.
  • Opportunity commands return no local history — Run everbee-pp-cli sync --full or fetch product, shop, and keyword commands before derived analysis.

HTTP Transport

This CLI uses Chrome-compatible HTTP transport for browser-facing endpoints. It does not require a resident browser process for normal API calls.

Discovery Signals

This CLI was generated with browser-captured traffic analysis.

  • Target observed: https://track.getgist.com/projects/7tn4opfe/end_users/ping
  • Capture coverage: 31 API entries from 191 total network entries
  • Reachability: standard_http (65% confidence)
  • Protocols: rest_json (75% confidence)
  • Candidate command ideas: create_b — Derived from observed POST /b traffic.; create_monitoring — Derived from observed POST /monitoring traffic.; list_default_keyword_suggestion — Derived from observed GET /keyword_research/default_keyword_suggestion traffic.; list_default_product_analytics — Derived from observed GET /product_analytics/default_product_analytics traffic.; list_folders — Derived from observed GET /folders traffic.; list_management_modals — Derived from observed GET /management_modals traffic.; list_ping — Derived from observed GET /projects/7tn4opfe/end_users/ping traffic.; list_shops — Derived from observed GET /shops traffic.

Generated by CLI Printing Press

For agents: pass /documentation/everbee/agents.md to install this CLI from a prompt.