diff --git a/lib/structs/responses/crypto.cpp b/lib/structs/responses/crypto.cpp
index 9c14db0b00adcca69e8ea08c7c56a53ab4d9cea6..135854799ae7be970fce19928c7e2d6a39990487 100644
--- a/lib/structs/responses/crypto.cpp
+++ b/lib/structs/responses/crypto.cpp
@@ -43,8 +43,8 @@ to_json(nlohmann::json &obj, const QueryKeys &response)
 void
 from_json(const nlohmann::json &obj, KeySignaturesUpload &response)
 {
-    if (!obj.empty())
-        response.errors = obj.get<decltype(response.errors)>();
+    if (obj.contains("failures"))
+        response.errors = obj.at("failures").get<decltype(response.errors)>();
 }
 
 void