Summary

The overrideRolledOutFeatureFlag() mutation is deprecated. It overrode the rollout state of a named feature flag for the current user account. Use enableFeature() to enable a feature flag or disableFeature() to disable one. LogScale will remove this mutation at the earliest in version 1.189.

Syntax

graphql
overrideRolledOutFeatureFlag(
      feature: FeatureFlag!,
      rollOut: Boolean!
   ): Boolean!

The mutation requires two arguments: feature identifies the feature flag to override, and rollOut sets whether the feature is rolled out for the current account. Set rollOut to true to mark the feature as rolled out or false to mark it as not rolled out. The mutation returns a non-null Boolean! confirming the override was applied.

Example

Raw
graphql
mutation {
  overrideRolledOutFeatureFlag(
     feature: NewOrganizationLimits,
     rollOut: false
  ) 
}
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 {
  overrideRolledOutFeatureFlag(
     feature: NewOrganizationLimits,
     rollOut: false
  ) 
}"
}
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 {
  overrideRolledOutFeatureFlag(
     feature: NewOrganizationLimits,
     rollOut: false
  ) 
}"
}
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 { ^
  overrideRolledOutFeatureFlag( ^
     feature: NewOrganizationLimits, ^
     rollOut: false ^
  )  ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  overrideRolledOutFeatureFlag(
     feature: NewOrganizationLimits,
     rollOut: false
  ) 
}"
}'
    "$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 {
  overrideRolledOutFeatureFlag(
     feature: NewOrganizationLimits,
     rollOut: false
  ) 
}";
$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 {
  overrideRolledOutFeatureFlag(
     feature: NewOrganizationLimits,
     rollOut: false
  ) 
}"
}'''

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 {
  overrideRolledOutFeatureFlag(
     feature: NewOrganizationLimits,
     rollOut: false
  ) 
}"
}
);


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

Input Parameters

This mutation accepts two required arguments. The following table describes each argument. Valid values for feature are listed in the subsequent FeatureFlag table.

Table: Input Parameters and Datatypes

Parameter Type Required Default Description
Both arguments are required. Valid values for feature are listed in the FeatureFlag table below.
feature FeatureFlag yes   The feature flag whose rollout state to override. See the FeatureFlag table for valid values.
rollOut Boolean yes   Set to true to mark the feature as rolled out for the account, or false to mark it as not rolled out.

The feature argument accepts a value from the FeatureFlag enum. The following table lists valid values:

Returned Values

The mutation returns a non-null Boolean!. The value is true if the override was applied successfully.