If you are working with a Python environment we provide a PyPI package that makes interacting with the CloudTables API as simple as calling a class constructor and then the method. Using the library you can easily embed data sets securely into your pages, get information about data sets, the data of a dataset, and also add, edit and delete data in a data set.
The CloudTables library is available as the CloudTablesApi
package on PyPi and can be installed for your project using:
# pip
pip install CloudTablesApi
# python
python3 -m pip uninstall CloudTablesApi
The CloudTables API libraries provide a class whose constructor returns an API handle.
from CloudTablesApi import CloudTablesApi
Once imported into your application, you need to create an API instance so the methods it provides can be configured and accessed. This can be done using:
api = CloudTablesApi('{apiKey}', options={
clientId: 'Unique client id', # Client id (e.g. a login id) - optional
clientName: 'Name', # Client's name - optional
domain: '{ip-or-hostname}' # Your CloudTables host
})
Where:
{apiKey}
should be replaced by the API key that you want to use for the access.clientId
and clientName
in the configuration object are optional, but we strongly recommend they are used when integrating with your own login system as it allows the identification of each client's actions in CloudTables' auditing features. Typically the clientId
would be set to your login system's user id and clientName
the user's username or full name.{ip-or-hostname}
is the access address configured for your CloudTables install.A new CloudTablesApi
instance should be created for each access request, as it will cache and reuse the access token if one is required.
There are two methods provided by the library to embed a data set into your HTML page. The end result is a <script>
tag which includes an access token that can then be inserted into your HTML.
The dataset().script_tag()
method can be used to get an access token (based on the initialisation options) for a data set, and will return a string that contains the full <script>
tag that should be inserted into your HTML:
token = api.token()
script = api.dataset('{data-set-id}').script_tag(token)
Where:
{data-set-id}
is the ID of the data set you wish to embed into the page. The data set ID can be found in the Inspector for the data set on the Data tab.You can also build your own <script>
tag based on a token:
token = api.token()
script = (
"<script "
"src='https://ip-or-hostname/io/loader/{data-set-id}/table/d'
"data-token='${token}'"
"></script>"
)
new CloudTablesApi()
CloudTablesApi
instance.
.dataset()
.dataset().data()
.dataset().insert()
.dataset().row()
.dataset().row().data()
.dataset().row().delete()
.dataset().row().update()
dataset().schema()
dataset().script_tag()
<script>
tag for a specific dataset to be displayed as a table. Insert this script tag where you want the table to appear in your HTML..datasets()
.token()
Our API libraries for CloudTables are open source under the MIT license. The Python source is available here and pull requests or suggestions for it are welcome.