A single API gateway handles each call from the patient app and the staff dashboard. Node.js services behind it cover authentication and payments.
- REST endpoints for slot search, booking, rescheduling, cancellation, waitlist offers and visit history
- JSON schema validation at the gateway with a uniform error envelope and machine-readable error codes
- Per service timeouts, retries with exponential backoff and jitter on idempotent calls only, and circuit breakers on facing routes
- Token bucket rate limiting per user and per client application, which also blocks bots that scrape doctor slots
- Independent deployment of each service
