Catch Quick Start

Create a bucket, point a webhook provider at it, and replay captured events. Takes under five minutes.

Prerequisites

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