master-zapier-plan-draft/docs/api/middleware-openapi.yaml
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

80 lines
2 KiB
YAML

openapi: 3.0.0
info:
title: Verae Zapier Middleware API
description: |
Zapier-facing HTTP surface. Zapier CLI app calls these routes only.
Async job watching and webhook delivery may use NATS behind this API.
version: 0.1.0
servers:
- url: http://localhost:3100
description: Local middleware
paths:
/health:
get:
summary: Liveness probe
operationId: health
responses:
'200':
description: OK
/zapier/v1/auth/me:
get:
summary: Validate API key connection (Zapier auth test)
operationId: authMe
security:
- BearerAuth: []
responses:
'200':
description: Tenant + plan + usage
'401':
description: Unauthorized
/zapier/v1/timestamp:
post:
summary: Create timestamp (async jobId)
operationId: createTimestamp
security:
- BearerAuth: []
responses:
'202':
description: Accepted
/zapier/v1/timestamp/wait:
post:
summary: Create timestamp and wait for completion
operationId: createTimestampAndWait
security:
- BearerAuth: []
responses:
'200':
description: Completed or failed status
/zapier/v1/verify:
post:
summary: Verify certificate
operationId: verifyTimestamp
security:
- BearerAuth: []
responses:
'200':
description: Verification result
/zapier/v1/webhooks/subscribe:
post:
summary: REST Hook subscribe
operationId: webhookSubscribe
security:
- BearerAuth: []
responses:
'201':
description: Subscribed
/zapier/v1/webhooks/unsubscribe:
delete:
summary: REST Hook unsubscribe
operationId: webhookUnsubscribe
security:
- BearerAuth: []
responses:
'200':
description: Unsubscribed
components:
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: Middleware API key (zmw_…) or session token (zmt_…)