From afb2616aeebb9fef2d395d48f884488d348e3444 Mon Sep 17 00:00:00 2001 From: Mihir Kandoi Date: Wed, 24 Jun 2026 20:37:32 +0530 Subject: [PATCH] refactor: parse native JSON request args in edi/doctype/code_list/code_list_import.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/edi/doctype/code_list/code_list_import.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/erpnext/edi/doctype/code_list/code_list_import.py b/erpnext/edi/doctype/code_list/code_list_import.py index 0f6a51fc993..beffaff190b 100644 --- a/erpnext/edi/doctype/code_list/code_list_import.py +++ b/erpnext/edi/doctype/code_list/code_list_import.py @@ -156,13 +156,15 @@ def process_genericode_import( code_column: str, title_column: str | None = None, description_column: str | None = None, - filters: str | None = None, + filters: str | list | dict | None = None, ): from erpnext.edi.doctype.common_code.common_code import import_genericode column_map = {"code": code_column, "title": title_column, "description": description_column} - return import_genericode(code_list_name, file_name, column_map, json.loads(filters) if filters else None) + return import_genericode( + code_list_name, file_name, column_map, frappe.parse_json(filters) if filters else None + ) def get_genericode_columns_and_examples(root):