Fix: OPNsense rest_commands use JSON payload (alias_util API requires JSON not form-encoded)

This commit is contained in:
2026-05-17 00:23:45 +10:00
parent a566400746
commit 77d9e9c523
+7 -26
View File
@@ -3,7 +3,6 @@
# =============================================================
# Config stored across 12 chunks (12 × 255 = 3060 chars max)
# Enough for 5 users with several devices each
input_text:
parental_config_0: {name: "Parental Config 0", max: 255, icon: mdi:shield-account}
parental_config_1: {name: "Parental Config 1", max: 255, icon: mdi:shield-account}
@@ -19,25 +18,7 @@ input_text:
parental_config_11: {name: "Parental Config 11", max: 255, icon: mdi:shield-account}
# ------------------------------------------------------------------
# OPNsense DHCP lease sensor — device discovery + MAC→IP
# Requires opnsense_leases_url and opnsense_basic_auth in secrets.yaml
# ------------------------------------------------------------------
rest:
- resource: !secret opnsense_leases_url
scan_interval: 60
headers:
Authorization: !secret opnsense_basic_auth
verify_ssl: false
sensor:
- name: "OPNsense DHCP Leases"
unique_id: parental_controls_dhcp_leases
value_template: "{{ value_json.total | default(value_json.rowCount) | default(0) }}"
icon: mdi:lan
json_attributes:
- rows
# ------------------------------------------------------------------
# OPNsense firewall API calls
# OPNsense firewall API — JSON payload required by alias_util API
# ------------------------------------------------------------------
rest_command:
@@ -46,8 +27,8 @@ rest_command:
method: post
headers:
Authorization: !secret opnsense_basic_auth
payload: "address={{ address }}"
content_type: "application/x-www-form-urlencoded"
Content-Type: application/json
payload: '{"address": "{{ address }}"}'
verify_ssl: false
parental_unblock_ip:
@@ -55,8 +36,8 @@ rest_command:
method: post
headers:
Authorization: !secret opnsense_basic_auth
payload: "address={{ address }}"
content_type: "application/x-www-form-urlencoded"
Content-Type: application/json
payload: '{"address": "{{ address }}"}'
verify_ssl: false
parental_apply_firewall:
@@ -64,8 +45,8 @@ rest_command:
method: post
headers:
Authorization: !secret opnsense_basic_auth
payload: "{}"
content_type: "application/json"
Content-Type: application/json
payload: '{}'
verify_ssl: false
# ------------------------------------------------------------------