pub struct CustomRouteDefinition {
pub method: String,
pub path: String,
pub handler: String,
pub job: Option<JobConfig>,
pub posture: Option<RoutePosture>,
pub forward_auth: bool,
pub body_limit_bytes: Option<u64>,
pub timeout_secs: Option<u32>,
pub multipart: bool,
pub sse: Option<SseRouteDef>,
pub doc: Option<RouteDoc>,
}Fields§
§method: String§path: String§handler: String§job: Option<JobConfig>When present, the HTTP route accepts the request, persists a
wasm_jobs row, publishes to JetStream, and returns 202 Accepted
with {job_id}. The handler executes asynchronously on a worker
with no inline 30s wall.
posture: Option<RoutePosture>Who may call this route. None marks a manifest built before route
postures existed: the platform runs it in legacy mode (best-effort auth,
no enforcement) and warns. Some — always emitted by the current SDK —
makes the platform enforce the declared posture.
forward_auth: boolPass the caller’s authorization, cookie and proxy-authorization
headers into the guest. Without it they are stripped once the tenant’s
tenant_binding policy is enforced.
body_limit_bytes: Option<u64>The largest request body the route accepts; 4 MiB when unset.
timeout_secs: Option<u32>The route’s execution budget; 30 s when unset.
multipart: boolParse a multipart/form-data body into parts for the guest.
sse: Option<SseRouteDef>Serve the route as a server-sent event stream fed by a NATS subject.
doc: Option<RouteDoc>The route’s OpenAPI description; documentation only.
Implementations§
Source§impl CustomRouteDefinition
impl CustomRouteDefinition
Sourcepub const DEFAULT_BODY_LIMIT_BYTES: u64
pub const DEFAULT_BODY_LIMIT_BYTES: u64
The body cap of a route that declares none.
Sourcepub const MAX_BODY_LIMIT_BYTES: u64
pub const MAX_BODY_LIMIT_BYTES: u64
The largest body_limit_bytes a route may declare.
Sourcepub const TIMEOUT_SECS: RangeInclusive<u32>
pub const TIMEOUT_SECS: RangeInclusive<u32>
The range timeout_secs must fall in.
Sourcepub const MULTIPART_METHODS: [&'static str; 3]
pub const MULTIPART_METHODS: [&'static str; 3]
The methods a multipart route may use.
Sourcepub fn derived_features(&self) -> impl Iterator<Item = &'static str>
pub fn derived_features(&self) -> impl Iterator<Item = &'static str>
Platform features this route’s declaration requires.
Sourcepub fn uses_request_v2(&self) -> bool
pub fn uses_request_v2(&self) -> bool
Whether the guest receives the R2 request keys (query, client_ip,
…): only a route declaring an R2 capability does, so every other
guest’s request JSON stays byte-identical.