You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 25, 2026. It is now read-only.
We are running a Chainhook V2 hosted webhook (registered via https://api.hiro.so/chainhooks/v1/me) to monitor print_event emissions from a Stacks smart contract. We have observed that some events are silently dropped — the webhook is never called for certain on-chain transactions, with no error or retry visible on our end.
All print_event emissions matching the predicate should be delivered to the webhook URL. If delivery fails, retries should be attempted and ideally there should be a way to see delivery failures via the API.
Impact
Missed events leave our application in an inconsistent state (listings stuck as "purchase pending" indefinitely). There is currently no way for consumers to:
Know that an event was missed
Query for failed/pending deliveries
Request redelivery of missed events
Questions
Are there known conditions under which hosted chainhook v2 webhooks can silently drop events?
Is there a delivery guarantee (at-least-once) or is it best-effort?
Is there a way to view delivery logs or failed attempts for a registered hook?
Would it be possible to add a replay/redelivery API for missed events?
Summary
We are running a Chainhook V2 hosted webhook (registered via
https://api.hiro.so/chainhooks/v1/me) to monitorprint_eventemissions from a Stacks smart contract. We have observed that some events are silently dropped — the webhook is never called for certain on-chain transactions, with no error or retry visible on our end.Details
Contract:
SPV9K21TBFAK4KNRJXF5DFP8N7W46G4V9RCJDC22.pepe-nft-marketplaceChainhook predicate:
{ "version": "1", "name": "pepe-nft-marketplace-v2", "chain": "stacks", "network": "mainnet", "filters": { "events": [ { "type": "print_event", "contract_identifier": "SPV9K21TBFAK4KNRJXF5DFP8N7W46G4V9RCJDC22.pepe-nft-marketplace", "contains": "event" } ] }, "action": { "type": "http_post", "url": "https://styxbtc.com/api/chainhook/pepe-marketplace" }, "options": { "decode_clarity_values": true, "enable_on_registration": true } }Observed Behavior
nft-soldevent for token #896 was emitted on-chain and confirmed in a successful transaction.nft-soldfor token chore: use stacks-codec #542,nft-unlistedfor tokens #911 and chore: upgrade to build with rust 1.80 #631) were delivered successfully around the same time period (Jan 27, 2026).Expected Behavior
All
print_eventemissions matching the predicate should be delivered to the webhook URL. If delivery fails, retries should be attempted and ideally there should be a way to see delivery failures via the API.Impact
Missed events leave our application in an inconsistent state (listings stuck as "purchase pending" indefinitely). There is currently no way for consumers to:
Questions
Environment
api.hiro.so)