Files
forefront-wireless-portal/CHANGELOG.md
T

2.4 KiB

CHANGELOG — Forefront Wireless Customer Portal


2026-07-25 — Project Inception & API Connection

Context: Germaine shared Splynx API credentials for Forefront Wireless, his WISP company. The self-hosted Splynx instance (v4.2) runs at portal.forefrontwireless.com/admin/. The goal is to build a branded customer portal at my.forefrontwireless.com.

Completed

  • API connection established — Splynx API v2.0 at /api/2.0/ verified working
  • Authentication cracked — Signature-based auth (HMAC-SHA256) with microtime nonce. Three methods tested:
    • Signature: Splynx-EA (key=K&nonce=N&signature=S) — works
    • Access Token: POST /admin/auth/tokens — generates token with 30-min expiry
    • ⚠️ Basic Auth: returns 403 unless "Unsecure access" is enabled on the API key
  • API key configured — Full permissions on all resources (customers, services, finance, networking, support, tariffs, scheduling, inventory)
  • Endpoint reconnaissance — Verified working:
    • GET /admin/customers/customer — 43 customers (33 active, 9 disabled)
    • GET /admin/customers/customer-internet-services/{id} — per-customer services
    • GET /admin/networking/routers — 5 MikroTik CCR2004 routers
    • GET /admin/tariffs/internet — 9 plans ($59.95-$299.95/mo)
    • GET /admin/finance/invoices — billing records
  • Splynx quirks documented — 405 on query-param service endpoints, tariff name resolution, signature nonce format

Decisions

  • Stack: React SPA → FastAPI backend → Splynx API v2.0. Same pattern as IntelSight and VoIPSimplicity.
  • Hosting: CloudPanel on app3 (152.53.241.111) — keeps customer portals together
  • Auth pattern: Server-to-server signature auth (not per-user Access Tokens) — portal handles its own user auth, backend proxies to Splynx
  • Domain: my.forefrontwireless.com (follows ITPP product convention: my.*.com)
  • Building after: IntelSight + LaunchCheck (shared infrastructure, shared auth patterns, reusable Super Search engine)

Reference: API Credentials

Key:    5a8dc490716424f435306f2c18b4fdcb
Secret: 5773f779e5ae5aac965845a66bd857a0
Base:   https://portal.forefrontwireless.com/api/2.0/

Next Steps (When Ready)

  1. Register my.forefrontwireless.com DNS
  2. Build FastAPI backend with Splynx proxy layer
  3. Build React dashboard
  4. Stripe integration for payments
  5. Deploy on app3 via CloudPanel