Stats — Fehler
Aktuelle Fehlerereignisse (4xx, 5xx, Timeouts) im Paket — aufgeschlüsselt nach Host und Code.
GET /packages/{id}/stats/errors
Gibt vom Upstream-Provider erfasste Fehlerereignisse für dieses Paket zurück. Hilft bei blockierten Zielen, kaputten Sitzungen oder Upstream-Netzwerkproblemen.
GET
/api/v1/packages/{id}/stats/errors?period=7d&limit=50&offset=0Abfrageparameter
| Parameter | Default | Options |
|---|---|---|
period | 7d | 7d · 30d · 90d · 1y · day · week · month · 3months · 6months · year |
limit | 50 | 1–500 |
offset | 0 | ≥0 — for pagination |
Each entry carries the upstream provider’s reason string in the error field (a label such as NO_HOST_CONNECTION, not an HTTP status code), the destinationhost and port, the datetime bucket, and how many times it occurred (count).
response.json
{
"data": {
"package_id": 12,
"period": "7d",
"limit": 50,
"offset": 0,
"errors": [
{ "datetime": "2026-05-29 11:41:00 UTC", "error": "NO_HOST_CONNECTION", "host": "ipinfo.io", "port": 443, "count": 2 },
{ "datetime": "2026-05-29 11:40:00 UTC", "error": "NO_HOST_CONNECTION", "host": "example.com", "port": 443, "count": 1 }
]
},
"meta": { "version": "v1" }
}Field names are passed through verbatim from the upstream provider, so additional keys may appear. Always key on error and host rather than assuming a fixed set.
Code-Beispiele
errors.sh
curl "https://raxyproxy.com/api/v1/packages/12/stats/errors?period=24h&limit=100" \
-H "Authorization: Bearer raxy_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"errors.py
import requests
from collections import Counter
r = requests.get(
'https://raxyproxy.com/api/v1/packages/12/stats/errors',
headers={'Authorization': 'Bearer raxy_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'},
params={'period': '7d', 'limit': 500},
).json()
# Aggregate counts by host to find the most problematic destinations
by_host = Counter()
for e in r['data']['errors']:
by_host[e['host']] += e.get('count', 0)
for host, n in by_host.most_common(10):
print(f"{host:30} {n} failures")