원클릭으로
api-gateway
Design and configure API gateways — routing, rate limiting, authentication,
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Design and configure API gateways — routing, rate limiting, authentication,
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Consult and write the ARAYA postoffice — the operational-directive channel. Advisory, never a gate: read it at cycle start, append your entry at cycle end, consider its directives, never be blocked by it. Governance acts never travel the postoffice.
Audit and enforce brand compliance across all projects and platforms — logo,
Design REST and GraphQL APIs following OpenAPI 3.1 standards. Produce complete
Connect frontend to backend — type-safe API clients, request/response handling,
Implement authentication and authorization middleware — JWT validation, role-based
Design scalable component architectures — design systems, component libraries,
| name | api-gateway |
| description | Design and configure API gateways — routing, rate limiting, authentication, |
Design and configure API gateways — routing, rate limiting, authentication, request/response transformation, and API composition — providing a single entry point for all client traffic.
Clients calling microservices directly leads to tight coupling, security sprawl, and complex client logic. An API gateway consolidates authentication, rate limiting, routing, and transformation at the edge — clients call one endpoint; the gateway handles the rest.
When an application has more than 2 backend services. When implementing authentication at the edge. When clients need aggregated responses from multiple services. When implementing rate limiting or request transformation.
Service inventory, authentication strategy, client requirements (web, mobile, API).
# gateway/config.yaml (Kong / KrakenD / Express Gateway)
services:
- name: user-service
url: http://user-service:3001
routes:
- name: users
paths: ["/api/v1/users"]
methods: ["GET", "POST", "PUT", "DELETE"]
strip_path: false
- name: trade-service
url: http://trade-service:3002
routes:
- name: trades
paths: ["/api/v1/orders", "/api/v1/portfolio"]
methods: ["GET", "POST"]
strip_path: false
- name: pricing-service
url: http://pricing-service:3003
routes:
- name: pricing
paths: ["/api/v1/prices"]
methods: ["GET"]
strip_path: false
plugins:
# Global: Authentication
- name: jwt
config:
claims_to_verify: ["exp"]
secret: ${JWT_SECRET}
# Global: Rate Limiting
- name: rate-limiting
config:
minute: 100
policy: local
# Per-route overrides
- name: rate-limiting
route: trades
config:
minute: 300 # Higher limit for trading endpoints
# CORS
- name: cors
config:
origins: ["https://app.mantradecoin.com"]
methods: ["GET", "POST", "PUT", "DELETE"]
headers: ["Authorization", "Content-Type"]
max_age: 3600
# Request logging
- name: http-log
config:
http_endpoint: http://log-service:3100/logs
method: POST
timeout: 1000
* in production