Production-ready API gateway configurations for Kong, AWS API Gateway, and a custom Python gateway implementation. Includes rate limiting, authentication, request transformation, and monitoring -- wit
Browse the actual product documentation and code examples included in this toolkit.
Key features of API Gateway Patterns
• **Kong declarative configs** for DB-less mode: services, routes, JWT auth, rate limiting, request/response transformation, health checks, CORS • **AWS API Gateway** OpenAPI spec with `x-amazon-apigateway-*` extensions, Lambda authorizer (stdlib Python), and tiered usage plans • **Custom Python gateway** built on `http.server` with token bucket rate limiting, API key auth, request/response transforms -- zero external dependencies • **3 rate limiting strategies**: per-IP, per-consumer, and tiered plans with route-specific overrides • **JWT authentication**: HMAC-SHA256 token creation, verification, and RBAC (role-based access control) • **Comparison guide**: Kong vs AWS API Gateway vs custom, with cost estimates, feature matrix, and migration paths
**Kong declarative configs** for DB-less mode: services, routes, JWT auth, rate limiting, request/response transformation, health checks, CORS
**AWS API Gateway** OpenAPI spec with `x-amazon-apigateway-*` extensions, Lambda authorizer (stdlib Python), and tiered usage plans
**Custom Python gateway** built on `http.server` with token bucket rate limiting, API key auth, request/response transforms -- zero external dependencies
**3 rate limiting strategies**: per-IP, per-consumer, and tiered plans with route-specific overrides
**JWT authentication**: HMAC-SHA256 token creation, verification, and RBAC (role-based access control)
**Comparison guide**: Kong vs AWS API Gateway vs custom, with cost estimates, feature matrix, and migration paths
Configure API Gateway Patterns parameters to see how the product works.
# Start with demo configuration (proxies to public test API) cd api-gateway-patterns python -m src # Or with a config file python -m src --config configs/gateway-dev.json # Test it curl http://127.0.0.1:8080/api/posts curl http://127.0.0.1:8080/api/posts/1