Transform Pipelines

16 Actions.
Zero Code Changes.

Transform requests and responses at the gateway level. Extract JWT claims, mask PII, rename fields, inject headers — all configured per route with conditional execution.

Pipeline Execution Flow

Incoming Request

Request Pipeline (9 actions)

Headers, body, query params, JWT extraction

Proxy → Your Backend

Response Pipeline (7 actions)

PII masking, headers, field removal, security

Response to Client

Request Actions

Transform the request before it reaches your backend.

JWT Claim → Header

Extract JWT claims (sub, email, role) and inject as request headers for your backend.

JWT claim "sub" → X-User-Id header
Set Header

Add or override request headers before they reach your backend.

Add "X-Gateway: nolxy" to every request
Remove Header

Strip sensitive or unnecessary headers from requests.

Remove "X-Debug-Token" in production
Rename Field

Rename JSON body fields for API version compatibility.

"customer_id_deprecated" → "customerId"
Set Default

Inject missing fields with default values.

Add "version": "v2" if not present
String Trim

Trim whitespace from string fields in the request body.

" hello " → "hello"
String to Lower

Lowercase string fields for consistent processing.

"John@Email.COM" → "john@email.com"
Set Query Param

Add or override URL query parameters.

Add "format=json" to all requests
Remove Query Param

Strip query parameters before forwarding.

Remove "debug=true" in production

Response Actions

Transform the response before it reaches the client.

Hide Sensitive Data

Mask or remove PII fields from responses. Supports dot notation and wildcards.

"ssn": "123-45-6789" → "ssn": "***REDACTED***"
Set Response Header

Add or override response headers returned to the client.

Add "X-Request-Id" for tracing
Remove Response Header

Strip internal headers from responses before they reach the client.

Remove "X-Powered-By" for security
Remove Field

Remove JSON fields from the response body.

Remove "internal_id" from API responses
Replace String

Find and replace strings in the response body.

Replace internal URLs with public URLs
Security Headers

Inject security headers: CSP, HSTS, X-Frame-Options, and more.

Add OWASP-recommended security headers
Add Header

Append a header to the response (does not override existing).

Add "Cache-Control: public, max-age=300"

Pipeline Engine

High-performance execution with compiled pipelines and conditional logic.

Compiled Pipelines

Pipelines are compiled once and cached in LRU (10K entries, 5min TTL). Subsequent executions skip parsing.

Conditional Execution

Actions can be filtered by HTTP method or path pattern. Only run transforms when they apply.

Graceful Degradation

If an action fails, the pipeline continues. Errors are logged but never break the request flow.

Dot Notation & Wildcards

Target nested fields with "user.address.city" or arrays with "items.*.price" syntax.

Real-World Use Cases

Security Facelift

Your backend uses API keys in headers but your frontend uses JWT. Use jwtClaimToHeader to extract the user ID and inject it as a header — zero backend changes.

  • JWT claim → X-User-Id header
  • Strip Authorization header downstream
PII Compliance

Your API returns SSNs, emails, and phone numbers. Use hideSensitiveData with wildcards to mask them at the gateway — no backend refactor.

  • Mask users.*.ssn → ***REDACTED***
  • Remove internal_id fields
API Versioning

Your v1 API uses customer_id but v2 uses customerId. Use renameField to support both without maintaining two codebases.

  • Rename fields per route
  • Set defaults for missing fields

Transform Without Touching Your Code

Pipelines are available on Pro plans and above. Configure per-route transformations in your dashboard or via Gateway as Code.