diff --git a/lib/rapi/client.py b/lib/rapi/client.py
index dc36bd0e807c83269c5ca94043eff168df893dc9..9ae294e550fa169bd5727d55c69dbf1ce04c8648 100644
--- a/lib/rapi/client.py
+++ b/lib/rapi/client.py
@@ -490,7 +490,7 @@ class GanetiRapiClient(object):
     if dry_run:
       query.append(("dry-run", 1))
 
-    self._SendRequest(HTTP_DELETE, "/2/tags", query)
+    return self._SendRequest(HTTP_DELETE, "/2/tags", query)
 
   def GetInstances(self, bulk=False):
     """Gets information about instances on the cluster.
@@ -512,7 +512,6 @@ class GanetiRapiClient(object):
     else:
       return [i["id"] for i in instances]
 
-
   def GetInstanceInfo(self, instance):
     """Gets information about an instance.
 
@@ -605,7 +604,8 @@ class GanetiRapiClient(object):
     if dry_run:
       query.append(("dry-run", 1))
 
-    self._SendRequest(HTTP_DELETE, "/2/instances/%s/tags" % instance, query)
+    return self._SendRequest(HTTP_DELETE, "/2/instances/%s/tags" % instance,
+                             query)
 
   def RebootInstance(self, instance, reboot_type=None, ignore_secondaries=None,
                      dry_run=False):
@@ -630,7 +630,8 @@ class GanetiRapiClient(object):
     if dry_run:
       query.append(("dry-run", 1))
 
-    self._SendRequest(HTTP_POST, "/2/instances/%s/reboot" % instance, query)
+    return self._SendRequest(HTTP_POST, "/2/instances/%s/reboot" % instance,
+                             query)
 
   def ShutdownInstance(self, instance, dry_run=False):
     """Shuts down an instance.
@@ -645,7 +646,8 @@ class GanetiRapiClient(object):
     if dry_run:
       query.append(("dry-run", 1))
 
-    self._SendRequest(HTTP_PUT, "/2/instances/%s/shutdown" % instance, query)
+    return self._SendRequest(HTTP_PUT, "/2/instances/%s/shutdown" % instance,
+                             query)
 
   def StartupInstance(self, instance, dry_run=False):
     """Starts up an instance.
@@ -660,7 +662,8 @@ class GanetiRapiClient(object):
     if dry_run:
       query.append(("dry-run", 1))
 
-    self._SendRequest(HTTP_PUT, "/2/instances/%s/startup" % instance, query)
+    return self._SendRequest(HTTP_PUT, "/2/instances/%s/startup" % instance,
+                             query)
 
   def ReinstallInstance(self, instance, os, no_startup=False):
     """Reinstalls an instance.
@@ -676,7 +679,8 @@ class GanetiRapiClient(object):
     query = [("os", os)]
     if no_startup:
       query.append(("nostartup", 1))
-    self._SendRequest(HTTP_POST, "/2/instances/%s/reinstall" % instance, query)
+    return self._SendRequest(HTTP_POST, "/2/instances/%s/reinstall" % instance,
+                             query)
 
   def ReplaceInstanceDisks(self, instance, disks, mode="replace_auto",
                            remote_node=None, iallocator="hail", dry_run=False):
@@ -758,7 +762,7 @@ class GanetiRapiClient(object):
     if dry_run:
       query.append(("dry-run", 1))
 
-    self._SendRequest(HTTP_DELETE, "/2/jobs/%d" % job_id, query)
+    return self._SendRequest(HTTP_DELETE, "/2/jobs/%d" % job_id, query)
 
   def GetNodes(self, bulk=False):
     """Gets all nodes in the cluster.
diff --git a/test/ganeti.rapi.client_unittest.py b/test/ganeti.rapi.client_unittest.py
index 546d1c453101941c072e24431e4ea5a249406674..4742c5eb647efba5aa8c3a5c31cab3c4bdf9d262 100755
--- a/test/ganeti.rapi.client_unittest.py
+++ b/test/ganeti.rapi.client_unittest.py
@@ -186,7 +186,9 @@ class GanetiRapiClientTests(unittest.TestCase):
     self.assertQuery("tag", ["awesome"])
 
   def testDeleteClusterTags(self):
