Ready to get started?

Learn more about CData Cloud Hub or sign up for a free trial:

Learn More

Query QuickBase Data as a MySQL Database in Node.js

Execute MySQL queries against QuickBase data from Node.js.

You can use the CData Cloud Hub to query QuickBase data through a MySQL interface. Follow the procedure below to create a virtual database for QuickBase in the Cloud Hub and start querying using Node.js.

The CData Cloud Hub provides a pure MySQL, cloud-to-cloud interface for QuickBase, allowing you to easily query live QuickBase data in Node.js — without replicating the data to a natively supported database. As you query data in Node.js, the CData Cloud Hub pushes all supported SQL operations (filters, JOINs, etc) directly to QuickBase, leveraging server-side processing to quickly return QuickBase data.

Create a Virtual MySQL Database for QuickBase Data

CData Cloud Hub uses a straightforward, point-and-click interface to connect to data sources and generate APIs.

  1. Login to Cloud Hub and click Databases.
  2. Select "QuickBase" from Available Data Sources.
  3. Enter the necessary authentication properties to connect to QuickBase.

    User Authentication Method

    To authenticate with user credentials, specify the following connection properties:

    1. Set the User and Password.
    2. If your application requires an ApplicationToken;, you must provide it otherwise an error will be thrown. You can find the ApplicationToken under SpecificApp > Settings > App management > App properties > Advanced settings > Security options > Manage Application Token.

    User Token Authentication

    To authenticate with a user token, specify the following connection properties:

    1. Set UserToken and you are ready to connect. You can find the UserToken under Quick Base > My Preferences > My User Information > Manage User Tokens.
  4. Click Test Database.
  5. Click Privileges -> Add and add the new user (or an existing user) with the appropriate permissions.

With the virtual database created, you are ready to connect to QuickBase data from any MySQL client.

Query QuickBase from Node.js

The following example shows how to define a connection and execute queries to QuickBase with the MySQL module. You will need the following information:

  • Host name, or address, and port: The address of your instance of the Cloud Hub (myinstance.cdatacloud.net) and the port (3306)
  • Username and password: The username and password of a user you authorized on the Cloud Hub
  • Database name: The database you configured for QuickBase (quickbasedb)

Connect to QuickBase data and start executing queries with the code below:

var mysql      = require('mysql');
var fs         = require('fs');
var connection = mysql.createConnection({
  host     : 'myinstance.cdatacloud.net',
  database : 'quickbasedb',
  port	   : '3306',
  user     : 'admin',
  password : 'password',
  ssl      : {
    ca : fs.readFileSync('C:/certs/myCA.pem')
  }
});
connection.connect();
connection.query('SELECT * FROM SampleTable_1', function(err, rows, fields) {
  if (err) throw err;
  console.log(rows);
});

connection.end();