Summary

The persistedAggregations() GraphQL query will return a list of all persisted aggregations accessible by the requester.

Stability Level Preview

Syntax

graphql
persistedAggregations: [PersistedAggregation]!

There is no input for this query. You only have to list the parameters you want returned. See the Returned Values section for a list of these parameters.

Example

Raw
graphql
query {
  persistedAggregations
     { id, name, enabled,
       schedule { backfillAmount, backfillUnit, 
                  interval, timestampType }
       }
}
Mac OS or Linux (curl)
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "query {
  persistedAggregations
     { id, name, enabled,
       schedule { backfillAmount, backfillUnit, 
                  interval, timestampType }
       }
}"
}
EOF
Mac OS or Linux (curl) One-line
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "query {
  persistedAggregations
     { id, name, enabled,
       schedule { backfillAmount, backfillUnit, 
                  interval, timestampType }
       }
}"
}
EOF
Windows Cmd and curl
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
    -H "Authorization: Bearer $TOKEN" ^
    -H "Content-Type: application/json" ^
    -d @'{"query" : "query { ^
  persistedAggregations ^
     { id, name, enabled, ^
       schedule { backfillAmount, backfillUnit,  ^
                  interval, timestampType } ^
       } ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "query {
  persistedAggregations
     { id, name, enabled,
       schedule { backfillAmount, backfillUnit, 
                  interval, timestampType }
       }
}"
}'
    "$YOUR_LOGSCALE_URL/graphql"
Perl
perl
#!/usr/bin/perl

use HTTP::Request;
use LWP;

my $TOKEN = "TOKEN";

my $uri = '$YOUR_LOGSCALE_URL/graphql';

my $query = "query {
  persistedAggregations
     { id, name, enabled,
       schedule { backfillAmount, backfillUnit, 
                  interval, timestampType }
       }
}";
$query =~ s/\n/ /g;
my $json = sprintf('{"query" : "%s"}',$query);
my $req = HTTP::Request->new("POST", $uri );

$req->header("Authorization" => "Bearer $TOKEN");
$req->header("Content-Type" => "application/json");

$req->content( $json );

my $lwp = LWP::UserAgent->new;

my $result = $lwp->request( $req );

print $result->{"_content"},"\n";
Python
python
#! /usr/local/bin/python3

import requests

url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "query {
  persistedAggregations
     { id, name, enabled,
       schedule { backfillAmount, backfillUnit, 
                  interval, timestampType }
       }
}"
}'''

resp = requests.post(url,
                     data = mydata,
                     headers = {
   "Authorization" : "Bearer $TOKEN",
   "Content-Type" : "application/json"
}
)

print(resp.text)
Node.js
javascript
const https = require('https');

const data = JSON.stringify(
    {"query" : "query {
  persistedAggregations
     { id, name, enabled,
       schedule { backfillAmount, backfillUnit, 
                  interval, timestampType }
       }
}"
}
);


const options = {
  hostname: '$YOUR_LOGSCALE_URL',
  path: 'graphql',
  port: 443,
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Content-Length': data.length,
    Authorization: 'BEARER ' + process.env.TOKEN,
    'User-Agent': 'Node',
  },
};

const req = https.request(options, (res) => {
  let data = '';
  console.log(`statusCode: ${res.statusCode}`);

  res.on('data', (d) => {
    data += d;
  });
  res.on('end', () => {
    console.log(JSON.parse(data).data);
  });
});

req.on('error', (error) => {
  console.error(error);
});

req.write(data);
req.end();
Example Responses
Success (HTTP Response Code 200 OK)
json
{
  "data": {
    "persistedAggregations": {
      "id": "abc123",
      "name": "perag-1",
      "enabled": true,
      "schedule": {
         "backfillAmount": "7",
         "backfillUnit": "Days",
         "interval": "Weekly",
         "timestampType": "EventTime"
      }
    }
  }
}

Returned Values

For the results, there are a few parameters. They primarily consist of the identifier and name of the persisted aggregation, whether it's enabled, and details on its schedule. These choices and a link to sub-choices are listed here:

Table: PersistedAggregation Datatype

ParameterTypeRequiredDefaultStabilityDescription
Some input parameters may be required, as indicated in the Required column. For return values, this indicates that you are assured a value if the field is requested for the results.
Table last updated: May 12, 2026
createdInfoPersistedAggregationCommitMetadatayes PreviewMetadata related to the creation of the persisted aggregation. See PersistedAggregationCommitMetadata.
descriptionstring  PreviewThe description of the persisted aggregation.
enabledbooleanyes PreviewWhether the persisted aggregation is enabled.
destinationRepository  PreviewThe destination repository where aggregation output data is written. This is immutable after creation. See Repository.
healthInfoPersistedAggregationHealthInfo  PreviewDerived health status information for the persisted aggregation. See PersistedAggregationHealthInfo.
idstringyes PreviewThe unique identifier of the persisted aggregation.
labels[string]yes PreviewThe labels associated with the aggregation.
modifiedInfoPersistedAggregationCommitMetadata  PreviewMetadata related to the last modification of the persisted. See PersistedAggregationCommitMetadata.
namestringyes PreviewThe name of the persisted aggregation.
queryOwnershipTypestringyes PreviewThe ownership type of the query.
queryStringstringyes PreviewThe query string for the aggregation.
schedulePersistedAggregationScheduleyes PreviewThe schedule configuration for the aggregation. See PersistedAggregationSchedule.
searchDomainSearchDomain  PreviewThe view or repository to which this persisted aggregation belongs. See SearchDomain.
staticFields[PersistedAggregationStaticField]yes PreviewStatic key-value fields attached to each result event. See PersistedAggregationStaticField.
tagstringyes PreviewThe unique tag identifier for the persisted aggregation. Immutable after creation.