Export results
- Last UpdatedJul 02, 2026
- 2 minute read
These are available methods to explore different ways of dissecting the data. The following file formats are available when exporting:
-
Excel
-
JSON
-
NDJSON
Export a class breakdown (hierarchical metrics):
mutation {
dataValidation {
classBreakdown {
export(classBreakdownHandle : 50 sessionHandle : 12345 name
: "Breakdown Export" description
: "Class breakdown metrics - Q4 2024" outputFileName
: "breakdown-results.xlsx" retentionPeriodInMinutes : 120) {
handle status
}
}
}
}
Export vocabulary match
mutation {
dataValidation {
dataset {
exportVocabulary(
datasetHandle : 200 classLibraryHandle : 100 vocabularyIdentifier
: "CFIHOS-v1.5" name
: "Vocabulary Match Export" outputFileName
: "vocabulary-match.xlsx") {
handle status
}
}
}
}
Monitor Export Progress
Export status values: CREATED โ IN_PROGRESS โ COMPLETED | FAILED
{
dataValidation {
export {
list(filters : {handle : {eq : 500}}) {
handle name status statusReason outputFileName fileSizeBytes retainUntil
startedAt endedAt
}
}
}
}
Download Export using REST
Once the export status is COMPLETED, download via REST:
Endpoint: POST
/api/account/{{accountID}}/dataValidation/{{instanceId}}/v1/export/results
-H "Authorization: Bearer {token}" \
-o "export-results.xlsx"
Note: Download promptly, export files have a short default retention of 1 hour.
FileType export selection
Select the file type desire with this variable:
Variables : {
"sId": 175362612,
"exportName": "New session 18 March 2026 14:16 - all data, 18 Mar 2026, 20:07",
"fileType": "EXCEL",
"severities": [
"warning"
],
"includeAllAttribute": false
}
And use this mutation to export:
mutation {
GenerateSessionDataExport($sId
: Long !, $exportName
: String, $fileType
: String, $severities
: [String], $includeAllAttribute
: Boolean !) {
dataValidation {
sessionDataObject {
export(sessionHandle
: $sId format
: $fileType retentionPeriodInMinutes : 10080 name
: $exportName, outputFileName
: $exportName) {
handle
projection(
filters: {
totalNumberOfIssuesConstrainedGreaterThan: {
forSeverities: $severities
value: 0
}
}
orderBy: { classIdentifier: "ASC" }
pagination: { take: 0 }
) {
sourceIndex session{name} fileSection{
name} uniqueIdentifier objectName classConcept classIdentifier
className
issues(filters
: {severityAny : $severities} optional
: true orderBy
: {severity : null} pagination
: {take : 0}){
validationRuleName severity message
validationRuleDescription} attributes(optional
: true orderBy
: {
attributeIdentifier :
null
} pagination
: {take : 0})
@include(if
: true) {
attributeIdentifier attributeName attributeDescription sourceValue
transformedValue
numberOfIssues(
constraint
: {
forSeverities :
[ "error", "warning", "hint", "suggestion" ]
}) issues(filters
: {severityAny : $severities} optional
: $includeAllAttribute orderBy
: {severity : null} pagination
: {take : 0}) {
validationRuleName severity message subject
}
}
}
}
}
}
}
Session Export Download
Session-specific exports (e.g., session data objects, session rule statistics) use a dedicated download path. This endpoint is not listed in the Swagger API explorer but is fully functional.
Endpoint: POST
/api/account/{{accountID}}/dataValidation/{{instanceId}}/v1/export/results
-H "Authorization: Bearer {token}" \
-o "session-export-results.xlsx"
Note: Use sessionExport when the export was triggered for session data. Monitor export progress using the export GraphQL entity โ only the download path differs.
Export Entity Structure
|
Property |
Type |
Description |
|---|---|---|
|
handle |
long |
Unique identifier |
|
name |
string? |
Export name |
|
description |
string? |
Purpose or notes |
|
resourceHandle |
long? |
Source resource handle |
|
resourceType |
string? |
Source resource type |
|
resourceName |
string? |
Source resource name |
|
outputFileName |
string? |
Download file name |
|
fileSizeBytes |
long? |
File size |
|
retentionPeriodInMinutes |
int? |
Retention (default: 1 hour) |
|
retainUntil |
DateTime? |
Retention expiry |
|
status |
string? |
CREATED, IN_PROGRESS, COMPLETED, FAILED |
|
statusReason |
string? |
Status details / failure reason |
|
startedAt |
DateTime? |
Job start time |
|
endedAt |
DateTime? |
Job end time |
|
etag |
string |
Concurrency token |
|
grantedAccess |
string[] |
Effective permissions |