Stability Level Long-Term

You can attach labels to legacy alerts to make it easier to keep them organized — to spot duplicates or gaps. You can add them when creating an alert, or later with the addLegacyAlertLabels() GraphQL mutation. There can be at most ten labels per alert, with a maximum length of sixty characters per label.

When you execute this mutation, it will return information on the updated alert if successful — null with errors, if not. The return values can include all of the labels for the alert, the ones added and already saved. From this you may decide to delete some labels. Use the removeLegacyAlertLabels() mutation to do that.

Hide Query Example

Show Legacy Alert Labels Query

For more information on legacy alerts, see the Legacy alerts documentation page. To manage labels through the UI, see the Triggers and Manage Triggers pages of the main documentation.

Syntax

graphql
addLegacyAlertLabels(
      input: AddLegacyAlertLabels!
   ): Alert

For the input, you have to give the name of the view or repository, and the unique identifier of the legacy alert to which you want to add labels (click on Show Query below). Last, you'll has to provide within brackets, a comma-separated list of labels.

For the return datatype, you can get details on the alert, including a list of labels for it. See the Returned Datatype section farther down this page.

Hide Query Example

Show Legacy Alert Identifiers Query

Example

Raw
graphql
mutation {
  addLegacyAlertLabels(input: {
    viewName: "humio",
    id: "abc123", 
    labels: [ "key-alerts",
              "night-shift",
              "admin-focus" ]
  )
  { displayName, description }
}
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 {
  addLegacyAlertLabels(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    labels: [ \"key-alerts\",
              \"night-shift\",
              \"admin-focus\" ]
  )
  { displayName, description }
}"
}
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 {
  addLegacyAlertLabels(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    labels: [ \"key-alerts\",
              \"night-shift\",
              \"admin-focus\" ]
  )
  { displayName, description }
}"
}
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 { ^
  addLegacyAlertLabels(input: { ^
    viewName: \"humio\", ^
    id: \"abc123\",  ^
    labels: [ \"key-alerts\", ^
              \"night-shift\", ^
              \"admin-focus\" ] ^
  ) ^
  { displayName, description } ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  addLegacyAlertLabels(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    labels: [ \"key-alerts\",
              \"night-shift\",
              \"admin-focus\" ]
  )
  { displayName, description }
}"
}'
    "$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 {
  addLegacyAlertLabels(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    labels: [ \"key-alerts\",
              \"night-shift\",
              \"admin-focus\" ]
  )
  { displayName, description }
}";
$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 {
  addLegacyAlertLabels(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    labels: [ \"key-alerts\",
              \"night-shift\",
              \"admin-focus\" ]
  )
  { displayName, description }
}"
}'''

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 {
  addLegacyAlertLabels(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    labels: [ \"key-alerts\",
              \"night-shift\",
              \"admin-focus\" ]
  )
  { displayName, description }
}"
}
);


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": {
    "addLegacyAlertLabels": {
      "displayName": "Late Night",
      "description": "Any activities late at night."
    }
  }
}

Given Datatype

You'll have to give the view or repository name, and the unique identifier of the legacy alert to which you want to add labels — and a comma-separated list of labels to add, within square-brackets. Click on the Show Query link under the Syntax section above for an example of how to get the legacy alert identifiers.

Table: AddLegacyAlertLabels

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: Nov 14, 2025
idstringyes Long-TermThe unique identifier of a legacy alert.
labels[string]yes Long-TermLabels to add to a legacy alert, at most one-hundred at a time.
viewNameRepoOrViewNameyes Long-TermThe name of the view of a legacy alert. RepoOrViewName is a scalar.

Returned Datatype

You can get the query string used by the alert, what actions are triggered, and any error messages when it was last executed. These and other parameters are listed in the table below, along with links to related datatype tables. Include the labels parameter so you can see the results of your addition, in case there's one you want to eliminate any or some you forgot to add.

Table: Alert

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: Oct 29, 2025
actionsstringyes Long-TermList of identifiers for actions to fire on query result.
actionsV2[Action]yes Long-TermList of unique identifiers for actions to fire on query result. See Action.
allowedActions[AssetAction]yes Short-TermList of allowed actions. See AssetAction .
createdInfoAssetCommitMetadata  Long-TermMetadata related to the creation of the alert. See AssetCommitMetadata.
descriptionstring  Long-TermDescription of alert.
displayNamestringyes Long-TermName of the alert.
enabledbooleanyes Long-TermFlag indicating whether the alert is enabled.
idstringyes Long-TermThe identifier of the alert.
labels[string]yes Long-TermLabels attached to the alert.
lastErrorstring  Long-TermLast error encountered while running the alert.
lastWarnings[string]yes Long-TermLast warnings encountered while running the alert.
namestringyes Long-TermThe name of the alert.
packagePackageInstallation  Long-TermA package installation. See PackageInstallation.
packageIdVersionedPackageSpecifier  Long-TermThe unique identifier of the package installed, if one was used. VersionedPackageSpecifier is a scalar.
queryOwnershipQueryOwnershipyes Long-TermOwnership of the query run by the alert. See QueryOwnership.
queryStartstringyes Long-TermStart of the relative time interval for the query.
queryStringstringyes Long-TermLogScale query to execute.
resourcestringyes Short-TermThe resource identifier for the alert.
runAsUserUser  Long-TermIdentifier of user by which the alert is run. See User.
throttleFieldstring  Long-TermField on which to throttle alert.
throttleTimeMillislongyes Long-TermThrottle time in milliseconds.
timeOfLastTriggerlong  Long-TermUNIX timestamp for when the alert was last triggered.
yamlTemplatestringyes Long-TermThe yaml formatted text that describes the alert.