Forum Discussion

BrianCafferelli's avatar
BrianCafferelli
Qrew Captain
7 years ago

Where can I find the Quickbase SDKs?

Where can I find the Quickbase SDKs?


You may already be aware that Quickbase offers an API, but what if you'd like to use a PHP or JS script to communicate with Quickbase? We've got you covered there too. We have SDKs for several programming languages that you can use to manipulate your Quickbase app externally. Please note that these are offered as-is, as open-source libraries.

NOTE: The SDKs below are all designed to work with the Quickbase XML API. Professional developers today should consider using our newer, JSON-based, RESTful API instead. We offer an OpenAPI spec you can download to use your favorite programming language with the RESTful API. Visit our developer portal for more information.

Quickbase C# SDK
This is a C# wrapper written to simplify interaction with the Quickbase XML API.

Details are at https://github.com/QuickbaseAdmirer/QuickBase-C-Sharp-SDK


Quickbase Javascript SDK
This is a JavaScript wrapper written to simplify interaction with the Quickbase XML API.
HTML pages using QuickBaseClient.js must be hosted within Quick Base applications as file attachments or as code pages because web browsers only allow JavaScript code to access the web site the JavaScript originated from.

Details are at https://github.com/QuickbaseAdmirer/Quickbase-JavaScript-SDK

 
Quickbase Perl SDK
This is a Perl wrapper written to simplify interaction with the Quickbase XML API.
The HTTP::QuickBase module allows you to manipulate Quickbase databases. Methods are provided for cloning databases, adding records, editing records, deleting records and retrieving records. All you need is a valid Quickbase account, although with anonymous access you can read from publicly accessible Quickbase apps.

NOTE: We recommend that you use application tokens when working with the Perl SDK. Read about application tokens.

Alternatively, you can leave tokens disabled for the application your scripts are calling.

This module supports a single object that retains login state. You call the authenticate method only once.

Details are at https://github.com/QuickbaseAdmirer/QuickBase-Perl-SDK

Quickbase PHP SDK
This is a PHP wrapper written to simplify interaction with the Quickbase XML API. The Quickbase PHP SDK is a simple class for interaction with the Quickbase XML API. It's implemented with XML (a la SimpleXML) and requests are made over HTTP with cURL.

Details are at https://github.com/QuickbaseAdmirer/QuickBase-PHP-SDK

Quickbase Ruby SDK
This is a Ruby wrapper written to simplify interaction with the QuickBase XML API.

Details are at https://github.com/woodhull/ipp_quickbase_devkit


Quickbase Visual Basic SDK
This is a Visual Basic wrapper written to simplify interaction with the Quickbase XML API.
The Visual Basic project group contained in the zip file has a TestHarness application that exercises the most popular methods of the Quick BaseClient class module also contained in the project group.

NOTE: The VB SDK does not support application tokens. You must leave application tokens disabled for the application your scripts are calling. If tokens are required, disable them manually.
- read about tokens: https://help.quickbase.com/user-assistance/app_tokens.html
- read how to disable tokens: https://help.quickbase.com/user-assistance/app_tokens_disable.html

Note that you can include the functionality of Quick BaseClient directly into your VB or VBA project by importing two files:

QuickBaseClient.cls
WINAPIDeclares.bas

Then you'll need to do two more things:

Set the conditional compilation argument. From the VBA window choose the Tools menu and select Properties and then on the General tab fill the Conditional Compilation Arguments text box with:

WININET = 1

Include a reference to "Microsoft XML, version 2.0". In the VBA window select the Tools menu and choose References. Then check the check box next to "Microsoft XML, version 2.0".

The above is the equivalent of selecting a reference to "QuickBase HTTP API Wrapper" (which refers to QuickBase.dll). So you'll want to make sure you do not have the checkbox next to "QuickBase HTTP API Wrapper" checked in the Tools->References menu if you include QuickBaseClient.cls in your project.

Installation Notes

The Visual Basic project group contained in the zip archive 'qdbvbsdk.zip' has two projects.
1. A class module which compiles to a dll:

quickbase.dll

This dll contains QuickBase.QuickBaseClient. The project description for this class module is:

QuickBase HTTP API Wrapper

This class requires MSXML2.0 which comes with IE5 or greater. It uses the WinINET API so no URL control is required.

2. A small GUI project that exercises many of the public methods of QuickBase.QuickBaseClient.

Details are at https://github.com/QuickbaseAdmirer/QuickBase---Visual-Basic-SDK

6 Replies

  • Hi Eric,

    Is there a specific component of the SDK that you are worried about in regards to TLS 1.2 support?
  • The version of TLS used is negotiated between QuickBase's servers and your browser or user agent and has little to do with the API itself. QuickBase currently supports TLS 1.0, 1.1 and 1.2 and has recently announced dropping support for 1.0 and 1.1

    https://community.quickbase.com/quickbase/topics/quick-base-disabling-tls-1-0-and-1-1

    This is a proactive and positive step as the older versions of TLS can have security issues under certain circumstances (an extremely rare occurrence). QuickBase's security is top notch and has always been so. 
  • I mean these comments in a positive way to improve API access to QuickBase.

    These libraries are all old and in some cases have not been updated in years. While I think they all still work for the methods they support, I don't think they cover all the available API methods nor are they maintained.

    Technically these SDKs are all synchronous whereas all of the languages involved have adopted asynchronous network methods. There has been a tidal wave of features added to all of these languages including promises, async/await, generators, and reactive methods that should be supported by QuickBase's SDKs.


  • MS's avatar
    MS
    Qrew Member
    Does the SDK for javascript client really work? I have had no luck. I am well versed in going thru SDK's and working with API's but the SDK seems and accessibility of it has been one of the biggest time sucks for me.

    Currently, is get this message...
    QuickBaseClient.js:826 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
  • So, after some investigation, it seems like the VBA SDK doesn't work with MSXML 3.0, 4.0, or 6.0. The problem here is that, while MSXML 2.0 is the recommended version to reference, it's completely deprecated and no longer distributed by Microsoft. Is there a fix for this?