Stability Level Long-Term

The unsetRetention() GraphQL mutation is used to restore retention settings on a repository back to default values.

Hide Query Example

Show Repository Retentions Query

Syntax

graphql
unsetRetention(
     repositoryName: string!,
     timeBasedRetention: boolean,
     ingestSizeBasedRetention: boolean,
     storageSizeBasedRetention: boolean,
     timeBasedBackupRetention: boolean
   ): UnsetRetentionMutation!

The only required input is the name of the respository to reset retention to default values. The rest are optional boolean values that are false by default. See the Given Datatype for explanations of each parameter.

For the results, you can get plenty of information about the repository. See the Returned Datatype section farther down this page.

Example

Raw
graphql
mutation {
  unsetRetention(
     repositoryName: "humio",
     timeBasedRetention: True,
     ingestSizeBasedRetention: True,
     storageSizeBasedRetention: False,
     timeBasedBackupRetention: True
  )  { repository { id, name } } 
}
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 {
  unsetRetention(
     repositoryName: \"humio\",
     timeBasedRetention: True,
     ingestSizeBasedRetention: True,
     storageSizeBasedRetention: False,
     timeBasedBackupRetention: True
  )  { repository { id, name } } 
}"
}
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 {
  unsetRetention(
     repositoryName: \"humio\",
     timeBasedRetention: True,
     ingestSizeBasedRetention: True,
     storageSizeBasedRetention: False,
     timeBasedBackupRetention: True
  )  { repository { id, name } } 
}"
}
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 { ^
  unsetRetention( ^
     repositoryName: \"humio\", ^
     timeBasedRetention: True, ^
     ingestSizeBasedRetention: True, ^
     storageSizeBasedRetention: False, ^
     timeBasedBackupRetention: True ^
  )  { repository { id, name } }  ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  unsetRetention(
     repositoryName: \"humio\",
     timeBasedRetention: True,
     ingestSizeBasedRetention: True,
     storageSizeBasedRetention: False,
     timeBasedBackupRetention: True
  )  { repository { id, name } } 
}"
}'
    "$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 {
  unsetRetention(
     repositoryName: \"humio\",
     timeBasedRetention: True,
     ingestSizeBasedRetention: True,
     storageSizeBasedRetention: False,
     timeBasedBackupRetention: True
  )  { repository { id, name } } 
}";
$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 {
  unsetRetention(
     repositoryName: \"humio\",
     timeBasedRetention: True,
     ingestSizeBasedRetention: True,
     storageSizeBasedRetention: False,
     timeBasedBackupRetention: True
  )  { repository { id, name } } 
}"
}'''

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 {
  unsetRetention(
     repositoryName: \"humio\",
     timeBasedRetention: True,
     ingestSizeBasedRetention: True,
     storageSizeBasedRetention: False,
     timeBasedBackupRetention: True
  )  { repository { id, name } } 
}"
}
);


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": {
    "unsetRetention": {
      "repository": {
         "id": "123abc",
         "name": "humio"
       }
    }
  }
}

Given Datatype

For the input datatype, you'll have to give the name of the respository you want to reset retention to default values. The rest parameters are meant to indicate which retention settings you want to reset. For an example of how to get the current retention settings for a repository, click on the Show Query link before the Syntax section above.

Table: Input Using Standard Datatypes

Parameter Type Required Default Description
ingestSizeBasedRetention boolean   false Whether to restore the ingest-size-based retention to the default value.
repositoryName string yes   The name of the repository for which to restore retention to default.
storageSizeBasedRetention boolean   false Whether to restore the storage-size-based retention to the default value.
timeBasedBackupRetention boolean   false Whether to restore the time-based backup retention to the default value.
timeBasedRetention boolean   false Whether to restore the time-based retention to the default value.

Returned Datatype

For the returned datatype, you can get plenty of information about the repository. Below is a list of them:

Table: UnsetRetentionMutation

ParameterTypeRequiredDefaultStabilityDescription
Some arguments may be required, as indicated in the Required column. For return datatypes, this indicates that you must specify which fields you want returned in the results.
Table last updated: Mar 31, 2026
repositorySearchDomainyes Long-TermThe repository for which retention is unset. See SearchDomain.