Catch Quick Start
Create a bucket, point a webhook provider at it, and replay captured events. Takes under five minutes.
Prerequisites
- Get an API key from solenoid.systems/pricing. Keys are prefixed with
sm_. - All endpoints require a Bearer token. See Authentication.
- Base URL:
https://api.solenoid.systems
Create a bucket
curl -X POST "https://api.solenoid.systems/v1/catch/buckets" \
-H "Authorization: Bearer sm_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"target_url": "https://your-app.com/webhooks", "provider": "stripe"}'
Returns a bucket in paused state with an ID like brave-elephant-42.
Configure your webhook source
Point your provider’s webhook URL to:
https://api.solenoid.systems/v1/catch/{bucket_id}
For Stripe: Dashboard > Developers > Webhooks > Add endpoint.
Add a signing secret (optional)
curl -X PATCH "https://api.solenoid.systems/v1/catch/buckets/brave-elephant-42" \
-H "Authorization: Bearer sm_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"signing_secret": "whsec_..."}'
Set bucket to live
New buckets start paused. Set to live to begin forwarding:
curl -X PATCH "https://api.solenoid.systems/v1/catch/buckets/brave-elephant-42" \
-H "Authorization: Bearer sm_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"state": "live"}'
List captured events
curl "https://api.solenoid.systems/v1/catch/brave-elephant-42/events" \
-H "Authorization: Bearer sm_your_api_key_here"
Replay an event
curl -X POST "https://api.solenoid.systems/v1/catch/brave-elephant-42/events/01HX1234567890ABCDEF/replay" \
-H "Authorization: Bearer sm_your_api_key_here"
Returns status: "replayed" with the target’s HTTP response code.
Next steps
- API Reference — Full endpoint documentation
- Pricing — Plans and limits