diff --git a/lib/passwordstate/client.rb b/lib/passwordstate/client.rb
index c95f665dbd76edb571373fe540fc9a4d0da8f55f..034044e391ce32127ad664c8bef90919e8e65bce 100644
--- a/lib/passwordstate/client.rb
+++ b/lib/passwordstate/client.rb
@@ -108,7 +108,7 @@ module Passwordstate
       if data
         return data if res_obj.is_a? Net::HTTPSuccess
 
-        parsed = data&.first
+        data = data.first if data.is_a? Array
         parsed = data.fetch('errors', []) if data.is_a?(Hash) && data.key?('errors')
         parsed = [data]