Skip to content
Ruby toolkit for working with the Okta API
Ruby Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin initial setup Feb 16, 2016
lib Address partial user update using POST not PUT Feb 4, 2019
spec
.gitignore Add Tests for All Classes Jul 14, 2016
.rspec initial setup Feb 16, 2016
.rubocop.yml API support for Users/Clear_user_sessions (#13) Dec 12, 2018
.travis.yml
Gemfile
LICENSE.txt Clean up client, clean up parameter ordering, add more docs Jul 14, 2016
README.md Merge pull request #8 from karmi/configure_api_endpoint Oct 5, 2017
Rakefile Fix styles in the repo Oct 5, 2017
dev.yml [bot] remove unused 'packages' dev.yml element [skip ci] Dec 4, 2017
oktakit.gemspec

README.md

oktakit

Ruby toolkit for the Okta API.

Build Status Gem Version

Installation

Add this line to your application's Gemfile:

gem 'oktakit'

And then execute:

$ bundle

Usage

Oktakit follows similar patterns as found in Octokit. So if you are familiar with Oktakit, then you should feel right at home.

client = Oktakit.new(token: 't0k3n', organization: 'my-great-org')
response, http_status = client.list_users

To work with the Okta sandbox (<organization>.oktapreview.com), set the api_endpoint:

client = Oktakit.new(token: 't0k3n', api_endpoint: 'https://my-great-org.oktapreview.com/api/v1')

Pagination

Pass the paginate flag as options for any get action for Oktakit to autopaginate the response for you.

client = Oktakit.new(token: 't0k3n', organization: 'my-great-org')
response, http_status = client.list_users(paginate: true)

Development

After checking out the repo, run bin/setup to install dependencies. Then, run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release to create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Testing

Testing is fairly straightforward, with the exception of the org URL. To anonymize the VCR data, first setup a real token and endpoint for Okta, such as myokta.okta.com

  • In spec_helper.rb, set the org to my-okta (or whatever your organization is).
  • Set the OKTA_TEST_TOKEN environment variable (this should be real). Don't worry, it is automatically removed.
  • Before committing, change my-okta to okta-test in spec_helper.rb and any VCR Cassettes.

The API Test Client provided by Okta is also really helpful.

Contributing

  1. Fork it ( https://github.com/shopify/oktakit/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request
You can’t perform that action at this time.