Direct Access Agents
API for running Direct Access gateway agent benchmarks and retrieving benchmark and load performance metrics. Requires the Tenant Admin role. Availability depends on the operation and Direct Access gateway version.
Endpoints
Retrieves paginated statuses for benchmarks run by the specified Direct Access agent. Use the filters and sort order to find benchmark runs and review their progress or completed results. The requestor must have the TenantAdmin role and be either the gateway's space owner or a member of the gateway's space with the Can Consume Data role. Available in Direct Access Gateway V1.7.17+.
Facts
| Rate limit | Tier 1 (1000 requests per minute) |
Query Parameters
- filter string
SCIM style filter string as defined in RFC 7644 section 3.4.2.2
- limit integer
The page size
- page integer
The page number
- sort string
The field to sort by with +/- prefix indicating sort order
Can be one of: "-benchmarkStartTime""+benchmarkStartTime""benchmarkStartTime""-benchmarkEndTime""+benchmarkEndTime""benchmarkEndTime""-dataTransmissionStartTime""+dataTransmissionStartTime""dataTransmissionStartTime""-dataTransmissionEndTime""+dataTransmissionEndTime""dataTransmissionEndTime"
Path Parameters
- agentId stringRequired
The agent ID
Responses
200
The benchmark status.
- application/json object
Contains a paginated collection of benchmark statuses for an agent.
application/json properties
- data array of objects
Represents the status and performance data for a benchmark task.
data properties
- name string
The benchmark name
- status string
The benchmark status
- results object
Contains throughput, latency, transfer volume, and transmission timing for a benchmark.
results properties
- latency integer
The latency in ms measured during data transmission
- throughput integer
The data throughput in KB/s measured during data transmission
- connectorLatency integer
The average latency in ms measured on the connector side during data transmission. Null if no connector benchmark data is available.
- totalBytesTransferred integer
The total number of bytes successfully transferred during data transmission
- dataTransmissionEndTime string
The ISO 8601 formatted timestamp when data transmission completed
- dataTransmissionStartTime string
The ISO 8601 formatted timestamp when data transmission start
-
- benchmarkId string
The benchmark ID
- description string
The benchmark description
- statusMessage string
Additional details about the benchmark status
- benchmarkEndTime string
The ISO 8601 formatted timestamp when the benchmark task completed or was cancelled
- concurrentReloads integer
Number of concurrent benchmarks/reloads observed when this benchmark was started
- benchmarkStartTime string
The ISO 8601 formatted timestamp when the benchmark task started execution
- totalBytesRequested integer
The total bytes requested to be transferred during the benchmark
- getReloadSlotEndTime string
The ISO 8601 formatted timestamp when get reload slot completed
- dataGenerationEndTime string
The ISO 8601 formatted timestamp when data generation completed
- getReloadSlotStartTime string
The ISO 8601 formatted timestamp when get reload slot started
- dataGenerationStartTime string
The ISO 8601 formatted timestamp when data generation started
-
- page integer
- limit integer
- links object
links properties
- next object
next properties
- href string
The URL to the related resource
-
- prev object
prev properties
- href string
The URL to the related resource
-
- self object
self properties
- href string
The URL to the related resource
-
-
- totalCount integer
- totalPages integer
-
400
Bad Request
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
403
The requestor does not have the required permissions for the gateway's space.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
404
The gateway was not found.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
429
Too many requests.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
500
There was an error processing the request.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
501
All or part of the request has not yet been implemented.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
503
Service is unavailable.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://{tenant}.{region}.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.connectivity.directAccessAgents.getDirectAccessAgentBenchmarks( 'string', {},)qlik connectivity direct-access-agent benchmark ls 'string'curl "https://{tenant}.{region}.qlikcloud.com/api/connectivity/direct-access-agents/{agentId}/benchmarks" \-H "Authorization: Bearer <access_token>"Example Response
{ "data": [ { "name": "string", "status": "string", "results": { "latency": 42, "throughput": 42, "connectorLatency": 42, "totalBytesTransferred": 42, "dataTransmissionEndTime": "2026-03-11T20:54:34.437Z", "dataTransmissionStartTime": "2026-03-11T20:52:05.308Z" }, "benchmarkId": "string", "description": "string", "statusMessage": "string", "benchmarkEndTime": "2026-03-11T20:54:34.438Z", "concurrentReloads": 42, "benchmarkStartTime": "2026-03-11T20:51:15.927Z", "totalBytesRequested": 42, "getReloadSlotEndTime": "2026-03-11T20:51:22.000Z", "dataGenerationEndTime": "2026-03-11T20:51:40.000Z", "getReloadSlotStartTime": "2026-03-11T20:51:20.000Z", "dataGenerationStartTime": "2026-03-11T20:51:23.000Z" } ], "page": 42, "limit": 42, "links": { "next": { "href": "string" }, "prev": { "href": "string" }, "self": { "href": "string" } }, "totalCount": 42, "totalPages": 42}Starts a background benchmark task that measures the throughput and latency of a Direct Access agent. Use the returned benchmarkId to monitor progress and retrieve performance metrics for capacity planning or performance optimization. The requestor must have the TenantAdmin role and be either the gateway's space owner or a member of the gateway's space with the Can Consume Data role. Available in Direct Access Gateway V1.7.8+.
Facts
| Rate limit | Tier 2 (100 requests per minute) | |
| Replaces |
Query Parameters
- description string
The description for the benchmark task.
- force boolean
Forces the benchmark to start regardless of the state of the agent. Does not override QCS resource limits. Use with caution.
- gigaBytesToTransfer integer
The volume of data in GB to transfer during the throughput measurement part of the benchmark.
- name string
The name to assign to the benchmark task.
Path Parameters
- agentId stringRequired
The agent ID
Responses
201
Benchmark task created successfully with a unique identifier.
- application/json object
application/json properties
- benchmarkId string
-
400
Bad Request
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
403
The requestor does not have the required permissions for the gateway's space.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
404
The agent was not found.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
429
Too many requests.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
500
There was an error processing the request.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
501
All or part of the request has not yet been implemented.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
503
Service is unavailable.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://{tenant}.{region}.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.connectivity.directAccessAgents.createDirectAccessAgentBenchmark( 'string', {},)qlik connectivity direct-access-agent benchmark create 'string'curl "https://{tenant}.{region}.qlikcloud.com/api/connectivity/direct-access-agents/{agentId}/benchmarks" \-X POST \-H "Authorization: Bearer <access_token>"Example Response
{ "benchmarkId": "string"}Retrieves the connector agent configuration from the specified agent. Requestor must be assigned the TenantAdmin role and needs to be either a Gateway's space owner or a member in the Gateway's space with Can Consume Data role. Available in Direct Access Gateway V1.7.2+.
Facts
| Rate limit | Tier 1 (1000 requests per minute) | |
| Replaces |
Query Parameters
- queryProperties array of strings
Individual properties within the agent configuration
Path Parameters
- agentId stringRequired
The agent ID
Responses
200
The dictionary of key/value pairs retrieved from the configuration file.
- application/json object
application/json properties
- connectors array of objects
connectors properties
- settings array of objectsOne of:
- ConfigurationLineNumeric object
ConfigurationLineNumeric properties
- name string
- value string
- connector string
- uiActions array of strings
Values may be any of: "Read""Write"
- apiActions array of strings
Values may be any of: "Read""Write"
- description string
- displayName string
- defaultValue string
- pendingValue string
- skipValidation boolean
- permittedRangeEnd integer
- pendingApplication boolean
- allowMultipleValues boolean
- applyWithoutRestart boolean
- permittedRangeStart integer
-
- ConfigurationLineString object
ConfigurationLineString properties
- name string
- value string
- connector string
- uiActions array of strings
Values may be any of: "Read""Write"
- apiActions array of strings
Values may be any of: "Read""Write"
- description string
- displayName string
- defaultValue string
- pendingValue string
- skipValidation boolean
- permittedValues array of strings
- pendingApplication boolean
- allowMultipleValues boolean
- applyWithoutRestart boolean
-
-
- connectorName string
-
- environment string
- dcaasSettings array of objectsOne of:
- ConfigurationLineNumeric object
ConfigurationLineNumeric properties
- name string
- value string
- connector string
- uiActions array of strings
Values may be any of: "Read""Write"
- apiActions array of strings
Values may be any of: "Read""Write"
- description string
- displayName string
- defaultValue string
- pendingValue string
- skipValidation boolean
- permittedRangeEnd integer
- pendingApplication boolean
- allowMultipleValues boolean
- applyWithoutRestart boolean
- permittedRangeStart integer
-
- ConfigurationLineString object
ConfigurationLineString properties
- name string
- value string
- connector string
- uiActions array of strings
Values may be any of: "Read""Write"
- apiActions array of strings
Values may be any of: "Read""Write"
- description string
- displayName string
- defaultValue string
- pendingValue string
- skipValidation boolean
- permittedValues array of strings
- pendingApplication boolean
- allowMultipleValues boolean
- applyWithoutRestart boolean
-
-
- productVersion string
- connectorAgentSettings array of objectsOne of:
- ConfigurationLineNumeric object
ConfigurationLineNumeric properties
- name string
- value string
- connector string
- uiActions array of strings
Values may be any of: "Read""Write"
- apiActions array of strings
Values may be any of: "Read""Write"
- description string
- displayName string
- defaultValue string
- pendingValue string
- skipValidation boolean
- permittedRangeEnd integer
- pendingApplication boolean
- allowMultipleValues boolean
- applyWithoutRestart boolean
- permittedRangeStart integer
-
- ConfigurationLineString object
ConfigurationLineString properties
- name string
- value string
- connector string
- uiActions array of strings
Values may be any of: "Read""Write"
- apiActions array of strings
Values may be any of: "Read""Write"
- description string
- displayName string
- defaultValue string
- pendingValue string
- skipValidation boolean
- permittedValues array of strings
- pendingApplication boolean
- allowMultipleValues boolean
- applyWithoutRestart boolean
-
-
-
403
The requestor does not have the required permissions for the gateway's space.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
404
Configuration file not found.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
// qlik-api has not implemented support for `GET /api/connectivity/direct-access-agents/{agentId}/configurations` yet.// In the meantime, you can use fetch like this:
const response = await fetch( '/api/connectivity/direct-access-agents/{agentId}/configurations', { method: 'GET', headers: { 'Content-Type': 'application/json', }, },)# qlik-cli has not implemented support for GET /api/connectivity/direct-access-agents/{agentId}/configurations yet.curl "https://{tenant}.{region}.qlikcloud.com/api/connectivity/direct-access-agents/{agentId}/configurations" \-H "Authorization: Bearer <access_token>"Example Response
{ "connectors": [ { "settings": [ { "name": "string", "value": "string", "connector": "string", "uiActions": [ "Read" ], "apiActions": [ "Read" ], "description": "string", "displayName": "string", "defaultValue": "string", "pendingValue": "string", "skipValidation": true, "permittedRangeEnd": 42, "pendingApplication": true, "allowMultipleValues": true, "applyWithoutRestart": true, "permittedRangeStart": 42 } ], "connectorName": "string" } ], "environment": "string", "dcaasSettings": [ { "name": "string", "value": "string", "connector": "string", "uiActions": [ "Read" ], "apiActions": [ "Read" ], "description": "string", "displayName": "string", "defaultValue": "string", "pendingValue": "string", "skipValidation": true, "permittedRangeEnd": 42, "pendingApplication": true, "allowMultipleValues": true, "applyWithoutRestart": true, "permittedRangeStart": 42 } ], "productVersion": "string", "connectorAgentSettings": [ { "name": "string", "value": "string", "connector": "string", "uiActions": [ "Read" ], "apiActions": [ "Read" ], "description": "string", "displayName": "string", "defaultValue": "string", "pendingValue": "string", "skipValidation": true, "permittedRangeEnd": 42, "pendingApplication": true, "allowMultipleValues": true, "applyWithoutRestart": true, "permittedRangeStart": 42 } ]}Retrieves performance metrics for loads processed by the gateway, either for all loads or a filtered subset. Use these metrics to evaluate reload throughput, connector latency, and concurrent reload activity. The requestor must have the TenantAdmin role and be either the gateway's space owner or a member of the gateway's space with the Can Consume Data role. Load performance recording is disabled by default and is controlled by the BENCHMARK_LOAD_PERFORMANCE_METRICS_RECORDING_ENABLED configuration property. Available in Direct Access Gateway V1.7.17+.
Facts
| Rate limit | Tier 1 (1000 requests per minute) |
Query Parameters
- filter string
SCIM style filter string as defined in RFC 7644 section 3.4.2.2
- limit integer
The page size
- page integer
The page number
- sort string
The field to sort by with +/- prefix indicating sort order
Can be one of: "-benchmarkStartTime""+benchmarkStartTime""benchmarkStartTime""-benchmarkEndTime""+benchmarkEndTime""benchmarkEndTime""-dataTransmissionStartTime""+dataTransmissionStartTime""dataTransmissionStartTime""-dataTransmissionEndTime""+dataTransmissionEndTime""dataTransmissionEndTime"
Path Parameters
- agentId stringRequired
The agent ID
Responses
200
Load performance metrics retrieved successfully.
- application/json object
Contains a paginated collection of load performance metrics for an agent.
application/json properties
- data array of objects
Represents performance data captured for a load processed by the gateway.
data properties
- name string
The name of the load performance metric, typically in the format "reload-YYYY-MM-DDTHH:mm:ssK"
- appId string
The app id associated with the reload
- status string
The status of the load, e.g. "Completed", "Failed", "Cancelled"
- metricId string
A unique identifier generated for this metric
- reloadId string
The reload id that this load is a part of
- statement string
The load script statement for the load
- throughput integer
The data throughput in KB/s measured during data transmission
- connectorUrl string
The url of the connector
- dataSourceId string
The data source id
- dataSourceName string
The data source name
- sessionAppLoad boolean
A flag indicating whether this load is part of a session app load or not.
- connectorLatency integer
The connector latency in ms measured during data transmission
- concurrentReloads integer
Number of concurrent benchmarks/reloads observed when this load was started
- benchmarkingReload boolean
A flag indicating whether this load is part of a benchmarking reload or not.
- totalBytesTransferred integer
The total bytes transferred during the load
- dataTransmissionEndTime string
The ISO 8601 formatted timestamp when data transmission completed
- dataTransmissionStartTime string
The ISO 8601 formatted timestamp when data transmission started
- approximateMaxConnectorThroughput integer
Approximation of the maximum connector throughput in KB/s, excluding downstream write time
-
- page integer
- limit integer
- links object
links properties
- next object
next properties
- href string
The URL to the related resource
-
- prev object
prev properties
- href string
The URL to the related resource
-
- self object
self properties
- href string
The URL to the related resource
-
-
- totalCount integer
- totalPages integer
-
400
Bad Request
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
403
The requestor does not have the required permissions for the gateway's space.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
404
The gateway was not found.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
429
Too many requests.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
500
There was an error processing the request.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
503
Service is unavailable.
- application/json object
application/json properties
- errors array of objects
errors properties
- code string
- title string
- detail string
-
- traceId string
- hasErrors boolean
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://{tenant}.{region}.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.connectivity.directAccessAgents.getDirectAccessAgentLoadPerformanceMetrics( 'string', {},)qlik connectivity direct-access-agent load-performance-metric ls 'string'curl "https://{tenant}.{region}.qlikcloud.com/api/connectivity/direct-access-agents/{agentId}/load-performance-metrics" \-H "Authorization: Bearer <access_token>"Example Response
{ "data": [ { "name": "string", "appId": "string", "status": "string", "metricId": "string", "reloadId": "string", "statement": "string", "throughput": 42, "connectorUrl": "string", "dataSourceId": "string", "dataSourceName": "string", "sessionAppLoad": true, "connectorLatency": 42, "concurrentReloads": 42, "benchmarkingReload": true, "totalBytesTransferred": 42, "dataTransmissionEndTime": "2026-03-11T21:54:33.595Z", "dataTransmissionStartTime": "2026-03-11T21:54:19.352Z", "approximateMaxConnectorThroughput": 42 } ], "page": 42, "limit": 42, "links": { "next": { "href": "string" }, "prev": { "href": "string" }, "self": { "href": "string" } }, "totalCount": 42, "totalPages": 42}