Turn data tables into JSON with an API call

You can return data from Data Tables in an API call by using a Webhook Trigger. These steps require importing a template. Start by downloading and importing the Data Tables to JSON template.

Problem with the download?

This file is a unique, Catalytic-specific file type that only works in Catalytic. You cannot open the file on your computer. You only need it when importing a Workflow.

After downloading, if you get the error:

This file does not have an app associated with it for performing this action. Please install an app or, if one is already installed, created an association in the Default Apps Settings page.

This is because you either attempted to open it, or your web browser automatically opened the file after the download. Because this is a Catalytic-specific file type, the error is saying there is no program that can open it. This is to be expected.

How to configure this template

In this template, you鈥檒l configure a Webhook Trigger to make it easy to turn different data tables into JSON. After you set it up, you can access any of your data tables as JSON data.

鈿狅笍 Heads-up: Catalytic has a field size limit of 128kb. If a data table is large, it鈥檚 possible to hit this limit and create a fix task using this template. See Workflow system limits for more on these limits.

Import the Workflow

To get started with a template, first create a new Workflow, then import the .catalytic file.

  1. From any page, select Workflows from the top navigation bar.
  2. Select
  3. Select Import Template
  4. Drag and drop or select the .catalytic file
  5. If necessary, enter the password.
  6. Select Next: Configure the Workflow

Congratulations! Because you imported the template, most of the Workflow configuration is already complete. We only have a few more steps before your process is good to go. After importing the template, you鈥檒l land on the Workflow Builder page.

Add the Webhook trigger

  1. From the Workflow Builder page, head to your triggers under the聽Triggers & Fields聽section.

    screen readers look here
  2. Select聽Add a Trigger. This opens the Select trigger type screen.

  3. Select the聽Webhook聽type trigger. This opens the Create Webhook Trigger screen, where you enter in the trigger details.

    1. Trigger name: Data table to JSON trigger
    2. Trigger description: Set this to whatever works best for you.
    3. Wait for process to complete: True
    4. Do you want to receive a custom response: True
    5. Response Content-Type: application/json
    6. Response Template: Follow the format below to pass data to your workflow. Note that the mytable value has 3 curly brackets to pass properly formatted JSON.
     {
         "mystring": "{{mystring}}",
         "mytable": {{{mytable}}}
     }
    
  4. Select

Make an API call

With the Webhook trigger set up, you鈥檙e now able to send a data-table-id to the trigger address and return JSON data. While you could set a single Table ID as an Instance Field and convert that table to JSON, passing it in the API call enables you to use this Workflow for multiple tables.

To do so, in the body of your API call, include the data-table-id of the table you鈥檇 like to return. For example:

{
    "data-table-id": "11111111-1111-1111-1111-111111111111"
}
How to find a table鈥檚 ID

First, find the table field within a process. It is easiest to find this field by checking the output fields for an entire process

From there, select and open the table. The table ID is available at the end of the URL. For example, for https://example.pushbot.com/tables/a526b85f-57a3-4a9a-ad14-8d0dfcedcca3, the table ID is a526b85f-57a3-4a9a-ad14-8d0dfcedcca3

screen readers look here

If you鈥檇 like to filter the response, you can send additional fields in the body of the API call, and then use those fields in either of the actions: Tables: Apply filters or Excel: Apply filters.