API Stability Long-Term

The resetQuota() GraphQL mutation is used to set the quota and rate to a given value, or to reset it to the default.

Related to this mutation there is the query, exceededQueryQuotas() to determine if a user has exceeded their query quota. There are also a few related mutations: addOrUpdateQueryQuotaUserSettings() to add or update query quota user settings; and removeQueryQuotaUserSettings() to remove query quota settings for a user.

Syntax

graphql
resetQuota(
       input: ResetQuotaInput!
    ): boolean

There are no special returned datatypes for this mutation field.

Example

Below is an example of how this mutation field might be used:

Raw
graphql
mutation {
  resetQuota( input:
     { newQuota: 1000,
       newRate: 10 
     } 
  )
}
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 {
  resetQuota( input:
     { newQuota: 1000,
       newRate: 10 
     } 
  )
}"
}
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 {
  resetQuota( input:
     { newQuota: 1000,
       newRate: 10 
     } 
  )
}"
}
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 { ^
  resetQuota( input: ^
     { newQuota: 1000, ^
       newRate: 10  ^
     }  ^
  ) ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  resetQuota( input:
     { newQuota: 1000,
       newRate: 10 
     } 
  )
}"
}'
    "$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 {
  resetQuota( input:
     { newQuota: 1000,
       newRate: 10 
     } 
  )
}";
$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 {
  resetQuota( input:
     { newQuota: 1000,
       newRate: 10 
     } 
  )
}"
}'''

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 {
  resetQuota( input:
     { newQuota: 1000,
       newRate: 10 
     } 
  )
}"
}
);


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

Given Datatype

For this input datatype, you'll have to provide the data for resetting the quota. The parameters for this are listed and described here:

Table: ResetQuotaInput

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 19, 2024
newQuotalongyes Long-TermThe new quota value to set.
textlongyes Long-TermThe new rate value to set.