master-zapier-plan-draft/research/zapier/verae-zapier-api/README.md
George Lambert b4150c8250 Milestone 0: import zappier billing, Verae middleware, and Zapier research
Compose-ready workspace: packages/zappier (rate card, portal, Stripe),
packages/verae-zapier-middleware (timestamp + NATS), packages/verae-zapier
(CLI app), vendor/zapier-platform, and research/zapier vendor corpus.

Gate 0 structure checks pass. Product code and research are not yet wired.
2026-09-09 02:37:36 -04:00

3 KiB
Raw Permalink Blame History

Verae Zapier Platform

Integration stack connecting Zapier to the Verae Timestamping Service (https://api.veraetime.net) via a hybrid HTTP middleware edge + NATS JetStream workers.

Architecture (bottom line)

Users → Zapier UI
Zapier cloud runs verae-zapier (CLI app)
  → HTTPS → verae-zapier-middleware /zapier/v1/*
       → (sync) HTTPS → api.veraetime.net
       → (async) NATS JetStream → workers → api.veraetime.net
                                         → Zapier REST Hook URLs
  • Zapier never connects to NATS.
  • Middleware HTTP handles auth, billing, and the public API surface.
  • NATS owns job watching, completion events, and reliable webhook delivery.

Packages

Path Role
verae-zapier-middleware/ Express proxy + NATS workers (you host)
verae-zapier/ Zapier Platform CLI app (runs on Zapier)
docs/ Architecture + developer function reference
TODO.md Dependency-ordered plan with test gates

Quick start

cd /Users/marchon/datacubes/verae-zapier-api

# Install (middleware)
cd verae-zapier-middleware && npm install && cd ..

# Run documentation/structure gate
npm run gate:0

# Run debug facility tests (Phase 1)
npm run gate:1

# Enable failure tracing at runtime (examples)
export DEBUG_VERAE=1                    # all namespaces
export DEBUG_VERAE=auth,nats,jobs       # selected
export DEBUG_VERAE_LEVEL=debug          # debug | info | warn | error

Implementation order

Work only in the order defined in TODO.md. Each phase ends with a GATE that must pass before the next phase.

npm run gate:all   # phases 012 in order; stops on first failure

Documentation map

Document Contents
TODO.md Phased plan, dependencies, gates
docs/architecture/overview.md System design
docs/architecture/nats-subjects.md Subjects, streams, payloads
docs/developer/debugging.md Runtime debug tracing
docs/developer/modules/ Function I/O reference per module
docs/plans/phase-gates.md Gate commands and acceptance criteria

Environment (middleware)

Variable Default Purpose
PORT 3100 HTTP listen port
VERAE_API_BASE_URL http://localhost:8080 Upstream Verae API
MOCK_VERAE false Local mock of Verae HTTP API
NATS_URL nats://127.0.0.1:4222 NATS server
NATS_ENABLED false Use JetStream workers vs in-process poller
TOKEN_SECRET dev secret HMAC for middleware session tokens
DEBUG_VERAE unset Runtime debug namespaces
DEBUG_VERAE_LEVEL debug Minimum log level when debug enabled
STORE_PATH ./data/store.json MVP tenant/usage store

License

UNLICENSED — internal Verae platform work.