Whistle · Example Payload

Whistle Rule Example

Example rule configurations for common Whistle proxy use cases.

Debugging ProxyProxyNetwork DebuggingHTTPHTTPSWebSocketDeveloper Tools

Whistle Rule Example is an example object payload from Whistle, with 3 top-level fields. It illustrates the shape of data this provider's APIs accept or return.

Top-level fields

titledescriptionexamples

Example Payload

whistle-rule-example.json Raw ↑
{
  "title": "Whistle Rule Configuration Examples",
  "description": "Example rule configurations for common Whistle proxy use cases.",
  "examples": [
    {
      "use_case": "API Mocking",
      "description": "Map API requests to local JSON files for offline development.",
      "rules": [
        "api.example.com/users file:///Users/dev/mocks/users.json",
        "api.example.com/products file:///Users/dev/mocks/products.json"
      ]
    },
    {
      "use_case": "Redirect to Test Server",
      "description": "Forward production API calls to a local or staging server.",
      "rules": [
        "www.production.com http://localhost:3000",
        "api.production.com/v1 http://staging.internal.com/v1"
      ]
    },
    {
      "use_case": "CORS Configuration",
      "description": "Add CORS headers to allow cross-origin requests during development.",
      "rules": [
        "api.example.com resCors://*"
      ]
    },
    {
      "use_case": "Request Header Injection",
      "description": "Inject authentication headers into outgoing requests.",
      "rules": [
        "api.example.com reqHeaders://(Authorization: Bearer test-token-123)"
      ]
    },
    {
      "use_case": "Response Status Override",
      "description": "Force specific HTTP status codes for testing error handling.",
      "rules": [
        "api.example.com/error statusCode://500",
        "api.example.com/not-found statusCode://404"
      ]
    },
    {
      "use_case": "Network Throttling",
      "description": "Simulate slow network conditions for testing.",
      "rules": [
        "*.example.com speed://20",
        "api.example.com delay://2000"
      ]
    },
    {
      "use_case": "Remote Debugging",
      "description": "Attach Weinre debugger to web pages for remote DOM inspection.",
      "rules": [
        "www.example.com weinre://debug-session-1"
      ]
    }
  ]
}