-    self.client.DeleteClusterTags(["awesome"], dry_run=True)
+    self.rapi.AddResponse("5107")
+    self.assertEqual(5107, self.client.DeleteClusterTags(["awesome"],
+                                                         dry_run=True))
     self.assertHandler(rlib2.R_2_tags)
     self.assertDryRun()
     self.assertQuery("tag", ["awesome"])
@@ -237,15 +239,19 @@ class GanetiRapiClientTests(unittest.TestCase):
     self.assertQuery("tag", ["awesome"])
 
   def testDeleteInstanceTags(self):
-    self.client.DeleteInstanceTags("foo", ["awesome"], dry_run=True)
+    self.rapi.AddResponse("25826")
+    self.assertEqual(25826, self.client.DeleteInstanceTags("foo", ["awesome"],
+                                                           dry_run=True))
     self.assertHandler(rlib2.R_2_instances_name_tags)
     self.assertItems(["foo"])
     self.assertDryRun()
     self.assertQuery("tag", ["awesome"])
 
   def testRebootInstance(self):
-    self.client.RebootInstance("i-bar", reboot_type="hard",
-                               ignore_secondaries=True, dry_run=True)
+    self.rapi.AddResponse("6146")
+    job_id = self.client.RebootInstance("i-bar", reboot_type="hard",
+                                        ignore_secondaries=True, dry_run=True)
+    self.assertEqual(6146, job_id)
     self.assertHandler(rlib2.R_2_instances_name_reboot)
     self.assertItems(["i-bar"])
     self.assertDryRun()
@@ -253,19 +259,25 @@ class GanetiRapiClientTests(unittest.TestCase):
     self.assertQuery("ignore_secondaries", ["True"])
 
   def testShutdownInstance(self):
-    self.client.ShutdownInstance("foo-instance", dry_run=True)
+    self.rapi.AddResponse("1487")
+    self.assertEqual(1487, self.client.ShutdownInstance("foo-instance",
+                                                        dry_run=True))
     self.assertHandler(rlib2.R_2_instances_name_shutdown)
     self.assertItems(["foo-instance"])
     self.assertDryRun()
 
   def testStartupInstance(self):
-    self.client.StartupInstance("bar-instance", dry_run=True)
+    self.rapi.AddResponse("27149")
+    self.assertEqual(27149, self.client.StartupInstance("bar-instance",
+                                                        dry_run=True))
     self.assertHandler(rlib2.R_2_instances_name_startup)
     self.assertItems(["bar-instance"])
     self.assertDryRun()
 
   def testReinstallInstance(self):
-    self.client.ReinstallInstance("baz-instance", "DOS", no_startup=True)
+    self.rapi.AddResponse("19119")
+    self.assertEqual(19119, self.client.ReinstallInstance("baz-instance", "DOS",
+                                                          no_startup=True))
     self.assertHandler(rlib2.R_2_instances_name_reinstall)
     self.assertItems(["baz-instance"])
     self.assertQuery("os", ["DOS"])
@@ -313,7 +325,9 @@ class GanetiRapiClientTests(unittest.TestCase):
     self.assertItems(["1234"])
 
   def testDeleteJob(self):
-    self.client.DeleteJob(999, dry_run=True)
+    self.rapi.AddResponse("[true, \"Job 123 will be canceled\"]")
+    self.assertEqual([True, "Job 123 will be canceled"],
+                     self.client.DeleteJob(999, dry_run=True))
     self.assertHandler(rlib2.R_2_jobs_id)
     self.assertItems(["999"])
     self.assertDryRun()
@@ -425,7 +439,9 @@ class GanetiRapiClientTests(unittest.TestCase):
     self.assertQuery("tag", ["awesome"])
 
   def testDeleteNodeTags(self):
-    self.client.DeleteNodeTags("node-w", ["awesome"], dry_run=True)
+    self.rapi.AddResponse("16861")
+    self.assertEqual(16861, self.client.DeleteNodeTags("node-w", ["awesome"],
+                                                       dry_run=True))
     self.assertHandler(rlib2.R_2_nodes_name_tags)
     self.assertItems(["node-w"])
     self.assertDryRun()