master-zapier-plan-draft/packages/verae-zapier
George Lambert 51ae79b75f Milestone 3: NATS wait (gate 9), hash lookup, zappier timestamp, NS1 tunnel
Wait-via-NATS returns completed or pending+jobId (GATE 9). Mock SHA256
idempotent register + GET /hashes/{sha256}. Zappier commercial edge has
POST /v1/timestamp and hash-lookup. GATE 12 smoke (signup + wait) passes.

NS1 NATS is 127.0.0.1:4222 on 70.88.205.138; SSH tunnel :14222. Local
nats-server -js used for isolated tests. Activate app adds Echo Text.

Learned: JetStream on NS1 is loopback-only; do not bind 4222 public.
2026-09-09 02:54:02 -04:00
..
creates Milestone 1: Add Numbers Zapier app, /v1/add, developer setup guide 2026-09-09 02:41:34 -04:00
searches Milestone 3: NATS wait (gate 9), hash lookup, zappier timestamp, NS1 tunnel 2026-09-09 02:54:02 -04:00
test Milestone 3: NATS wait (gate 9), hash lookup, zappier timestamp, NS1 tunnel 2026-09-09 02:54:02 -04:00
triggers Milestone 0: import zappier billing, Verae middleware, and Zapier research 2026-09-09 02:37:36 -04:00
authentication.js Milestone 0: import zappier billing, Verae middleware, and Zapier research 2026-09-09 02:37:36 -04:00
index.js Milestone 3: NATS wait (gate 9), hash lookup, zappier timestamp, NS1 tunnel 2026-09-09 02:54:02 -04:00
package.json Milestone 0: import zappier billing, Verae middleware, and Zapier research 2026-09-09 02:37:36 -04:00
README.md Milestone 0: import zappier billing, Verae middleware, and Zapier research 2026-09-09 02:37:36 -04:00

verae-zapier

Zapier Platform CLI app for Verae. Phase 11 in ../TODO.md.

Role

Runs on Zapiers servers. Calls only the middleware HTTPS API (MIDDLEWARE_BASE_URL), never NATS and never api.veraetime.net directly.

Planned modules

File Purpose
authentication.js Custom API key auth → GET /zapier/v1/auth/me
index.js App definition, beforeRequest, afterResponse error mapping
creates/timestamp_and_wait.js Primary action
creates/create_timestamp.js Async jobId action
creates/verify_timestamp.js Verify certificate
creates/batch_timestamp.js Batch create
searches/job_status.js Lookup by jobId
triggers/timestamp_completed.js REST Hook

See ../docs/developer/modules/function-reference.md for I/O contracts.

Env

export MIDDLEWARE_BASE_URL=https://your-middleware.example.com

Gate

npm run gate:11   # from monorepo root, after Phase 11 implementation