Search Knowledge Base by Keyword
Qumulo
Overview
Qumulo Core is a scale-out file storage system. A cluster of nodes presents one namespace over NFS, SMB and S3, and the system is built around continuously maintained analytics: rather than walking the tree to find out where capacity went, the cluster keeps running aggregates so an administrator can see capacity, file counts and throughput broken down by directory in real time. That directory-level accounting is Qumulo’s distinguishing feature, and it is exposed through the same REST API used for cluster, node, quota and share administration.
The ReadyWorks connector calls that API through the json_rest_api.php driver. Unlike the username and password connectors elsewhere in the storage set, this one authenticates with a bearer token: you paste a Qumulo access token into the Bearer Token field and ReadyWorks sends it as Authorization: Bearer on the call. The token is stored encrypted against the connection. You also supply the API domain of the cluster and a server-side working path used while responses are parsed.
In an estate context, the directory analytics are what make this feed worth having. Most storage inventories tell you a volume is 80 percent full. Qumulo can tell you which directory tree grew, which means ReadyWorks can attribute unstructured data growth to a team, a project or an application rather than to a mount point. Combined with quota and share records, that supports capacity chargeback, identifies the trees that dominate a migration’s data-transfer window, and gives a defensible basis for archive and deletion decisions.
The connector is registered as bidirectional. Inbound jobs pull cluster data into staging tables. The outbound side posts a record from ReadyWorks to an endpoint you nominate and captures status, message and record key from the reply. Neither direction ships with a Qumulo endpoint configured.
NOTE: Qumulo access tokens are issued and revoked on the cluster. ReadyWorks stores the token you paste in and does not renew it, so a token with an expiry will stop the connection working on the day it lapses with no warning from the estate side.
Connector Properties
| Property | Value |
|---|---|
| Identifier | QUMULO |
| Name | Qumulo |
| Description | Qumulo storage solution |
| Job Types | Both Inbound and Outbound |
| Order | 360 |
| Enabled | Yes |
| Locked | Yes |
| Block Update | No |
| Single Authentication | No |
| Windows Only | No |
| Connector Version | 2026-08-10 |
| Hooks | None |
| Additional Job Fields | None |
| Image | ![]() |
Authentication Methods
Qumulo offers a single authentication method, and it is token-based rather than password-based.
| Method | Identifier | Base Method | Script | Order | Enabled | Config Fields |
|---|---|---|---|---|---|---|
| Bearer Token | QUMULO_84742fb39b |
QUMULO_84742fb39b |
json_rest_api.php |
30 | Yes | 5 |
Method 1: Bearer Token (QUMULO_84742fb39b)
Connect to a GET method API with a bearer token
Sends a Qumulo access token as an Authorization: Bearer header on the call. Generate the token on the cluster against a service account with read access to the endpoints you plan to collect, and record where it was issued so it can be revoked without hunting for it if the connection is ever decommissioned.
Connection Configuration Fields (5)
| Order | Label | Type | Required | Default | Max Len | Tooltip |
|---|---|---|---|---|---|---|
| 10 | API Domain | text | Yes | 255 | Enter API domain of the Connection | |
| 10 | Server Temporary Working Path | text | Yes | storage/etl5 |
255 | Enter path where temporary files are stored during data processing (exclude starting and ending backslash) |
| 60 | Bearer Token | password | No | 64000 | Tooltip for Authentication Value 1 | |
| 240 | Single Authentication | radio | Yes | 0 |
Choose if authentication is only to be done once and not on each enumeration or pagination loop | |
| 250 | Additional Job Fields | fields_list | No | Enter list of additional fields to add to staging data for all jobs |
Authentication Configuration
Headers sent on the authentication call:
| Header | Value | Base64 |
|---|---|---|
Content-Type: |
application/json |
Off |
Authorization: Bearer |
%auth_value_1% |
Off |
cURL options:
| Option | Authentication Call | Data Calls |
|---|---|---|
USERAGENT |
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0 |
Same |
SSL_VERIFYHOST |
false |
Same |
SSL_VERIFYPEER |
false |
Same |
RETURNTRANSFER |
true |
Same |
FOLLOWLOCATION |
true |
Same |
FAILONERROR |
true |
Same |
NOTE: The Bearer Token field is marked optional even though it carries the only credential this method has. Saving a connection with the field blank produces a connection that authenticates with an empty token.
Inbound Job Fields Enabled (44)
Inbound jobs expose the full REST field set, including three levels of enumeration and all five pagination modes.
| Order | Label | Type | Required | Default | Tooltip |
|---|---|---|---|---|---|
| 10 | Job Description | text | Yes | Enter description of the Job | |
| 20 | Job Schedule | lookup | Yes | Daily | Select frequency Job should run |
| 30 | Enabled | radio | Yes | Yes | Choose if Job is enabled |
| 40 | Use Unparsed Data | radio | No | No | Choose if you wish to parse the incoming data, or leave it in its raw format |
| 50 | Log Raw API Calls | radio | Yes | No | Choose if raw API calls are logged |
| 70 | Destination Table | text | Yes | Enter name of the destination table | |
| 80 | Data Identity | text | No | Enter identity of the Job | |
| 120 | Append New Data to Existing Tables | radio | No | No | Choose if new data will append to the existing destination table, or will create a new destination table |
| 130 | Fields to Index | text | No | Enter fields to index | |
| 170 | Method Type | select | Yes | GET |
Select method type of the Job |
| 190 | API End Point | text | No | Enter API end point of the Job | |
| 200 | API Data Parameters | fields_list | No | Enter API data parameters of the Job | |
| 210 | Body Data Sending Method | select | Yes | JSON Encoded Data | Select method for sending the body data |
| 220 | Raw JSON Body Data | textarea | No | Enter the raw JSON body to send. Do not use body selections in the API Parameters if this is used. | |
| 230 | API Return Data Node | text | No | Enter API return data node of the Job | |
| 250 | Pagination Type | select | No | None | Select request paging type of the Job |
| 270 | API Pagination Node | text | No | Enter API pagination node of the Job | |
| 280 | Pagination Offset Start | text | No | Enter request paging offset start of the Job | |
| 290 | Pagination Limit | text | No | Enter request pagination limit of the Job | |
| 300 | Pagination Termination Node | text | No | Enter request paging termination node and value of the Job | |
| 310 | Maximum API Calls | text | No | Enter maximum number of API calls for the Job to make | |
| 320 | Enumeration 1 Type | select | No | None | Enter enumeration level 1 type |
| 330 | Enumeration 1 ETL Job | lookup | No | Select ETL job for the enumeration values | |
| 340 | Enumeration 1 Data Type | data_type | No | Select the data type and fields for enumeration 1 values | |
| 350 | Enumeration 1 Keys End Point | text | No | Enter enumeration 1 keys end point of the Job | |
| 360 | Enumeration 1 Node | text | No | Enter enumeration 1 node of the Job | |
| 370 | Enumeration 1 Fields | fields_list | No | Enter enumeration 1 fields of the Job | |
| 380 | Enumeration 2 Type | select | No | None | Enter enumeration level 2 type |
| 390 | Enumeration 2 ETL Job | lookup | No | Select ETL job for the enumeration 2 values | |
| 400 | Enumeration 2 Data Type | data_type | No | Select the data type and fields for enumeration 2 values | |
| 410 | Enumeration 2 Keys End Point | text | No | Enter enumeration 2 keys end point of the Job | |
| 420 | Enumeration 2 Node | text | No | Enter enumeration 2 node of the Job | |
| 430 | Enumeration 2 Fields | fields_list | No | Enter enumeration 2 fields of the Job | |
| 440 | Enumeration 3 Type | select | No | None | Enter enumeration level 3 type |
| 450 | Enumeration 3 ETL Job | lookup | No | Select ETL job for the enumeration 3 values | |
| 460 | Enumeration 3 Data Type | data_type | No | Select the data type and fields for enumeration 3 values | |
| 470 | Enumeration 3 Keys End Point | text | No | Enter enumeration 3 keys end point of the Job | |
| 480 | Enumeration 3 Node | text | No | Enter enumeration 3 node of the Job | |
| 490 | Enumeration 3 Fields | fields_list | No | Enter enumeration 3 fields of the Job | |
| 500 | Pause Enumeration | text | No | Enter values for pausing enumeration every X calls for Y seconds | |
| 510 | Kill Enumeration on Error | radio | No | No | Choose to stop the enumeration loop on an error or continue processing the loop |
| 520 | Additional Fields | fields_list | No | Enter list of additional fields to add to staging data | |
| 550 | Retry Pause | text | No | Enter values for retrying a failed API connection. Retry X times, waiting Y seconds between each try, with an API timeout of Z seconds. | |
| 560 | Order | text | Yes | Enter order of the Job |
NOTE: Several labels and tooltips in this form carry defects inherited from the shared ETL5 field templates: the Enumeration 1 Node label reads “Enumaration”, the Append New Data label reads “Exisiting”, and the help text on Enumeration 1 Keys End Point and Enumeration 3 Fields both refer to enumeration 2. The underlying fields behave as their labels say.
Outbound Job Fields Enabled (13)
Outbound jobs expose the REST posting field set, including the outbound field list, the return data mapping and an optional raw JSON body template.
| Order | Label | Type | Required | Default | Tooltip |
|---|---|---|---|---|---|
| 10 | Job Description | text | Yes | Enter description of the Job | |
| 30 | Enabled | radio | Yes | Yes | Choose if Job is enabled |
| 50 | Log Raw API Calls | radio | Yes | No | Choose if raw API calls are logged |
| 170 | Method Type | select | Yes | GET |
Select method type of the Job |
| 180 | Data Sending Method | select | Yes | JSON Encoded Data | Select method for sending the outbound data |
| 190 | API End Point | text | No | Enter API end point of the Job | |
| 200 | API Data Parameters | fields_list | No | Enter API data parameters of the Job | |
| 210 | Body Data Sending Method | select | Yes | JSON Encoded Data | Select method for sending the body data |
| 260 | Return Data Fields List | fields_list | Yes | Enter return data fields of the Job | |
| 530 | Outbound Fields List | fields_list | Yes | Enter outbound fields of the Job | |
| 540 | Ignore Empty Outbound Fields | radio | No | Yes | Ignore, and do not include, any outbound fields that are empty and have no data |
| 550 | Raw JSON Outbound Template | textarea | No | Enter the raw JSON outbound template to send. This will replace any automated structures defined in the outbound fields. | |
| 560 | Order | text | Yes | Enter order of the Job |
Inbound Job Templates (1)
Qumulo ships one inbound template, and it is the generic REST skeleton rather than a cluster or analytics pull.
| # | Job Description | Destination Table | API End Point | Enabled | What It Pulls |
|---|---|---|---|---|---|
| 1 | Rest GET API | api_data |
Not set |
No | An empty starting point for a GET request, with no API End Point, no return data node and no pagination, writing to a placeholder staging table called api_data. It gives you an authenticated shell to build Qumulo jobs from. |
Job Template Configuration
Settings
| Setting | Value |
|---|---|
| Order | 10 |
| Enabled | No |
| Job Schedule | Daily (15 1 * * *) |
| Destination Table | api_data |
| Data Identity | api_data |
| Allow Empty Table | Yes |
| Append Files to Same Destination Table | No |
| Append New Data to Existing Tables | No |
| Use Unparsed Data | No |
| Convert UUID-Keyed Objects to Rows | No |
| Ignore XML Attributes | No |
| Log Raw API Calls | No |
| Method Type | GET |
| Body Data Sending Method | JSON Encoded Data |
Outbound Job Templates (1)
One outbound template ships, and it is the matching generic REST skeleton.
| # | Job Description | Method | API End Point | Enabled | What It Does |
|---|---|---|---|---|---|
| 1 | Rest POST API | POST |
Not set |
No | An empty POST job. It sends a single required string field named record_key as a JSON body to an endpoint you supply, and reads status, message and data.record_key back out of the response. |
Job Template Configuration
Settings
| Setting | Value |
|---|---|
| Order | 10 |
| Enabled | No |
| Log Raw API Calls | No |
| Method Type | POST |
| Body Data Sending Method | JSON Encoded Data |
| Data Sending Method | JSON Encoded Data |
| Ignore Empty Outbound Fields | Yes |
Job Parameters and Enumeration
Rest POST API
Outbound fields list:
| Label | Name | Type | Required | Pattern |
|---|---|---|---|---|
Record Key |
record_key |
String | on |
Return data fields:
| Label | Name |
|---|---|
Return Status |
status |
Return Message |
message |
Record Key |
data.record_key |

