Summary

The addLimit() mutation adds a limit to an organization. This mutation is deprecated and will be removed no earlier than version 1.201. Use addLimitV2() instead. addLimitV2() provides additional contractual and measurement type controls not available in this mutation.

Syntax

graphql
addLimit(
      input: AddLimitInput!
   ): Boolean!

The mutation accepts a single required input argument of type AddLimitInput!. It returns a non-null Boolean indicating whether the operation succeeded.

See the Input Parameters section for the fields required in AddLimitInput.

Example

Raw
graphql
mutation {
  addLimit(input: 
       {limitName: "limiter2", 
        allowLogin: true, allowSelfService: true,
        dailyIngest: 10000, retention: 30} )
}
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 {
  addLimit(input: 
       {limitName: \"limiter2\", 
        allowLogin: true, allowSelfService: true,
        dailyIngest: 10000, retention: 30} )
}"
}
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 {
  addLimit(input: 
       {limitName: \"limiter2\", 
        allowLogin: true, allowSelfService: true,
        dailyIngest: 10000, retention: 30} )
}"
}
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 { ^
  addLimit(input:  ^
       {limitName: \"limiter2\",  ^
        allowLogin: true, allowSelfService: true, ^
        dailyIngest: 10000, retention: 30} ) ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  addLimit(input: 
       {limitName: \"limiter2\", 
        allowLogin: true, allowSelfService: true,
        dailyIngest: 10000, retention: 30} )
}"
}'
    "$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 {
  addLimit(input: 
       {limitName: \"limiter2\", 
        allowLogin: true, allowSelfService: true,
        dailyIngest: 10000, retention: 30} )
}";
$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 {
  addLimit(input: 
       {limitName: \"limiter2\", 
        allowLogin: true, allowSelfService: true,
        dailyIngest: 10000, retention: 30} )
}"
}'''

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 {
  addLimit(input: 
       {limitName: \"limiter2\", 
        allowLogin: true, allowSelfService: true,
        dailyIngest: 10000, retention: 30} )
}"
}
);


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

Input Parameters

The AddLimitInput type requires a limit name, login access flag, daily ingest amount, retention period, and self-service flag. The following optional fields control expiration, contract version, and user limits.

Table: AddLimitInput Input Datatype

ParameterTypeRequiredDefaultStabilityAvailabilityDescription
allowLoginBooleanyes Deprecated Whether the limit allows logging in.
allowSelfServiceBooleanyes Deprecated Whether the limit allows self-service.
contractVersionOrganizations__ContractVersion  Deprecated The version of the contract, using the enumerate list of Organizations__ContractVersion: Unknown, Version1, or Version2.
dailyIngestLongyes Deprecated The daily ingest allowed for the limit.
expirationLong  Deprecated The expiration date for the limit.
limitNameStringyes Deprecated The name of the limit to add.
retentionIntyes Deprecated The retention in days allowed for the limit.
userLimitInt  Deprecated The limit for users.