This repository has been archived on 2026-05-28. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
odoo-addons/addons/cetmix_tower_webhook/readme/CONFIGURE.md

59 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Configure an Authenticator
**⚠️ WARNING: You must be a member of the "Cetmix Tower/Root" group to configure authenticators.**
- Go to "Cetmix Tower > Settings > Automation > Webhook Authenticators" and click "New".
**Complete the following fields:**
- Name. Authenticator name
- Reference. Unique reference. Leave this field blank to auto generate it
- Code. Code that is used to authenticate the request. You can use all Cetmix Tower - Python command variables except for the server plus the following webhook specific ones:
- headers: dictionary that contains the request headers
- raw_data: string with the raw HTTP request body
- payload: dictionary that contains the JSON payload or the GET parameters of the request
**The code returns the result variable in the following format:**
```python
result = {"allowed": <bool, mandatory, default=False>, "http_code": <int, optional>, "message": <str, optional>}
```
eg:
```python
result = {"allowed": True}
result = {"allowed": False, "http_code": 403, "message": "Sorry..."}
```
## Configure a Webhook
**⚠️ WARNING: You must be a member of the "Cetmix Tower/Root" group to configure webhooks.**
- Go to "Cetmix Tower > Settings > Automation > Webhooks" and click "New".
**Complete the following fields:**
- Enabled. Uncheck this field to disable the webhook without deleting it
- Name. Authenticator name
- Reference. Unique reference. Leave this field blank to auto generate it
- Authenticator. Select an Authenticator used for this webhook
- Endpoint. Webhook endpoint. The complete webhook URL will be <your_tower_url>/cetmix_tower_webhooks/<endpoint>
- Run as User. Select a user to run the webhook on behalf of. CAREFUL! You must realize and understand what you are doing, including all the possible consequences when selecting a specific user.
- Code. Code that processes the request. You can use all Cetmix Tower Python command variables (except for the server) plus the following webhook-specific one:
- headers: dictionary that contains the request headers
- payload: dictionary that contains the JSON payload or the GET parameters of the request
Webhook code returns a result using the Cetmix Tower Python command pattern:
```python
result = {"exit_code": <int, default=0>, "message": <string, default=None>}
```
**To configure the time for which the webhook call logs are stored:**
- Go to "Cetmix Tower > Settings > General Settings"
- Put a number of days into the "Keep Webhook Logs for (days)" field. Default value is 30.
Please refer to the [official documentation](https://tower.cetmix.com) for detailed configuration instructions.