Subtract data from sub-user
curl --request POST \
--url https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"user_id": "<string>",
"data_gb": 123,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance"
payload = {
"user_id": "<string>",
"data_gb": 123,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
user_id: '<string>',
data_gb: 123,
idempotency_key: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'user_id' => '<string>',
'data_gb' => 123,
'idempotency_key' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance"
payload := strings.NewReader("{\n \"user_id\": \"<string>\",\n \"data_gb\": 123,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"user_id\": \"<string>\",\n \"data_gb\": 123,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"user_id\": \"<string>\",\n \"data_gb\": 123,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"user_id": "<string>",
"data_gb": 123,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"statusCode": 400,
"message": "User <username or user_id> does not exist",
"error": "Bad Request"
}{
"statusCode": 403,
"message": "reseller not found",
"error": "Bad Request"
}Royal Resis
Subtract data from sub-user
Input user_id and data_gb amount you want to subtract from sub-user. data_gb must be a number
POST
/
proxy_api
/
v1
/
royalresis
/
users
/
subtract_balance
Subtract data from sub-user
curl --request POST \
--url https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"user_id": "<string>",
"data_gb": 123,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance"
payload = {
"user_id": "<string>",
"data_gb": 123,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
user_id: '<string>',
data_gb: 123,
idempotency_key: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'user_id' => '<string>',
'data_gb' => 123,
'idempotency_key' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance"
payload := strings.NewReader("{\n \"user_id\": \"<string>\",\n \"data_gb\": 123,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"user_id\": \"<string>\",\n \"data_gb\": 123,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://core-proxy-service-w34nvoxnwq-uc.a.run.app/proxy_api/v1/royalresis/users/subtract_balance")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"user_id\": \"<string>\",\n \"data_gb\": 123,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"user_id": "<string>",
"data_gb": 123,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"statusCode": 400,
"message": "User <username or user_id> does not exist",
"error": "Bad Request"
}{
"statusCode": 403,
"message": "reseller not found",
"error": "Bad Request"
}Authorizations
[just text field] Please enter token in following format: Bearer
Body
application/json
User Id
amount in gb
Optional UUIDv4. Reuse for retries of the same operation. Saved responses replay without another write; processing or uncertain operations return 409. Keys are retained indefinitely (at least 24 hours). Omit for legacy behavior.
Response
Balance subtracted
User Id
amount in gb
Optional UUIDv4. Reuse for retries of the same operation. Saved responses replay without another write; processing or uncertain operations return 409. Keys are retained indefinitely (at least 24 hours). Omit for legacy behavior.