Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Smartsheet Python SDK Build Status Coverage Status PyPI version

This library is intended to simplify connecting to the Smartsheet API from Python applications.

System Requirements

The SDK currently supports Python 3.6, 3.7, 3.8, 3.9, pypy, and pypy3. Integrations built on previous versions may still function, but Smartsheet recommends staying current with the Python end-of-life guidelines. Note: Python version 3.6 or higher is required for Unicode support, for example, if your Smartsheet data includes non-ASCII characters.

The following packages are required.

Smartsheet Will Require TLS 1.1 or Higher Post 5/22/2018

There are many security vulnerabilities in SSL and early TLS versions. To remain compliant with PCI standards, most companies are now removing support for TLS 1.0.

Smartsheet Python SDK versions earlier than 1.3.0 do not support TLS 1.1. Once Smartsheet disables support for TLS 1.0 on 5/22/2018, any user who is still using an earlier version of the Python SDK will receive a SSL handshake error. Please upgrade your Smartsheet Python SDK, preferably to 1.3.2 by 5/22/2018 to avoid any impact.

To upgrade a current installation using pip:

$ pip install smartsheet-python-sdk --upgrade

If this is your first time installing the Python SDK, follow the installation steps in the following section.


The SDK can be installed by using a package manager (pip) or manually by downloading the SDK directly from Git. These two steps are outlined below.

Install with pip

If unfamiliar with pip, please review the pip documentation.

This SDK's Python package is called smartsheet-python-sdk. To install using pip:

$ pip install smartsheet-python-sdk

Install manually

To install this SDK manually, download the source code from GitHub and then run:

$ python install

Getting Started

Getting started with the Python SDK is easy:

  1. Set SMARTSHEET_ACCESS_TOKEN in your environment. Find out more about Authentication and Access Tokens in the Smartsheet API Documentation.

  2. Install the Smartsheet Python SDK from the Python Package Index, or by using "pip install smartsheet-python-sdk".

  3. Import the smartsheet module: import smartsheet

  4. Refer to the Smartsheet API Documentation for Python SDK usage examples.

See a sample application here:

Advanced Topics

For details about logging, testing, how to use a passthrough option, and how to override HTTP client behavior, see Advanced Topics.


The Smartsheet API is documented here:

The Python SDK documentation can be viewed here:


If you would like to contribute a change to the SDK, please fork a branch and then submit a pull request.

Version Numbers

Starting from the v2.68.0 release, Smartsheet SDKs will use a new versioning strategy. Since all users are on the Smartsheet API 2.0, the SDK version numbers will start with 2. The 2nd number will be an internal reference number. The 3rd number is for incremental changes.

For example, v2.68.0 means that you are using our 2.0 version of the API, the API is synced internally to a tag of 68, and then if there are numbers after the last decimal, that will indicate a minor change.


If you have any questions or issues with this SDK please post on StackOverflow using the tag "smartsheet-api" or contact us directly at

Release Notes

Each release with notes is available for download on the Github Releases page.