An Okta command line interface for scripting and quickly performing routine tasks

pip install okta-cli==15.0.0



This is a python-based CLI tool for Okta. It is not made or maintained by or in any way affiliated with anyone working at Okta.

The feature set is quite complete, but based on the author's needs, which currently are:

  • user functions
    • list users (using API search= and query= functionality, and local filtering)
    • update users
    • bulk-update users, with parallel threads (hundreds of updates in seconds)
  • group functions (add users, remove users, list groups, list members)
  • handling of multiple Okta instances (e.g. a test cell, a production cell, a personal cell, ...)
  • updates and (now really fast) bulk-updates of user profiles (using CSV or Excel files)
  • export of profile data (into CSV or JSON)


REQUIRES Python 3.6+


$ pip install okta-cli
$ okta-cli config new -n my-profile -u https://my.okta.url -t API_TOKEN
$ okta-cli users list -f ' eq ""'
$ okta-cli users update id012345678 --set --set phone=01234/5678
$ okta-cli users bulk-update update-list.xlsx        # CSV is okay as well :)
$ okta-cli groups adduser -g 01231324 -u 0129353892
$ okta-cli groups removeuser -g ... -u ...


Running config new (see above) will store a JSON configuration file in the directory determined by the appdirs module.


This project uses a few nice other projects: