#Usage
#Traffic
GET /proxies/{id}/usageAbility: read ยท Traffic through the proxy in UTC time buckets.
| Query | |
|---|---|
range | 24h (hourly buckets, default), 7d (hourly) or 30d (daily). Anything else falls back to 24h |
curl
Python
Node.js
PHP
curl 'https://proxykite.com/api/v1/proxies/7/usage?range=7d' \
-H "Authorization: Bearer $HYP_TOKEN" \
-H 'Accept: application/json'import os
import requests
r = requests.get(
"https://proxykite.com/api/v1/proxies/7/usage?range=7d",
headers={"Authorization": f"Bearer {os.environ['HYP_TOKEN']}", "Accept": "application/json"},
timeout=30,
)
print(r.status_code, r.json())const res = await fetch('https://proxykite.com/api/v1/proxies/7/usage?range=7d', {
headers: {
Authorization: `Bearer ${process.env.HYP_TOKEN}`,
Accept: 'application/json',
},
signal: AbortSignal.timeout(30000),
});
console.log(res.status, await res.json());<?php
$ch = curl_init('https://proxykite.com/api/v1/proxies/7/usage?range=7d');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('HYP_TOKEN'),
'Accept: application/json',
],
]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
var_dump($status, json_decode($body, true));Response 200
{
"data": [
{"t": "2026-10-09T17:00:00+00:00", "bytes_in": 1048576, "bytes_out": 52428, "requests": 312}
],
"range": "7d",
"used_bytes": 123456789,
"quota_bytes": null
}| Field | Meaning |
|---|---|
data[].t | start of the bucket (UTC) |
bytes_in, bytes_out | bytes in and out through the proxy in that bucket, as counted on your node |
requests | proxied requests (HTTP requests, CONNECT tunnels, SOCKS5 connections) |
used_bytes | traffic counted against the quota |
quota_bytes | traffic quota, null = unlimited. Reaching it disables the proxy (over_quota) and fires quota.exceeded |