diff --git a/samples/calendar_api/README b/samples/calendar_api/README
new file mode 100644
index 0000000..9376b6b
--- /dev/null
+++ b/samples/calendar_api/README
@@ -0,0 +1,4 @@
+Loop over all a user's calendars, printing their titles.
+
+api: calendar
+keywords: cmdline pagination
diff --git a/samples/calendar_api/calendar_sample.py b/samples/calendar_api/calendar_sample.py
new file mode 100644
index 0000000..2b79143
--- /dev/null
+++ b/samples/calendar_api/calendar_sample.py
@@ -0,0 +1,47 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2014 Google Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""Simple command-line sample for the Calendar API.
+Command-line application that retrieves the list of the user's calendars."""
+
+import sys
+
+from oauth2client import client
+from googleapiclient import sample_tools
+
+def main(argv):
+  # Authenticate and construct service.
+  service, flags = sample_tools.init(
+      argv, 'calendar', 'v3', __doc__, __file__,
+      scope='https://www.googleapis.com/auth/calendar.readonly')
+
+  try:
+    page_token = None
+    while True:
+      calendar_list = service.calendarList().list(pageToken=page_token).execute()
+      for calendar_list_entry in calendar_list['items']:
+        print calendar_list_entry['summary']
+      page_token = calendar_list.get('nextPageToken')
+      if not page_token:
+        break
+
+  except client.AccessTokenRefreshError:
+    print ('The credentials have been revoked or expired, please re-run'
+      'the application to re-authorize.')
+
+if __name__ == '__main__':
+  main(sys.argv)
diff --git a/samples/calendar_api/client_secrets.json b/samples/calendar_api/client_secrets.json
new file mode 100644
index 0000000..da828e9
--- /dev/null
+++ b/samples/calendar_api/client_secrets.json
@@ -0,0 +1,15 @@
+{
+  "installed": {
+    "client_id": "[[INSERT CLIENT ID HERE]]",
+    "client_secret": "[[INSERT CLIENT SECRET HERE]]",
+    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
+    "token_uri": "https://accounts.google.com/o/oauth2/token",
+    "client_email": "",
+    "redirect_uris": [
+      "urn:ietf:wg:oauth:2.0:oob",
+      "oob"
+    ],
+    "client_x509_cert_url": "",
+    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs"
+  }
+}
