Installation
npm install -g @igamingfinder/cli
igamingfinder --help
Or run without installing: npx -y @igamingfinder/cli --help (Node 18+).
$ help --topic=early-accessThe CLI is in early access. Sign up free to get your API key.
Authentication
No account yet? igamingfinder signup opens the signup page — new accounts get welcome bonus credits, and the emailed magic link finishes registration. Then:
igamingfinder config set-key client_YOUR_KEY
# or: export IGAMINGFINDER_API_KEY=client_YOUR_KEY
Your key is stored locally in ~/.config/igamingfinder/config.json. Check the active configuration with igamingfinder config show.
Commands
Signals
# First page: one credit per delivered Signal row
igamingfinder signals list --kind licensed_market_entry --market anjouan --limit 5
# Poll incrementally with the previous response's next_cursor
igamingfinder signals list --kind licensed_market_entry --market anjouan \
--after 'igfcur_...' --limit 5
Signals are first-class resources: each row carries stable signal_ref, subject.company_ref, regulatory.license_ref, the authoritative occurrence/change timestamps, normalized authorized domains, evidence, exact coverage, and quality. Output also contains billing and a resumable next_cursor.
Pagination is cursor-only. Reuse the same kind, market, occurred-from, and occurred-to filters with --after; the CLI automatically sends a fresh idempotency key for each page. An empty poll preserves the cursor. Requested firmographics or contacts remain not_available in V1 and add no optional charge.
Companies
igamingfinder companies preview --jurisdiction mga # free: result count + cost estimate
igamingfinder companies search --jurisdiction mga # paid discovery search
igamingfinder companies resolve stake.com # authoritative profile (paid)
igamingfinder companies people igfc_a1b2c3 # decision-maker contacts (paid)
preview costs 0 credits — run it before search to see how many rows match and what they'll cost.
Company Domains carry managed-stable domain_ref values. Firmographics is an explicit paid include anchored to those Domains:
# Exact one-Domain lookup
igamingfinder companies resolve igfc_a1b2c3 --include firmographics \
--domain-ref igfd_d4e5f6 --max-age-days 30
# Intentional all-eligible-Domain fan-out; strict refresh failures are unavailable
igamingfinder companies resolve igfc_a1b2c3 --include firmographics \
--allow-stale-on-error false
Without --domain-ref, every eligible Domain is selected deterministically. Each available fresh, cached, or stale Domain result uses the configured per-result rate below; unavailable results cost zero optional credits. Set --max-credits to a ceiling you approve; it covers the base profile plus every candidate Domain before any refresh begins.
Cost: 12 credits / delivered Domain result
Licenses
igamingfinder licenses preview --jurisdiction ukgc
igamingfinder licenses search --jurisdiction mga --per-page 25
igamingfinder licenses resolve igfl_a1b2c3
Domain Verdicts
igamingfinder domains resolve roobet.com # trust verdict for one domain
igamingfinder domains resolve ncc.bet --include operator_launch_profile \
--max-age-days 7 --max-credits 6 # verdict + launch profile
igamingfinder domains search --verdict blocklisted --geo pl # bulk blocklist / change feed
domains search supports --since, --until, and --dropped-before (ISO 8601) for change-feed queries.
The human formatter renders the typed Operator Launch Profile availability, launch state and confidence, regulatory Licensee, legal claims, public website-email count, related-domain count, observation time, and aggregate billing. --json preserves the complete nested response. Licensee and website operator claims remain separate; technical relationships never imply ownership.
Freshness is a parameter of resolve, not a separate command — --max-age-days N refreshes included signals older than N days within the same request (0 forces a capture; expect the call to take up to a few minutes while the server observes the domain):
igamingfinder domains resolve ncc.bet --include operator_launch_profile --max-age-days 7 --max-credits 6
igamingfinder domains resolve bc.game --include payment_methods --max-age-days 7
igamingfinder companies resolve stake.com --include firmographics --domain-ref igfd_d4e5f6 --max-age-days 30
An available profile is billed atomically at 6 credits total (1 for the verdict + 5 for the profile). An unavailable profile returns its reason and charges only the 1-credit verdict.
Export
igamingfinder export create --jurisdiction mga --format csv --wait -o mga-operators.csv
igamingfinder export status <id> # free
igamingfinder export download <id> -o companies.csv # free — billed at create
Account
igamingfinder account
Shows your plan and credit balance (granted, used, reserved, available).
Output Formats
Default output is human-formatted. Every data command accepts --json, and output switches to JSON automatically when piped:
igamingfinder signals list --kind licensed_market_entry --market anjouan \
| jq -r '.signals[] | [.signal_ref, .regulatory.license_number, (.subject.domains | map(.domain) | join(","))] | @tsv'
igamingfinder companies search --jurisdiction mga --json | jq -r '.hits[] | .primary_domain.domain // empty'
igamingfinder domains search --verdict blocklisted --json | jq -r '.domains[].domain'
Commands compose — resolve every domain a search returned:
igamingfinder companies search --jurisdiction mga --json \
| jq -r '.hits[] | .primary_domain.domain // empty' \
| xargs -n1 igamingfinder domains resolve
Shell completion
Generate a completion script for your shell (completes command, subcommand, and flag names):
igamingfinder completion fish > ~/.config/fish/completions/igamingfinder.fish
igamingfinder completion zsh > "${fpath[1]}/_igamingfinder" # then run: compinit
igamingfinder completion bash > ~/.local/share/bash-completion/completions/igamingfinder
MCP Server
The same binary ships the MCP server for Claude Desktop and Cursor: igamingfinder mcp.
$ help --topic=command-discoveryRunigamingfinder --helpfor the full command list, origamingfinder <command> --helpfor command-specific options.