🤯 ну, тогда самое простое - проверить, что из себя представляют словари data и {'cat': cat} перед передачей в JsonRequest, если тут все ок, то смотреть, что вообще приходит внутрь kwargs (его структуру) parse(). Если и тут все ок, то тогда ковырять все эти 100500 мидлварей... Ну или самый сложный и нелюбимый всеми путь - сделать тесты и насиловать уже их. Наверное, как-то так