API Gateway
API Gateway
Section titled “API Gateway”Quellverzeichnis: modules/api-gateway/
APISIX-Anbindung: Routen, Rate-Limits, API-Keys und externe Zugangspunkte.
Services
Section titled “Services”Geschäftslogik des Moduls (src/services/):
AccessLogServiceApiConsumerServiceApiKeyNotFoundErrorApiKeyServiceApiKeyTerminalErrorConsumerAlreadyExistsErrorConsumerNotFoundErrorConsumerTerminalErrorDlpPolicyNotFoundErrorDlpServiceGatewayServiceRateLimitPolicyAlreadyExistsErrorRateLimitPolicyNotFoundErrorRateLimitServiceRouteAlreadyExistsErrorRouteMatchNotFoundErrorRouteNotFoundErrorRoutingServiceWebhookDeliveryNotFoundErrorWebhookServiceWebhookSubscriptionNotFoundErrorWebhookSubscriptionTerminalError
Repositories
Section titled “Repositories”Datenzugriffs-Ports (src/repositories/):
AccessLogRepositoryApiConsumerRepositoryApiKeyRepositoryDlpPolicyRepositoryInMemoryAccessLogRepositoryInMemoryApiConsumerRepositoryInMemoryApiKeyRepositoryInMemoryDlpPolicyRepositoryInMemoryQuotaUsageRepositoryInMemoryRateLimitPolicyRepositoryInMemoryRouteDefinitionRepositoryInMemoryWebhookDeliveryRepositoryInMemoryWebhookSubscriptionRepositoryQuotaUsageRepositoryRateLimitPolicyRepositoryRouteDefinitionRepositoryWebhookDeliveryRepositoryWebhookSubscriptionRepository
Domain Events
Section titled “Domain Events”Vom Modul emittierte Ereignisse (src/events.ts):
API_GATEWAY_EVENT_TYPESEventHandlerapiKeyCreatedapiKeyRevokedapiKeyRotatedconsumerApprovedconsumerRegisteredconsumerRevokedconsumerSuspendedquotaAlertrateLimitExceededrouteDeprecatedroutePublishedwebhookDeadLetteredwebhookDeliveryFailedwebhookSubscribed
API-Endpunkte
Section titled “API-Endpunkte”HTTP-Endpunkte unter api/routes/api-gateway/ — Details in der API-Referenz.
| Methode | Pfad | Datei |
|---|---|---|
GET |
/v1/gateway/access-log |
policies.ts |
GET |
/v1/gateway/access-log/:id |
policies.ts |
GET |
/v1/gateway/api-keys |
consumers.ts |
GET |
/v1/gateway/api-keys/:id |
consumers.ts |
POST |
/v1/gateway/api-keys/:id/revoke |
consumers.ts |
POST |
/v1/gateway/api-keys/:id/rotate |
consumers.ts |
GET |
/v1/gateway/consumers |
consumers.ts |
POST |
/v1/gateway/consumers |
consumers.ts |
GET |
/v1/gateway/consumers/:id |
consumers.ts |
PATCH |
/v1/gateway/consumers/:id |
consumers.ts |
GET |
/v1/gateway/consumers/:id/api-keys |
consumers.ts |
POST |
/v1/gateway/consumers/:id/api-keys |
consumers.ts |
POST |
/v1/gateway/consumers/:id/revoke |
consumers.ts |
POST |
/v1/gateway/consumers/:id/scopes |
consumers.ts |
POST |
/v1/gateway/consumers/:id/suspend |
consumers.ts |
POST |
/v1/gateway/consumers/:id/transition |
consumers.ts |
GET |
/v1/gateway/dlp-policies |
policies.ts |
POST |
/v1/gateway/dlp-policies |
policies.ts |
GET |
/v1/gateway/dlp-policies/:id |
policies.ts |
PATCH |
/v1/gateway/dlp-policies/:id |
policies.ts |
DELETE |
/v1/gateway/dlp-policies/:id |
policies.ts |
GET |
/v1/gateway/quota/:consumerId |
policies.ts |
GET |
/v1/gateway/rate-limit-policies |
policies.ts |
POST |
/v1/gateway/rate-limit-policies |
policies.ts |
GET |
/v1/gateway/rate-limit-policies/:id |
policies.ts |
DELETE |
/v1/gateway/rate-limit-policies/:id |
policies.ts |
GET |
/v1/gateway/routes |
policies.ts |
POST |
/v1/gateway/routes |
policies.ts |
GET |
/v1/gateway/routes/:id |
policies.ts |
PATCH |
/v1/gateway/routes/:id |
policies.ts |
DELETE |
/v1/gateway/routes/:id |
policies.ts |
GET |
/v1/gateway/webhooks/deliveries |
webhooks.ts |
GET |
/v1/gateway/webhooks/deliveries/:id |
webhooks.ts |
POST |
/v1/gateway/webhooks/deliveries/:id/retry |
webhooks.ts |
GET |
/v1/gateway/webhooks/deliveries/dead-letter |
webhooks.ts |
POST |
/v1/gateway/webhooks/dispatch |
webhooks.ts |
GET |
/v1/gateway/webhooks/subscriptions |
webhooks.ts |
POST |
/v1/gateway/webhooks/subscriptions |
webhooks.ts |
GET |
/v1/gateway/webhooks/subscriptions/:id |
webhooks.ts |
PATCH |
/v1/gateway/webhooks/subscriptions/:id |
webhooks.ts |
POST |
/v1/gateway/webhooks/subscriptions/:id/pause |
webhooks.ts |
POST |
/v1/gateway/webhooks/subscriptions/:id/resume |
webhooks.ts |
POST |
/v1/gateway/webhooks/subscriptions/:id/revoke |
webhooks.ts |
Public API
Section titled “Public API”Über den Modul-Index (src/index.ts) exportierte Symbole — die einzige erlaubte Zugriffsart von außen:
// Aggregate Roots ApiConsumer// ApiKey apiKeyCreated// ApiKey Generator type GeneratedApiKey// ApiKey transitions canTransitionApiKey// CloudEvents type BuildCloudEventInput// Consumer consumerRegistered// Consumer transitions canTransitionConsumer// DLP Masker type DlpMasker// DTOs - AccessLog CreateAccessLogInput// DTOs - ApiConsumer RegisterConsumerInput// DTOs - ApiKey CreateApiKeyInput// DTOs - DlpPolicy CreateDlpPolicyInput// DTOs - QuotaUsage CheckQuotaInput// DTOs - RateLimitPolicy CreateRateLimitPolicyInput// DTOs - RouteDefinition CreateRouteInput// DTOs - WebhookDelivery DispatchWebhookInput// DTOs - WebhookSubscription CreateWebhookSubscriptionInput// Default Tier Limits DEFAULT_TIER_LIMITS// Enums ConsumerStatus// Errors ValidationError// Helper now// Rate-Limit / Quota rateLimitExceeded// Route routePublished// Signing Secret Provider type SigningSecretProvider// Validations - Common isValidTimestamp// Validations - Enums isValidConsumerStatus// Validations - Specific isValidHttpsUrl// Value Objects RateLimitConfig// Webhook webhookSubscribed// Webhook Dispatcher type WebhookDispatcher// WebhookDelivery transitions canTransitionDelivery// WebhookSubscription transitions canTransitionWebhookSubscriptionAPI_GATEWAY_EVENT_TYPESAccessLogAccessLogServiceApiConsumerServiceApiKeyApiKeyNotFoundErrorApiKeyServiceApiKeyStatus- … und 165 weitere
Zurück zur Modul-Übersicht oder zur Startseite.