Webhook Toolkit¶
Webhook and HTTP testing utilities in one API. Create temporary bins that capture any inbound HTTP request, inspect full headers and bodies, replay captured traffic to target systems, and build mock endpoints with custom status, headers, body, and response delay.
Base URL¶
https://webhook.toolkitapi.io/v1/
Endpoints¶
Request Bins¶
| Method | Endpoint | Description |
|---|---|---|
POST |
/v1/bins |
Create a request bin |
GET |
/v1/bins/{bin_id} |
Get bin metadata and request count |
DELETE |
/v1/bins/{bin_id} |
Delete a bin and all captured requests |
GET |
/v1/bins/{bin_id}/requests |
List captured requests (newest first) |
GET |
/v1/bins/{bin_id}/requests/{request_id} |
Get full request detail |
POST |
/v1/bins/{bin_id}/requests/{request_id}/replay |
Replay one captured request to a target URL |
ANY |
/v1/catch/{bin_id} |
Public catch endpoint that captures inbound traffic |
Mock Endpoints¶
| Method | Endpoint | Description |
|---|---|---|
POST |
/v1/mocks |
Create a mock endpoint |
GET |
/v1/mocks/{mock_id} |
Get mock metadata and hit count |
DELETE |
/v1/mocks/{mock_id} |
Delete a mock endpoint |
ANY |
/v1/mock/{mock_id} |
Public mock serving endpoint |
Quick SDK Example¶
from toolkitapi import Webhook
with Webhook(api_key="tk_...") as wh:
created = wh.create_bin(name="stripe-test", ttl_seconds=3600)
bin_id = created["bin"]["bin_id"]
# Send webhook events to:
# https://webhook.toolkitapi.io/v1/catch/{bin_id}
requests = wh.list_bin_requests(bin_id, limit=20)
print(requests["total"])
Python SDK¶
Install and use the dedicated Webhook client:
pip install toolkitapi
from toolkitapi import Webhook
with Webhook(api_key="tk_...") as wh:
mock = wh.create_mock(status_code=202, body='{"ok": true}')
print(mock["mock"]["mock_id"])
See drilldowns for endpoint-specific request and response fields.
Tip
The catch and mock hit URLs are intentionally public endpoints. They do not require API keys, so avoid exposing them beyond your testing scope and rotate by deleting and recreating bins or mocks as needed.