Skip to content

"Tracker API, Officially Confirm Access" — A minimal standalone tool to verify API keys for music-related services.

License

Notifications You must be signed in to change notification settings

wally-crunk/tapioca

Repository files navigation

Icon

TAPIOCA - Verify API Keys

"Tracker API, Officially Confirm Access"

A minimal standalone tool to verify API keys for music-related services.

Features

Verify API keys at these services:

┌──────────────────┬────────────────────────────────────────┐
│ Image Hosts      │ Ra.thesungod.xyz, PTPImg.me, ImgBB.com │
│ Metadata         │ Discogs.com                            │
│ Gazelle Trackers │ RED, OPS                               │ 
└──────────────────┴────────────────────────────────────────┘

Getting Started

Using Venv (if desired):

# Create and activate a virtual environment (recommended)
python -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate

From source (clone-and-run):

# Install dependencies
pip install -r requirements.txt

# Run via shim
python tapi.py --help
python tapi.py              # interactive
python tapi.py --verify     # verify and exit with code

From source (fully install the CLI command):

pip install -r requirements.txt  # optional for dev installs
# or
pip install .                    # build and install the CLI

Configuration

Create config.toml with your API keys. Strict search order:

  1. --config PATH (file or directory)
  2. current working directory: ./config.toml
  3. source repo root (when running from a checkout)

Tapioca does not read from ~/.config or other global locations to avoid lingering plaintext credentials.

The required format for config.toml is:

[api_keys]
ra_sungod_key = ""   # your key here
ptpimg_key = ""      # your key here
imgbb_key = ""       # your key here
discogs_key = ""     # your key here

[trackers.red]
name = "RED"
url = "https://rxxxxxxx.xx"     # put the RED url here
api_key = ""         # your key here

[trackers.ops]
name = "OPS"
url = "https://oxxxxxx.xxxxxxx" # put the OPS url here
api_key = ""         # your key here

Usage

Run the tool and choose [V]erify or [Q]uit. Results show as ✓ Valid or ✗ Invalid with details.

Usage examples:

# Option A: from a clone (shim)
    python tapi.py               # interactive
    python tapi.py --verify      # verify and exit

# Option B: installed CLI
    tapioca                      # interactive
    tapioca --help               # show help
    tapioca --config /path/to/config.toml --verify
    tapioca --verify             # verify and exit

# Option C: module execution
    python -m tapioca            # interactive
    python -m tapioca --verify   # verify and exit

Timeouts

  • Per-request timeout: 10 seconds for each HTTP call.
  • Retries: up to 2 retries per service with exponential backoff (1s, then 2s).
  • Session timeout: 40 seconds total applied to the HTTP session. The 40s session cap allows up to 3 attempts (10s each) plus backoff.

Network & Privacy

TAPIOCA makes outbound requests to the listed third‑party services to verify your API keys. These services may log requests and enforce rate limits.

  • No keys are stored by TAPIOCA; they are read from your local config.toml and used only for the verification calls in your current run.
  • Credentials stored in config files should be protected.
  • Protect credentials in config files; avoid committing them and be mindful that they are plaintext.
  • Some image hosts' API require putting a small test image.
  • Use responsibly.

EOF

About

"Tracker API, Officially Confirm Access" — A minimal standalone tool to verify API keys for music-related services.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages