Device provisioning and management examples - uses Exosite's provision API
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

================================================================================ Provision API Usage Examples


These are examples of how to interact with Exosite's Provisioning API. The file "" shows a sequence for setting up, using, and then tearing down the provisioning interface for a given VENDOR.

The management APIs assume you have your own Portals Whitebox at a URL like -> e.g.

License is BSD, Copyright 2012, Exosite LLC (see LICENSE file)

Built/tested with Python 2.7

Quick Start
  • Install python

  • Register for API keys on the One Platform by signing up for an Exosite Portals whitebox at You will need the following keys and information:

    • VENDORNAME -> get this on the /admin/provision page of a Portals instance
    • VENDORTOKEN -> same place
    • CLONERID -> create a client (device) in the Portals instance somewhere and check the box "Use as Clone" (or use the JSON RPC API to set it up)
    • OWNERCIK -> the easiest thing here is to use a Portal CIK - get this from a Portal listed on your /account/portals page
  • After filling in the constants per above, run the script


  • Check the script output to get an understanding for how everything works.

More Information


  • The provisoining system is a powerful interface that allows a device OEM to deploy fleets of devices and for those devices to subsequently instantiate themselves with the Exosite system. When a device instantiates with its model's profile, you can have scripts automatically run to do things like provision on a cellular network, notify stakeholders of activity, begin a billing process, enable additional features, etc...