Understanding webhooks
To notify you of events, watchers use webhooks. Webhooks are automated requests so they are automatically sent out when their event is fired in the source system.
WEBHOOK VALIDATION
When setting up a webhook with Starton, your designated webhook server must be valid and responsive.
Starton not only tests webhooks when creating watchers but also upon resuming a paused watcher. During these tests, the following message will be sent to your server: "Starton webhook test for responding server." This signifies that Starton is validating that your server is up.
All payloads we send, including test messages, are signed. You can verify these signatures to ensure that the webhook calls are genuinely from Starton.
To understand how to authenticate and verify that the webhook calls are genuinely originating from Starton, please refer to our detailed guide: How to Ensure Notify's Webhooks are from Starton.
This callout provides a concise and direct explanation, ensuring that users are aware of the importance of webhook validity, testing, and payload verification.
Creating a webhook
You can create a URL to receive webhooks using several methods.
For example, you can use Zapier to create a webhook. See our use case tutorial, Track a wallet activity on a Googlesheets using Starton and Zapier.
Webhook.site provides you with addresses for testing and debbuging.
You can also use ngrok to test webhooks on localhost.
Managing webhooks
You can monitor and control the webhooks sent from your application. You can view the status of each webhook resend webhooks, and cancel pending webhooks.
Webhook logs help you understand the status of your attempt. Webhook attempts can have the following statuses:
- RUNNING_CALL: The webhook attempt is in progress.
- SUCCESSFUL_CALL: The webhook attempt was successful.
- FAILED_CALL: The webhook attempt failed.
Retrying a webhook
Webhooks can have the following statuses:
- SUCCESSFUL: The webhook was sent successfully.
- FAILED: The webhook failed to send.
- CANCELED: The webhook was canceled.
- RETRYING: The webhook is retrying.
Testing with webhooks
When testing your application, even if your webhook is responding successfully you can use the retry function to avoid having to create another webhook.
If your server does not respond with an HTTP code signifing the request has been successful, webhooks are sent again.
Attempt | Retry After |
---|---|
1st | 1 minute |
2nd | 5 minutes |
3rd | 15 minutes |
4th | 1 hour |
5th | 6 hours |
6th | 1 day |
After the last retry, one day after the first request that remains unanswered, the watcher is paused.