You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* New Database Manager for [Webhook.site Databases](/database.html) that lets you create, modify and delete tables, the table structure, and individual rows.
* Browser notifications have been improved to show more details about emails and DNSHooks.
48
+
* Added `$request.sorting$` variable, a precise timestamp for filtering and sorting.
49
+
50
+
27
51
## 24 Feburary 2026
28
52
29
53
* New Feature: Alternate Domain - is `webhook.site` blocked on your network? Try the alternate domain toggle, which uses a different IP address and hostname.
Copy file name to clipboardExpand all lines: docs/webhookscript/examples.markdown
+184Lines changed: 184 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -597,3 +597,187 @@ respond('
597
597
</p>
598
598
'.format(json_encode(array), url))
599
599
```
600
+
601
+
## Converting all JSON data sent to a Webhook.site URL to a CSV file
602
+
603
+
This script has several moving parts:
604
+
605
+
* It remembers each time the export runs and only exports the requests that come after the last time the export was invoked
606
+
* It uses the Webhook.site API to fetch all requests sent to a Webhook.site URL
607
+
* It flattens the JSON data so that each field can become a header/column in the resulting CSV
608
+
* If the JSON data has a variable amount of fields ("columns"), this is handled automatically
609
+
* The resulting `$csv$` variable can be used directly after, as an attachment, in e.g. a [Send Email](/custom-actions/action-types.html#send-email) action
// $csv$ and $count$ can be used in downstream actions, e.g. Send Email
756
+
set('csv', csv)
757
+
set('count', count)
758
+
759
+
// Store latest seen date for use next time
760
+
store('tracking-export-latest', latest)
761
+
```
762
+
763
+
<br>
764
+
765
+
Additionally, you can use the following script to clean up/delete the data that was converted to CSV - we'd recommend adding it as a separate Script action and gate it with a Condition (for example with a query string comparison, `?delete=yes`) so no data is lost by accident.
766
+
767
+
```javascript
768
+
// Delete CSV-processed data
769
+
api_url =string_format(
770
+
'https://webhook.site/token/{}/requests?query=method:POST AND created_at:["{}" TO "{}"]',
0 commit comments