The ruby-jss project provides the JSS module, a Ruby framework for interacting with the REST API of the JAMF Software Server (JSS), the core of Jamf Pro, from JAMF Software, LLC. The module abstracts API objects as Ruby classes, which interact to allow simpler automation of Jamf Pro-related tasks.

(NOTE: If the page via the Documentation link above is broken, a local copy is available here. The local docs may not be for the current version, so beware)


ruby-jss is a github project and Ruby gem which provide the JSS Ruby module. The module simplifies access to the REST API of the JAMF Software Server (JSS), the core of Jamf Pro from JAMF Software, LLC, an enterprise-level management tool for Apple devices

The module abstracts API resources such as computers, packages, mobile devices, policies, and distribution points as Ruby objects. It provides methods for creating, manipulating, and interacting with those resources and making them interact with each other. It also provides some features that aren't a part of the API itself, but come with other Jamf-related tools, such as uploading .pkg and .dmg JSS::Package data to the master distribution point, and the installation of Package objects on client machines.

The module is not a complete implementation of the Jamf Pro API. Only some API objects are modeled, some only minimally. Of those, some are read-only, some partially writable, some fully read-write (all implemented objects can be deleted). See the README or the front page of the Documentation for a list.

The ruby-jss project is the first part, indeed the foundation of, [d3](, a package/patch deployemnt and management tool based on Jamf Pro's package handling backend. Ruby-jss grew out of d3, and while it provides API access beyond just packages, that was it's initial purpose.

We've implemented the things we need in our environment, and as our needs grow, we'll add more. Hopefully others will find it useful, and add more to it as well.

ruby-jss is released under a modified Apache License v2.0. Please see the LICENSE.txt file for details.