From 97f128791c78686ce2237dbd93fb7faf0c56c703 Mon Sep 17 00:00:00 2001 From: Mihir Kandoi Date: Wed, 24 Jun 2026 20:37:31 +0530 Subject: [PATCH] refactor: parse native JSON request args in assets/doctype/asset/asset.py Use frappe.parse_json instead of json.loads so the whitelisted endpoints accept native JSON types (list/dict/bool) in addition to JSON strings. --- erpnext/assets/doctype/asset/asset.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/erpnext/assets/doctype/asset/asset.py b/erpnext/assets/doctype/asset/asset.py index 1f0bee0f021..f2a71bb5f64 100644 --- a/erpnext/assets/doctype/asset/asset.py +++ b/erpnext/assets/doctype/asset/asset.py @@ -995,8 +995,7 @@ class Asset(AccountsController): @frappe.whitelist() def get_depreciation_rate(self, args: str | dict | Document, on_validate: bool = False): - if isinstance(args, str): - args = json.loads(args) + args = frappe.parse_json(args) rate_field_precision = frappe.get_single_value("System Settings", "float_precision") or 2