{
"id": "rule-1",
"name": "Mock user API",
"enabled": true,
"priority": 100,
"match": {
"url_contains": "/api/user",
"method": "GET"
},
"action": {
"type": "mock_response",
"status": 200,
"headers": [
{
"name": "content-type",
"value": "application/json"
}
],
"body": "{\"id\":1,\"name\":\"demo\"}"
}
}url_containsmethodhoststatus
rewrite_request_headersrewrite_response_headersmock_responsedelayscript
Script actions run Rhai with:
sessionheaderstrailersis_request
Supported return fields:
request_headersresponse_headersrequest_trailersresponse_trailersdelay_msmock_response
Example:
if is_request {
#{
request_headers: [#{ name: "x-rustnetlens-script", value: "rhai" }],
delay_ms: 50
}
} else {
#{
response_headers: [#{ name: "x-rustnetlens-script", value: "done" }]
}
}enabled = falserules are skipped.- Rules are applied by ascending
priority. - Mock responses short-circuit upstream forwarding.
- Script rules can rewrite headers, trailers, or emit a mock response.
- Rules are edited as JSON.
- Save applies immediately.
- The editor includes a simple mock example and a Rhai example.