SumoRouter
Pemilik Instance

Setup Instance

Ada dua cara menjalankan SumoRouter. Untuk kebanyakan orang, pakai One-Click Deploy di Sumopod.

One-Click Deploy di Sumopod

→ Deploy SumoRouter di Sumopod

  1. Buka link di atas (login ke Sumopod jika diminta).
  2. Pilih paket service, lalu klik Deploy. Server, PostgreSQL, dan Redis disiapkan otomatis.
  3. Setelah service berjalan, pasang domain kamu (mis. ai.brandkamu.id) dan buka URL-nya.
  4. Lanjutkan ke Setup pertama di bawah.

Karena model (Sumopod AI) dan pembayaran QRIS (Sumopod Managed Payment) juga dari Sumopod, semua urusan ada di satu akun.

Self-host dengan Docker

SumoRouter terdiri dari backend Rust, dashboard React, PostgreSQL, dan Redis. Semua dikemas dalam Docker image di ghcr.io/ariaseta/sumorouter.

TerminalCode
cp .env.example .env # isi: POSTGRES_PASSWORD, REDIS_PASSWORD, JWT_SECRET, SALT_KEY (openssl rand -hex 32), PUBLIC_URL docker compose -f docker-compose.ghcr.single.yml pull docker compose -f docker-compose.ghcr.single.yml up -d

Dashboard dan API ada di http://localhost:3000 (APP_PORT). Update = jalankan dua perintah yang sama lagi; pin versi dengan SUMOROUTER_TAG=1.2.3 di .env.

VariabelFungsi
PUBLIC_URLURL yang dibuka user; dipakai untuk redirect Google dan URL webhook
SALT_KEYHash API key dan enkripsi kredensial. Backup bersama database: kalau hilang, semua key dan kredensial tidak bisa dipakai
JWT_SECRETTanda tangan token sesi
TRUSTED_PROXIESIsi private (atau IP/CIDR) jika di belakang reverse proxy, supaya IP asli klien terbaca
CORS_ORIGINOrigin browser yang boleh memanggil /api/*

Setup pertama

  1. Buka dashboard: wizard meminta nama, email, dan password akun admin pemilik, lalu setup 2FA (wajib untuk admin).
  2. Admin → Models: isi API key Sumopod AI, klik Simpan & cek, lalu Refresh model.
  3. Atur harga jual (per model atau sekaligus lewat Atur markup), lalu aktifkan model yang mau dijual.
  4. Admin → Settings → Payment: isi kredensial Sumopod Managed Payment (Sandbox/Live) dan pasang URL webhook {PUBLIC_URL}/api/webhooks/sumopod/{sandbox|live} di Sumopod.
  5. Admin → Settings → Branding: nama situs, URL, dan ikon brand kamu. Template email juga bisa diubah.
  6. Opsional: metode login (Google OAuth), email (SMTP), branding, afiliasi, kupon, retensi log.

Keamanan singkat

  • Hanya hash API key yang disimpan; kredensial admin dienkripsi AES-256-GCM.
  • Prompt dan respons tidak pernah disimpan.
  • Admin wajib 2FA; semua perubahan admin tercatat di Audit log.
Last modified on