Deltatech Cron Monitor Webhook
by Terrabit https://www.terrabit.ro , Dorin Hongu https://www.terrabit.ro| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 203 |
| Technical Name |
deltatech_cron_monitor_webhook |
| License | LGPL-3 |
| Website | https://www.terrabit.ro |
Deltatech Cron Monitor Webhook

This module provides a simple and secure solution to trigger Odoo cron jobs via webhooks using a global access token.
Key Features:
- Webhook Activation per Cron: Each scheduled action can be configured to allow external triggering.
- Unique Webhook Code: Define a unique code for each cron to build a dedicated endpoint URL.
- Global Token Security: Protection via a global access token (Bearer or Parameter) instead of complex HMAC signatures.
- Dedicated Endpoints:
- Trigger: /cron/webhook/<webhook_code> (POST/GET)
- Status: /cron/webhook/<webhook_code>/status (GET)
- Easy Configuration: A single global token manages access for all enabled webhooks, simplifying integration with external services.
Integration:
It is ideal for integration with external monitoring and scheduling platforms such as cron-job.org, healthchecks.io, or EasyCron, allowing better control over when jobs run, independent of the internal Odoo scheduler.
Table of contents
Usage
To use this module with an external service like cron-job.org, follow these steps:
1. Global Configuration
- Go to Settings > General Settings and search for Cron Monitor.
- Generate or set a Global Webhook Token. You can use the Generate Token button to create a secure UUID.
- Save the settings.
2. Configure the Cron Job
- Go to Settings > Technical > Automation > Scheduled Actions.
- Open the cron job you want to trigger externally.
- In the Webhook Configuration tab:
- Check Enable Webhook.
- Provide a unique Webhook Code (e.g., sync_partners).
- Copy the generated Webhook URL (it already contains the global token for convenience).
3. Setup on cron-job.org
- Log in to your cron-job.org account.
- Click Create cronjob.
- URL: Paste the Webhook URL from Odoo.
- Request Method: Select GET or POST.
- Schedule: Set your desired interval.
4. Authentication Options (choose ONE)
You can authenticate using the global token in three ways:
- URL Parameter (Recommended): Append ?token=YOUR_TOKEN to the URL.
- HTTP Header: Add X-Access-Token: YOUR_TOKEN.
- JSON Body (POST only): Send a JSON with a token key (requires Content-Type: application/json).
Example of JSON Body:
{ "token": "YOUR_GLOBAL_TOKEN_HERE" }
5. Verification
You can test the integration by clicking Run now on cron-job.org or by visiting the Webhook URL in your browser. If successful, Odoo will return a 200 OK response with:
- job_name: The name of the cron job.
- execution_time: How long it took to run.
- timestamp: The time of execution.
If it fails, check the Odoo logs or the response message (e.g., Invalid token, Invalid webhook code).
Bug Tracker
Bugs are tracked on Terrabit Issues. In case of trouble, please check there if your issue has already been reported.
Do not contact contributors directly about support or help with technical issues.
Credits
Authors
- Terrabit
- Dorin Hongu
Maintainers
This module is part of the dhongu/deltatech project on GitHub.
You are welcome to contribute.
Please log in to comment on this module