Fetch
Web Standard Fetch API source for walkerOS. Platform-agnostic (Request) => Response signature that runs on Cloudflare Workers, Vercel Edge, Deno, Bun, and Node.js 18+. Supports batch processing, configurable CORS, and pixel tracking via a 1x1 transparent GIF for GET requests.
The Fetch source is a server source in the walkerOS flow:
It receives events via the Fetch API and forwards them to your destinations. Works on any platform supporting Web Standards.
Installation
The path setting has been renamed to paths (array). The old path still works but is deprecated and will be removed in the next major version.
// Before (deprecated)
settings: { path: '/events' }
// After
settings: { paths: ['/events'] }
- Integrated
- Bundled
Configuration
This source uses the standard source config wrapper (consent, data, env, id, ...). For the shared fields see source configuration. Package-specific fields live under config.settings and are listed below.
Settings
| Property | Type | Description | More |
|---|---|---|---|
path | string | Deprecated: use paths instead | |
paths | Array<any> | Route paths to handle. String shorthand accepts GET+POST. RouteConfig allows per-route method control. | |
cors | boolean | object | CORS configuration: false = disabled, true = allow all (default), object = custom | |
maxRequestSize | integer | Maximum request body size in bytes | |
maxBatchSize | integer | Maximum events per batch request |
Mapping
This package does not define custom rule-level settings. For the standard rule fields (consent, condition, data, batch, name, policy) see mapping.
Examples
batch request
pixel get
post event
Ingest metadata
Extract request metadata and forward it through the pipeline.
Available ingest paths
| Path | Description |
|---|---|
url | Full request URL |
headers.get('name') | Via function: { fn: (req) => req.headers.get('name') } |
The Fetch API uses Request objects where headers are accessed via .get() method. Use mapping functions for header extraction.