4.1 KiB
Bring Verae Time × Zapier online
This is the top document for install, first-up, and monitoring. Platform-specific detail lives in the numbered ops chapters; do not start there.
Catalog: https://zapier.georgelambert.org/packages/verae-ops/GETTING-STARTED.pdf
Billing / users (zappier-edge): https://zapier.georgelambert.org/packages/zappier/docs/USER-MANUAL.pdf
Operator console: http://127.0.0.1:3850/ (loopback) · https://zapier.georgelambert.org/packages/verae-fleet/docs/CONSOLE.pdf
What you are turning on
| Piece | Job | Default |
|---|---|---|
| zappier-edge | Billing, API keys, customer portal, admin, Stripe; meters then proxies to middleware | :3000 public HTTPS |
| account-balance | NATS prepaid balances (SoT) | :3010 |
| customer-service | CS credit additions + review | :3011 |
| sales-pricing | Per-customer sales quotes | :3012 |
| accounting-export | QuickBooks IIF / CSV | :3013 |
| verae-middleware | Zapier /zapier/v1, chain, NATS |
:3100 |
| NATS JetStream | Private jobs / archive | :4222 not public |
| worm ×3, tree-node ×3 | Off-chain files and Merkle leaves | fleet floor |
| fleet | Replica floors, SSH hosts, Trace, Docs | :3850 loopback |
Zapier cloud talks only to zappier-edge over HTTPS.
The billing and user platform is the standalone zappier project (/Users/marchon/zappier, Forgejo zappier-edge): portal signup, TOTP, API keys, rate card, Stripe meter, PO invoices, admin users. Verae middleware does not replace it.
15-minute lab (one machine)
git clone ssh://git@git.georgelambert.org:2223/marchon/master-zapier-plan-draft.git
cd master-zapier-plan-draft
export MONOREPO="$PWD"
cd packages/verae-ops
docker compose up --build
Check:
curl -fsS http://127.0.0.1:3000/health # zappier-edge (billing + users)
curl -fsS http://127.0.0.1:3010/health # account-balance (NATS SoT)
curl -fsS http://127.0.0.1:3011/health # customer-service
curl -fsS http://127.0.0.1:3012/health # sales-pricing
curl -fsS http://127.0.0.1:3100/health # middleware
Open:
- Customer portal: http://127.0.0.1:3000/portal — sign up, copy
x-api-key, Statement tab - Admin: http://127.0.0.1:3000/admin — Statement per customer
- CS review: http://127.0.0.1:3011/
- Sales review: http://127.0.0.1:3012/
- Accounting review/export: http://127.0.0.1:3013/
- API docs: http://127.0.0.1:3000/docs
Do not publish NATS 4222.
Operator console (monitor)
On the same machine (or SSH tunnel ssh -L 3850:127.0.0.1:3850 user@host):
cd "$MONOREPO/packages/verae-fleet"
node src/cli.js serve
http://127.0.0.1:3850/ — Fleet (green/yellow/red), Trace, Docs. Tree-node min 3; pause does not count.
node src/cli.js status
node src/cli.js ssh-check ns1
Point Zapier at the lab
- TLS in front of
:3000(Caddy). - Zapier app env:
MIDDLEWARE_BASE_URL=https://<zappier-host>(edge meters, then proxies to middleware). - Connect with the portal API key.
Production (pick one)
| Where | Read |
|---|---|
| Docker | 02-docker.pdf |
| Proxmox | 03-proxmox.pdf |
| Cloud VMs | 04-virtual-servers.pdf |
| Dedicated / NS1 | 05-dedicated-hardware.pdf |
| Env vars & NATS | 06-linking-services.pdf |
| Backup / upgrade | 07-maintenance.pdf |
Daily monitor
| Check | Expect |
|---|---|
curl -fsS https://zappier.example.com/health |
200 |
curl -fsS https://middleware.example.com/health |
200 |
NATS http://127.0.0.1:8222/healthz on each node |
ok (localhost only) |
| Fleet tree-node available ≥ 3 | green |
| Portal login + key still works | 200 /v1/status with x-api-key |
If something is red
- Fleet row color: yellow = paused/degraded, red = below floor —
restartthat replica. - 401/402 from Zapier → zappier-edge keys and rate card, not NATS.
- Archive lookup empty → bloom miss is silence; check worm/tree floors, not “error replies”.