Summary

The deletePersistedAggregation() mutation permanently removes a persisted aggregation from a repository. Deleting an aggregation stops all scheduled query executions and removes the associated precomputed result storage. The mutation returns true when the deletion succeeds and false when no aggregation matches the specified ID. To pause an aggregation without removing its configuration or precomputed data, use disablePersistedAggregation() instead.

Syntax

graphql
deletePersistedAggregation(
      input: DeletePersistedAggregationInput!
   ): Boolean!

The mutation accepts a single required argument, input, of type DeletePersistedAggregationInput!. Provide the unique identifier of the persisted aggregation to remove. See the Input Parameters section for details.

The mutation returns a non-null Boolean!. true confirms the aggregation was found and deleted; false indicates no aggregation matched the provided ID. An invalid or malformed ID returns a FieldValidationException.

Example

Raw
graphql
mutation {
  deletePersistedAggregation(
    input: { id: "abc123" } )
}
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" : "mutation {
  deletePersistedAggregation(
    input: { id: \"abc123\" } )
}"
}
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" : "mutation {
  deletePersistedAggregation(
    input: { id: \"abc123\" } )
}"
}
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" : "mutation { ^
  deletePersistedAggregation( ^
    input: { id: \"abc123\" } ) ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  deletePersistedAggregation(
    input: { id: \"abc123\" } )
}"
}'
    "$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 = "mutation {
  deletePersistedAggregation(
    input: { id: \"abc123\" } )
}";
$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" : "mutation {
  deletePersistedAggregation(
    input: { id: \"abc123\" } )
}"
}'''

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" : "mutation {
  deletePersistedAggregation(
    input: { id: \"abc123\" } )
}"
}
);


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": {
    "deletePersistedAggregation": true
  }
}

Input Parameters

The DeletePersistedAggregationInput type requires one field, id. This is the system-assigned unique identifier of the persisted aggregation to remove. Retrieve the ID from the persistedAggregations() query or from the response of createPersistedAggregation().