How to hold a request and decide whether it reaches your service
Since app version 1.4.0
Add a pause rule in the inspector: a matching request stops before your service, you look at it and click "Let through" or "Drop". Pause works on the Pro and Ultra plans (what the inspector does for free).
How to add a rule
- Open an HTTPS tunnel's "Requests" tab (how to open the inspector) and the "Pause" view.
- Click "Add rule". The "New pause rule" window opens.
- In "Methods", pick the request methods, for example POST. With none picked, any method matches.
- In "Path", enter a path, for example
/webhooks/*: without*, a path containing that text matches; with*, the whole path is matched as a pattern. Empty means any path. - In "Sender", leave "Any" or pick a webhook service: Stripe, YooKassa, GitHub, T-Bank and others.
- In "What to hold", pick "Request" (it waits before the service), "Response" (the service's answer waits before the sender) or "Request and response".
- In "Wait for a decision", set 1 to 300 seconds. When the time runs out, the request goes on by itself.
- Click "Save". The rule shows up under "Pause rules", turned on.
A rule acts on connections opened after you save it: a connection your browser already holds to the link is not paused until the browser opens a new one.
"Conditions" narrow a rule: "Body contains" (text in the body, any case), "JSON field" (a body field equals a value or contains it) and "Address matches" (a regular expression over the path and the query). A request is held only when it meets every condition turned on.
What to do with a held request
A held request shows up on the left, under "Held now", with a countdown, and a counter lights up on the "Pause" view. In the log, such rows sit on top with the status "paused".
- "Let through": the request goes to the service, and the sender gets its answer.
- "⋯" → "Drop": the connection closes, and the sender gets no answer.
Below the queue, "Left the queue" shows the last five requests and what became of them: "let through", "dropped", "timed out" or "connection closed".
Webhook senders wait about 10 seconds for an answer (Slack 3 seconds), then send the request again: if you take longer, expect the retry.
In the whole app at most 20 requests and answers, and at most 40 MB of their bodies, are held at once; the rest go on without a pause. WebSocket requests, and requests and answers with a body over 1 MB, are never held.
To turn the pause off, switch the rule off in its row or delete it with "⋯" → "Delete". Rules last while the tunnel is open: once it closes or you sign out, they are gone. When the Pro or Ultra plan ends, new requests are no longer held, and those already held wait for your decision.
Check
Send a request that matches the rule to the tunnel's link: it shows up under "Held now", and after "Let through" the log shows your service's answer.