access_webhook — Access rule grants write/create/unlink on '?' to EVERY user (portal/public included): no group is set acl-global-writeaccess_webhook_address — Access rule grants write/create/unlink on '?' to EVERY user (portal/public included): no group is set acl-global-writeFound by automated static analysis: these patterns are usually risky, but only a manual review of the module can confirm a real issue.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/server-tools |
| GIT | |
| GIT | https://github.com/OCA/server-tools.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/server-tools/tree/10.0/webhook |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Server Tools |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Vauxoo |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Vauxoo |
| COMMITTERS | |
| COMMITTERS | Jairo Llopis, Stéphane Bidoul (ACSONE), OCA Transbot, oca-travis, Weblate, OCA-git-bot |
| WEBSITE | |
| WEBSITE | https://www.vauxoo.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:20:00 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - web - base |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
ipaddress requests |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_webhook_form |
view.webhook.form | webhook | form | New |
view_webhook_tree |
view.webhook.tree | webhook | tree | New |
| Route(s) | Handler | Auth | Type | Methods | Flags |
|---|---|---|---|---|---|
/webhook/<webhook_name> |
WebhookController.webhook |
none | json | ALL | sudo |
active
Boolean
default=True
address_ids
One2many → webhook.address
help='This address will be filter to know who is consumer webhook'
required=True
args: 'webhook.address', 'webhook_id', 'IP or Network Address'
name
Char
help='Name of your consumer webhook. This name will be used in named of event methods'
required=True
args: 'Consumer name'
python_code_get_event
Text
default='# You can use object.env.request variable to get full data of webhook request.\n# Example:\n#request.httprequest.headers.get("X-Github-Event")'
help='Python code to get event from request data.\nYou have object.env.request variable with full webhook request.'
required=True
args: 'Get event'
python_code_get_ip
Text
default='# You can use object.env.request variable to get full data of webhook request.\n# Example:\n#object.env.request.httprequest.remote_addr\nrequest.httprequest.remote_addr'
help='Python code to get remote IP address from request data.\nYou have object.env.request variable with full webhook request.'
required=True
args: 'Get IP'
get_event_methods(self, event_method_base)
get_ping_events(self)
is_address_range(self, remote_address)
process_python_code(self, python_code, request=None)
run_webhook(self, request)
search_with_request(self, request)
name
Char
help='IP or network address of your consumer webhook:\nip address e.g.: 10.10.0.8\nnetwork address e.g. of: 10.10.0.8/24'
required=True
args: 'IP or Network Address'
webhook_id
Many2one → webhook
ondelete='cascade'
required=True
args: 'webhook', 'Webhook'
No public methods.