Version 3 is not backward compatible with version 2.

The main changes are that it now supports multiple clients within the same process, direct support for Personal Access Tokens, and support for the Bulk API.

Multiple client support makes its possible to work with more than one Intercom App:

from intercom.client import Client
intercom_app_1 = Client("PAT_1")
intercom_app_2 = Client("PAT_2")

app_1_users = intercom_app_1.users.find()
app_2_users = intercom_app_2.users.find()

As can be seen in that code snippet, to create the client you use a PAT (Personal Access Token) which you can create via the App Settings in Intercom. Previously an app id and an app key were used, but Intercom is removing support for these in January 2017.

The following are the full list of changes in version 3 thus far:

  • 3.0b3
    • Added TokenUnauthorizedError. #134
    • Added UTC datetime everywhere. #130
    • Fixed connection error when paginating. #125
    • Added Personal Access Token support. #123
    • Fixed links to Intercom API documentation. #115
  • 3.0b2
    • Added support for Leads. #113
    • Added support for Bulk API. #112
  • 3.0b1
    • Moved to new client based approach. #108

See PyPi for the 3.0b3 release and Read the Docs for the latest documentation.