diff --git a/apiclient/http.py b/apiclient/http.py
index ff61cb1..9fdd39c 100644
--- a/apiclient/http.py
+++ b/apiclient/http.py
@@ -379,6 +379,8 @@
         _, body = self.next_chunk(http)
       return body
     else:
+      if 'content-length' not in self.headers:
+        self.headers['content-length'] = str(self.body_size)
       resp, content = http.request(self.uri, self.method,
                                    body=self.body,
                                    headers=self.headers)
diff --git a/samples/gtaskqueue_sample/gtaskqueue/task_cmds.py b/samples/gtaskqueue_sample/gtaskqueue/task_cmds.py
index 5bbc2ad..d4d651a 100644
--- a/samples/gtaskqueue_sample/gtaskqueue/task_cmds.py
+++ b/samples/gtaskqueue_sample/gtaskqueue/task_cmds.py
@@ -86,8 +86,7 @@
         return task_api.lease(project=flag_values.project_name,
                               taskqueue=flag_values.taskqueue_name,
                               leaseSecs=flag_values.lease_secs,
-                              numTasks=flag_values.num_tasks,
-                              body={})
+                              numTasks=flag_values.num_tasks)
 
     def print_result(self, result):
         """Override to optionally strip the payload since it can be long."""
diff --git a/samples/gtaskqueue_sample/gtaskqueue/taskqueue_client.py b/samples/gtaskqueue_sample/gtaskqueue/taskqueue_client.py
index c39b0ce..1df012d 100644
--- a/samples/gtaskqueue_sample/gtaskqueue/taskqueue_client.py
+++ b/samples/gtaskqueue_sample/gtaskqueue/taskqueue_client.py
@@ -21,10 +21,10 @@
 import os
 import sys
 import urlparse
-from apiclient.anyjson import simplejson as json
 from apiclient.discovery import build
 from apiclient.errors import HttpError
 import httplib2
+from oauth2client.anyjson import simplejson as json
 from oauth2client.file import Storage
 from oauth2client.client import OAuth2WebServerFlow
 from oauth2client.tools import run
diff --git a/samples/gtaskqueue_sample/gtaskqueue/taskqueue_cmd_base.py b/samples/gtaskqueue_sample/gtaskqueue/taskqueue_cmd_base.py
index 6bba4e4..0400acd 100644
--- a/samples/gtaskqueue_sample/gtaskqueue/taskqueue_cmd_base.py
+++ b/samples/gtaskqueue_sample/gtaskqueue/taskqueue_cmd_base.py
@@ -27,8 +27,8 @@
 
 from apiclient.discovery import build
 from apiclient.errors import HttpError
-from apiclient.anyjson import simplejson as json
 import httplib2
+from oauth2client.anyjson import simplejson as json
 from oauth2client.file import Storage
 from oauth2client.client import OAuth2WebServerFlow
 from oauth2client.tools import run
