wp-content/plugins/cordage/cordage.php
Cordage
Outbound webhooks with retries, signatures, and a delivery log you can read.
== Description ==
A webhook that fires once and forgets is a webhook you find out about when the other system is a day behind. Cordage retries with exponential backoff, stops after a limit you set, and records the request and response body for every attempt.
Payloads are signed with an HMAC over the body and a timestamp, so the receiver can verify origin and reject replays. The readme includes verification code for three languages, because “sign it” is useless advice without the other half.
Endpoints can subscribe to specific events with a filter — only posts in a category, only orders over a threshold — evaluated before the request is queued rather than by the receiver afterwards.
== Screenshots ==
Numbered the way they ship in /assets/. Click any one to see it full width.
== Installation ==
- Install and activate the plugin.
- Add an endpoint under Tools → Webhooks and choose its events.
- Send a test delivery and check the log.
Deliveries run on cron. On a low-traffic site, install a real system cron or they will be late.
== Frequently asked questions ==
What is retried?
Anything that is not a 2xx, up to five attempts over about an hour. 4xx responses stop immediately, because a receiver rejecting your payload will reject it again.
Can I replay a delivery?
Any logged delivery can be replayed from the log with one click.
== Changelog ==
= 2.4.1 =
- Fixed: the signature covered the payload but not the timestamp, so an intercepted request could be replayed indefinitely.
= 2.4.0 =
- Per-endpoint event filters, evaluated before queueing.
= 2.0.0 =
- Delivery log with request and response bodies. Retention is capped and configurable.