{"slug":"logfilter-hectichustle-workers-dev-filter-306f67","title":"Filter a JSON/NDJSON event log by field/operator/time range; returns matching ev","host":"logfilter.hectichustle.workers.dev","method":"POST","resource":"https://logfilter.hectichustle.workers.dev/filter","category":"other","description":"Filter a JSON/NDJSON event log by field/operator/time range; returns matching events. Use when an agent needs to pull matching rows (thresholds, equality, substring, threshold crossings, time windows) out of a log or metrics event list. Body: {events:[...]|\"<ndjson>\", filter:{field,op,value?,directi","price_listed":0.005,"price_asked":0.005,"state":"answering","state_label":"Answering","checks_7d":1,"answered_7d":1,"latency_ms_median":337,"reported_calls_30d":1,"reported_payers_30d":1,"networks":["eip155:8453"],"badge":"unverified","paid_checks_7d":0,"paid_ok_7d":0,"example_input":{"body":{"events":[{"cpu":40,"timestamp":"2026-01-01T00:00:00Z"},{"cpu":95,"timestamp":"2026-01-01T00:01:00Z"}],"filter":{"field":"cpu","op":"gt","value":90}},"bodyType":"json","method":"POST","type":"http"},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"body":{"properties":{"events":{"description":"Array of event objects, or an NDJSON string (one JSON object per line)","type":["array","string"]},"filter":{"properties":{"direction":{"description":"crosses_threshold only (default both)","enum":["up","down","both"],"type":"string"},"field":{"description":"Dot path into each event, e.g. metrics.cpu","type":"string"},"from":{"description":"Inclusive lower time bound; ISO-8601, epoch s or ms","type":["string","number"]},"limit":{"description":"Max events returned","minimum":0,"type":"integer"},"op":{"enum":["gt","gte","lt","lte","eq","ne","contains","crosses_threshold"],"type":"string"},"timeField":{"description":"Event time field (default timestamp)","type":"string"},"to":{"description":"Exclusive upper time bound","type":["string","number"]},"value":{"description":"Comparison value; numeric threshold for crosses_threshold"}},"required":["field","op"],"type":"object"}},"required":["events","filter"],"type":"object"},"bodyType":{"enum":["json","form-data","text"],"type":"string"},"method":{"enum":["POST"],"type":"string"},"type":{"const":"http","type":"string"}},"required":["type","method","bodyType","body"],"type":"object"},"output":{"properties":{"example":{"properties":{"counts":{"properties":{"inTimeRange":{"type":"integer"},"input":{"type":"integer"},"matched":{"type":"integer"},"returned":{"type":"integer"},"truncated":{"type":"boolean"}},"type":"object"},"events":{"description":"Matching events, original order","items":{"type":"object"},"type":"array"}},"required":["events","counts"],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"},"history":[{"day":"2026-10-11","reachable":true,"status":402,"valid_402":true,"asked_usdc":0.005,"price_match":true,"latency_ms":337,"error":null}],"description_full":"Filter a JSON/NDJSON event log by field/operator/time range; returns matching events. Use when an agent needs to pull matching rows (thresholds, equality, substring, threshold crossings, time windows) out of a log or metrics event list. Body: {events:[...]|\"<ndjson>\", filter:{field,op,value?,direction?,timeField?,from?,to?,limit?}}. Ops: gt,gte,lt,lte,eq,ne,contains,crosses_threshold. Free demo at POST /demo; docs at /openapi.json.","last_updated":"2026-10-11T05:23:42.951Z","schemes":["exact"]}