40 lines
1.7 KiB
Markdown
40 lines
1.7 KiB
Markdown
# verae-middleware
|
|
|
|
Zapier-facing HTTPS adapter (`/zapier/v1/*`) plus NATS workers. Zapier never speaks NATS or `api.veraetime.net`; this process does.
|
|
|
|
**Forgejo:** https://git.georgelambert.org/marchon/verae-middleware
|
|
**Clone:** `ssh://git@git.georgelambert.org:2223/marchon/verae-middleware.git`
|
|
**Catalog README (PDF):** https://zapier.georgelambert.org/packages/verae-zapier-middleware/README.pdf
|
|
**NATS contract:** https://zapier.georgelambert.org/docs-master/modules/verae-zapier-middleware/NATS.pdf
|
|
**Install / Docker / Proxmox:** https://zapier.georgelambert.org/packages/verae-ops/README.pdf
|
|
|
|
## Run
|
|
|
|
```bash
|
|
cd packages/verae-zapier-middleware
|
|
npm install
|
|
MOCK_VERAE=true NATS_ENABLED=false npm test
|
|
PORT=3100 MOCK_VERAE=true npm start # /health, /zapier/v1
|
|
```
|
|
|
|
Docker image: `Dockerfile` (Node 22, port 3100). Full stack: `verae-ops` compose.
|
|
|
|
## Environment
|
|
|
|
| Variable | Default | Purpose |
|
|
|----------|---------|---------|
|
|
| `PORT` | `3100` | HTTP bind |
|
|
| `VERAE_API_BASE_URL` | `http://localhost:8080` | Chain HTTPS |
|
|
| `MOCK_VERAE` | `false` | In-process mock chain |
|
|
| `NATS_ENABLED` | `false` | JetStream vs in-process poller |
|
|
| `NATS_URL` | `nats://127.0.0.1:4222` | Cluster URL (loopback / docker DNS) |
|
|
| `WAIT_TIMEOUT_MS` | — | Sync wait on `jobs.events` |
|
|
|
|
## Depends on
|
|
|
|
- **Upstream HTTPS:** zappier-edge (`x-api-key` already checked) or a lab client
|
|
- **Chain:** `api.veraetime.net` or `MOCK_VERAE=true`
|
|
- **NATS:** `jobs.watch` out, `jobs.events` in; optional `archive.put` / aggregator wait
|
|
- **Optional:** request-splitter (in-process), archive-worm, tree-node, webhook-deliver
|
|
|
|
Does **not** bind NATS publicly. See [verae-ops linking](https://zapier.georgelambert.org/packages/verae-ops/06-linking-services.pdf).
|