Language Bindings

Our RESTful interface requires very little in the way of application bindings. The HTTP response codes from the requests are meant to be interpreted by your application for semantic meaning. BambooHR has created a handful of small wrappers that demonstrate how to make the HTTPS requests to our API. They include the code for doing HTTPS basic auth by specifying your secret key.

All BambooHR wrappers on this page are open sourced under a liberal license that should make it possible to use them in nearly all situations. Refer to the comment at the top of the source code for details. If you make changes that you think would be useful to somebody else, then please submit them to us for possible inclusion into our official bindings.

All of the wrappers are designed for a lowest common denominator that minimizes third party requirements. Your platform may have more specialized tools that would work equally well for making RESTful requests.

The BambooHR wrappers are built to support pluggable HTTPS classes. This is useful, for example, if you are using PHP but don't have access to cURL. In such a case, you could build your own compatible HTTPS class that uses command line tools and the higher level of the binding would be able to communicate through your new plugin. You are welcome to create your own HTTPS class and use it with these wrappers. A default HTTPS plugin is provided with each wrapper.

Beta versions

The following BambooHR API wrappers are of beta release quality. We are making these wrappers available to our customers and partners to begin building and provide feedback. Every attempt will be made to keep future versions source-compatible.

  • PHP (version 1.0), view on GitHub
    Requires cURL support in PHP and PHP >= 5.3.0. If 5.3 is unavailable, it can quickly be modified to work on 5.2.
Alpha quality

The following BambooHR API wrappers are all of alpha release quality. We are making these wrappers available to our customers and partners to preview the API and wrappers. The structures and methods used in these wrappers are subject to change at any time before the 1.0 release.

The following sample wrappers are available (click to download):

  • .NET (version 0.9.1), view on GitHub
  • Java (version 0.9), view on GitHub
    Requires sun.misc.BASE64Encoder
Unofficial wrappers

These wrappers are user-created, and are unsupported by BambooHR.

  • Python
    Requires requests library. Special thanks to Scott Blevins for creating this one.
  • Ruby
    Special thanks to Mark Rickert
  • Perl
    Special thanks to Neil Bowers

Have more questions? We're here to help, so please contact us.