You can attach labels to alerts to make it easier to keep them organized — to spot duplicates or gaps. You can add labels when creating an alert, or later with the addAlertLabelV2() GraphQL mutation. Since it doesn't allow for the addition of multiple labels, it has been deprecated — to be removed by version 1.273 — and it's been replaced with addLegacyAlertLabels().

After using this mutation, you may decide to delete some labels. Use the removeLegacyAlertLabels() mutation to do that.

Hide Query Example

Show Alert Labels Query

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

API Stability Deprecated

Syntax

graphql
addAlertLabelV2(
      input: AddAlertLabel!
    ): Alert!

For the input, you have to give the name of the view or repository, and the unique identifier of the alert to which you want to add a label (click on Show Query below). Last, you'll have to provide the label, which can be up to sixty characters.

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 Alert Identifiers Query

Example

Raw
graphql
mutation {
  addAlertLabelV2(input: {
    viewName: "humio",
    id: "abc123", 
    label: "humioator" } 
    )
  { 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 {
  addAlertLabelV2(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    label: \"humioator\" } 
    )
  { 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 {
  addAlertLabelV2(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    label: \"humioator\" } 
    )
  { 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 { ^
  addAlertLabelV2(input: { ^
    viewName: \"humio\", ^
    id: \"abc123\",  ^
    label: \"humioator\" }  ^
    ) ^
  { displayName, description } ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  addAlertLabelV2(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    label: \"humioator\" } 
    )
  { 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 {
  addAlertLabelV2(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    label: \"humioator\" } 
    )
  { 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 {
  addAlertLabelV2(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    label: \"humioator\" } 
    )
  { 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 {
  addAlertLabelV2(input: {
    viewName: \"humio\",
    id: \"abc123\", 
    label: \"humioator\" } 
    )
  { 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": {
    "addAlertLabelV2": {
      "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 alert to which you want to add a label — and the label to add. This is described here in the table for this datatype. Click on the Show Query link under the Syntax section above for an example of how to get the aggregate alert identifiers.

Table: AddAlertLabel

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: Sep 17, 2024
idstringyes Long-TermIdentifier of the alert.
labelstringyes Long-TermLabel for the alert.
viewNamestringyes Long-TermName of the view of the alert.

Returned Datatype

You can get the query string used by the alert, what is 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. Be sure to include the labels parameter so you can see the results of your addition, in case there's one you want to eliminate or 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.