API Reference
Full API documentation is available on pkg.go.dev:
Packages
| Package | Description | Link |
|---|---|---|
event |
Core interfaces (Event, Bus, Invoker, Registry) | pkg.go.dev |
invoker |
Execution pipeline components | pkg.go.dev |
json |
JSON serialization with envelope format | pkg.go.dev |
jetstream |
NATS JetStream transport | pkg.go.dev |
nats |
NATS Core transport | pkg.go.dev |
redis |
Redis-backed stores | pkg.go.dev |
telemetry |
OpenTelemetry tracing | pkg.go.dev |
prometheus |
Prometheus metrics provider | pkg.go.dev |
Key Types
Core
Event- Base event interfaceBus- Bus interface (Subscribe, Close)Invoker- Middleware interfaceRegistry- Serialization interfaceEnvelope- Wire formatLocalBus- In-process busSubscriber- Grouped handler interfaceSubscribeOptionsProvider- Optional interface for subscriber-level subscribe optionsEmitOption- Functional option for EmitWithSubject- Overrides the publish subject (defaults toevt.Name())SubscribeOption- Functional option for SubscribeWithHandlerName- Sets handler name for metrics/loggingWithStream- JetStream stream name (required for JetStream)WithConsumer- JetStream durable consumer name
Invoker
Chain- Invoker chain compositionRetry- Retry with backoffCircuitBreaker- Circuit breakerRateLimiter- Rate limitingIdempotency- Duplicate detectionDLQ- Dead letter queueMetrics- Metrics collectionMetricProvider- Metrics interface
Error Types
PermanentError- Terminal errorRetryableError- Retryable errorErrDuplicate- Duplicate detectionErrRateLimited- Rate limit exceededErrCircuitOpen- Circuit breaker openErrSendToDLQ- Terminal error signal