The ipp_quickbase_devkit is a Ruby client for database applications on www.quickbase.com and workplace.intuit.com. The Intuit Partner Platform (IPP) uses QuickBase applications on workplace.intuit.com.
A separate ipp_quickbase_devkit_jruby exists for JRuby that simplifies installation and setup.
You will need Ruby version 1.8.6 or higher to use the devkit, or JRuby 1.3.1 or higher.
To install the devkit for regular Ruby, enter:
gem install ipp_quickbase_devkit –source code.intuit.com/gems (Note: Location is TBD as of 8/15/09)¶ ↑
For JRuby, enter:
gem install ipp_quickbase_devkit_jruby –source code.intuit.com/gems (Note: Location is TBD as of 8/15/09)¶ ↑
To verify that the gem was installed, enter:
ruby -e “require ‘rubygems’ ; require ‘QuickBaseCommandLineClient’ ; QuickBase::CommandLineClient.new.run”¶ ↑
This will start a command-line interface to www.quickbase.com. If you have an account on www.quickbase.com, enter:
Otherwise, if you have an account on workplace.intuit.com, enter:
then enter:
To list the applications you can access, enter:
To quit the command-line client, enter:
The guts of the Ruby devkit is a wrapper for the QuickBase HTTP API, described here.
Each API call has a matching Ruby method in the wrapper, with parameters and return values that match the API. Class QuickBase::Client in the QuickBaseClient.rb file contains these API methods, and numerous additional methods aimed at reducing the effort needed to interact with QuickBase. QuickBase::Client holds on to the values returned from QuickBase in @member variables. Check out the (relatively new) QuickBase::Objects if you prefer working with classes that encapsulate the core entities in QuickBase.
By default, QuickBase::Client points at www.quickbase.com. Since the IPP is on workplace.intuit.com, there is a QuickBase::WorkPlaceClient in WorkPlaceClient.rb that points at workplace.intuit.com by default.
Reading the HTTP API and playing with the QuickBase::CommandLineClient is good way to get an idea of how the HTTP API works, and how the devkit builds on it.
The unit tests expect that ‘rubygems’ is required outside of the tests themselves. To ensure that the tests run, add the following to your .profile (or equivalent):
Then run
to execute the unit tests.
The examples/cookbookfiles folder contains about 100 example Ruby source files, with documentation in cookbook form (examples/cookbookfiles/QuickBaseAPICookbook.html). It is a local version of the QuickBase API CookBook, a public QuickBase application located here.
Apart from the RDoc documentation (which you are probably looking at), there is older documentation in the doc/QuickBaseClient.rb.htm file. This document was valid until July 2009, and reflects the last ‘pre-IPP’ version of the devkit, which is still available here.
The doc/quickbase_adapter.rb.htm file describes that Rails adapater for QuickBase, which comes with this devkit. A separate Ruby gem will be created for the adapter soon.
The ipp_quickbase_devkit started life in 2005 as a script to generate burndown charts in a Scrum application created in QuickBase. The application is available in the QuickBase Application Library and is also visible here.
From there it evolved into the ‘Ruby Wrapper for the QuickBase HTTP API’, and QuickBase users at numerous companies have found it useful.
In June 2009 it was well positioned to become a component of the Intuit Partner Platform, with some tidying up and improved documentation.
Copyright © 2009 Gareth Lewis and Intuit, Inc.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at www.opensource.org/licenses/eclipse-1.0.php