Skip to content

docs: feature-focused README + fix ListWebhookLogs filtering - #9

Merged
rusenask merged 1 commit into
masterfrom
docs/readme-features-and-logs-fix
Jul 3, 2026
Merged

docs: feature-focused README + fix ListWebhookLogs filtering#9
rusenask merged 1 commit into
masterfrom
docs/readme-features-and-logs-fix

Conversation

@rusenask

@rusenask rusenask commented Jul 3, 2026

Copy link
Copy Markdown
Member

Summary

Rewrites the README to demonstrate the main Webhook Relay features from Go, and fixes a real bug in ListWebhookLogs found while writing the polling example.

README

Feature-focused sections, each with a copy-pasteable snippet:

  • Internal webhooks — deliver behind a firewall via the relay agent (Output.Internal)
  • WebSocket streamingBucket.Stream + wss://…/v1/socket, responding via UpdateWebhookLog
  • PollingListWebhookLogs loop over a bucket
  • Durable deliveryOutput.Durability
  • ThrottlingOutput.Throttle (rate + concurrency)
  • Plus a quickstart, features overview (functions, crons, tunnels, service connections, email-to-webhook, integrations) and client options.

Every snippet was type-checked against the SDK before committing.

Bug fix — ListWebhookLogs

It built a query string via getQuery() but never attached it to the request, so:

  • the required bucket parameter was never sent → the call always failed with 400 "bucket ID is required";
  • Status/From/To/Limit/Offset filters were silently ignored.

Now it applies the query and validates BucketID. Covered by TestListWebhookLogsAppliesQuery / TestListWebhookLogsRequiresBucket and a live smoke check in the integration test.

Also

Updated the repo description and topics.

Verification

go build/go vet clean; full suite green (live tests skip without creds; run against the live API in CI).

🤖 Generated with Claude Code


Note

Medium Risk
The ListWebhookLogs fix changes runtime behavior (previously broken API calls; empty BucketID now fails client-side), which could break callers that omitted BucketID even though the API already required it.

Overview
README is expanded into a feature-oriented guide: quickstart, internal/relay forwarding, WebSocket streaming, polling via ListWebhookLogs, durable delivery, throttling, plus a broader API overview and client options (badges/links updated).

ListWebhookLogs now appends getQuery() to the GET path so bucket and filters (status, time range, limit/offset) reach the API, and returns a client error when BucketID is missing. Docs on the method match that contract.

Tests: httptest regression for query params and empty-bucket validation; integration lifecycle calls ListWebhookLogs on a fresh bucket.

Reviewed by Cursor Bugbot for commit fb802f5. Bugbot is set up for automated code reviews on this repo. Configure here.

Rewrite the README to demonstrate the main Webhook Relay capabilities from
Go: internal (behind-firewall) webhooks, WebSocket streaming, polling,
durable delivery and throttling, plus a features overview and client options.
Every snippet is type-checked against the SDK.

Also fix ListWebhookLogs, which built a query string but never attached it to
the request — so the required `bucket` parameter was never sent and the call
always failed with 400. It now applies the filter/pagination options and
validates that BucketID is set. Add unit tests and a live smoke check.
@rusenask
rusenask merged commit 831df60 into master Jul 3, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant