Skip to content

EN Reference Runtime Models

Cavanshirpro edited this page Sep 19, 2026 · 1 revision

Cache, realtime, event and observability fields

English · Türkçe · Languages / Diller

Scope: JSON API Forge 0.5.1 · Source review: 17 September 2026 · Language: English

These tables were generated from the Pydantic models and JSON Schema at the pinned commit. Usage guides: Caching, realtime, observability.

“Required” means the field must be present in JSON; acceptance of null is a separate type rule. A Model() default creates that model using its documented defaults. Empty lists/objects are created separately for each instance. — means no default or no constraint for that column.

Cross-field validators apply in addition to the table: permission/public selection, URL/host safety, tenant/owner columns, cache/idempotency/transaction combinations, schema collisions and safe regex. JSON Schema validation alone does not replace forge validate. Unknown fields are rejected through extra="forbid".

CacheConfig

Field Type Required Default Schema constraints
enabled boolean No true —
backend enum ["memory","redis","tiered"] No "memory" —
default_ttl_seconds integer No 30 min=1
stale_ttl_seconds integer No 0 min=0
max_entries integer No 10000 min=100
key_prefix string No "forge" —
cache_lists boolean No true —
cache_reads boolean No true —
fail_open boolean No true —

RealtimeConfig

Field Type Required Default Schema constraints
backend enum ["memory","redis"] No "memory" —
redis_prefix string No "forge:events" —

EventChannelConfig

Field Type Required Default Schema constraints
name string Yes — —
path string | null No null —
public_publish boolean No false —
public_subscribe boolean No false —
publish_permission string | null No null —
subscribe_permission string | null No null —
websocket_enabled boolean No true —
sse_enabled boolean No true —
max_message_bytes integer No 65536 min=128; max=1048576
queue_size integer No 256 min=1; max=10000
max_websocket_connections integer No 1000 min=1; max=100000
max_sse_connections integer No 1000 min=1; max=100000
allowed_origins list[string] No [] —
heartbeat_seconds integer No 15 min=1
websocket_message_requests integer | null No null min=1
websocket_message_window_seconds integer | null No null min=1
websocket_message_burst integer | null No null min=1

WebhookDocConfig

Field Type Required Default Schema constraints
name string Yes — —
method enum ["POST","PUT","PATCH"] No "POST" —
summary string | null No null —
description string | null No null —
payload_schema object | null No null —

ObservabilityConfig

Field Type Required Default Schema constraints
metrics_enabled boolean No true —
metrics_path string No "/metrics" —

Sources and verification

This page describes the behavior at the pinned commits below. Recheck these contracts when upgrading.


English home · All English pages · Version maintenance

Clone this wiki locally