Hi folks!
I’m trying to help some folks debug a webhook on their account. They’re using a webhook to forward things to Thingsboard Cloud.
I set up a new webhook, nothing fancy, to a particular domain. I used the particle cli to subscribe to hook-sent, hook-response, hook-error for my devices, and to all the events for my devices. I published a single event from my device, and got
{"data":"Sleeping, too many errors, please wait and try again","ttl":60,"published_at":"2025-11-09T18:10:17.321Z","coreid":"particle-internal","name":"hook-error/HubData/0"}
Huh. I tried again a bit later, and now, looking at the integration in the dashboard, I see 1 success today, 0 errors, and 4 sleeps.
![]()
What’s going on here?
I read through the Webhook reference and the tutorial and the troubleshooting guide, and my best guess is this, from Limits:
When a server receiving webhook requests fails many times in rapid successions, the Particle Device Cloud will start to skip sending some events to lighten the load on the receiving server. Specifically, Particle uses an adaptive algorithm to skip webhook attempts when more 4xx or 5xx HTTP status codes than 2xx HTTP status codes are returned by the receiving server.
The server rating algorithm is per server hostname, and does not depend on the webhook that generated it, the account, or the port number being requested.
After a cooldown period of a few seconds without errors, requests will be allowed to be made once again. Events that were skipped will retried after 30 seconds and 1 minute before being dropped.
Is there someone else using the Cloud API who has an error-ridden integration to the same hostname that I’m trying to use? The times I see success are when it’s timed magically right to hit a gap when no one else has errors?
Are there options here? Can support check our webhook and isolate ours from other folks using the same domain? Are there details on exactly what goes into this key? Is it the full hostname, or just the base domain?
Outside of support, the first thing I can think of is to get a unique domain, keep it a secret, and use it to proxy to and from Thingsboard Cloud.