Wie fange ich an?
- 1Registrieren Sie sich mit einem Benutzernamen und melden Sie sich im Dashboard an.
- 2Erzeugen Sie im Tab Verbindung einen API-Schlüssel. Der vollständige Schlüssel wird nur einmal angezeigt, speichern Sie ihn also sofort an einem sicheren Ort.
- 3Senden Sie den Schlüssel im Authorization-Header jeder Anfrage, die ihn braucht.
- 4Rufen Sie zuerst /account auf, um zu prüfen, ob der Schlüssel funktioniert, und bestellen Sie dann mit /orders.
Wie funktioniert die Authentifizierung?
Anfragen zu Ihrem eigenen Konto (account, orders, proxy-user) brauchen einen API-Schlüssel. Senden Sie ihn im Header als Authorization: Bearer hpk_... Preise, Länder und Preisangebote sind für alle offen und brauchen keinen Schlüssel.
HiProxy speichert nur einen Hash Ihres Schlüssels, nie den Schlüssel selbst. Wenn Sie ihn verlieren, erzeugen Sie im Dashboard einen neuen, der alte Schlüssel wird im selben Moment gesperrt. Verwenden Sie den Schlüssel nur in serverseitigem Code, nie in Code, der im Browser läuft, und nie in einem öffentlichen Repository.
Authorization: Bearer hpk_your_api_key
Basis-URL und Datenformat
- Basis-URL
- https://hiproxy.shop/api/v1
- Request- und Response-Body
- application/json
- Beträge
- USD als Zahl, z. B. 1036.60
- Zeitstempel
- ISO 8601 (UTC)
Gibt es Ratenlimits?
Jeder API-Schlüssel kann bis zu 60 Aufrufe pro Minute senden. Öffentliche Endpunkte ohne Schlüssel erlauben 60 Aufrufe pro Minute und IP. Wenn Sie das Limit überschreiten, erhalten Sie HTTP 429. Warten Sie eine Minute und senden Sie dann erneut.
Wie sieht eine Fehlerantwort aus?
Sie erhalten einen HTTP-Statuscode und einen JSON-Body mit einem kurzen Fehlercode und einer Meldung.
{
"error": {
"code": "insufficient_balance",
"message": "Your balance is too low for this order. Top up in the dashboard."
}
}| HTTP | code | Bedeutung |
|---|---|---|
| bad_requestHTTP 400Ein Pflichtwert fehlt, oder dieses Produkt akzeptiert den Wert nicht. | Ein Pflichtwert fehlt, oder dieses Produkt akzeptiert den Wert nicht. | |
| unauthorizedHTTP 401Es wurde kein API-Schlüssel gesendet, oder der Schlüssel ist falsch. | Es wurde kein API-Schlüssel gesendet, oder der Schlüssel ist falsch. | |
| insufficient_balanceHTTP 402Ihr Guthaben ist niedriger als der Bestellbetrag. Ihr Guthaben wurde nicht verändert. | Ihr Guthaben ist niedriger als der Bestellbetrag. Ihr Guthaben wurde nicht verändert. | |
| not_foundHTTP 404Ihr Konto hat keine Bestellung mit dieser id. | Ihr Konto hat keine Bestellung mit dieser id. | |
| rate_limitedHTTP 429Sie haben das Limit für Anfragen pro Minute überschritten. | Sie haben das Limit für Anfragen pro Minute überschritten. | |
| server_errorHTTP 500Der Server konnte die Anfrage nicht abschließen. Ihr Guthaben wurde nicht verändert. | Der Server konnte die Anfrage nicht abschließen. Ihr Guthaben wurde nicht verändert. |
Endpunkte
Konto abrufen
GET/api/v1/accountAPI-Schlüssel nötig
Zeigt Ihr Guthaben, Proxy-Host und Ports, Proxy-Benutzername und Passwort sowie die Liste Freigegebene IPs.
curl https://hiproxy.shop/api/v1/account \ -H "Authorization: Bearer hpk_your_api_key"
{
"username": "hi_user01",
"balance_usd": 1300,
"proxy": {
"host": "gate.hiproxy.shop",
"http_port": 6100,
"socks5_port": 6200,
"username": "hpexample1",
"password": "your_password"
},
"allowed_ips": [
"203.0.113.10"
]
}Produkte und Preise abrufen
GET/api/v1/productsKein Schlüssel
Zeigt für jedes Produkt die Bestellgrenzen, den Preis pro Stufe und die Laufzeitrabatte. Es nutzt dieselbe Preistabelle wie die Preisseite.
curl https://hiproxy.shop/api/v1/products
{
"currency": "USD",
"prices_as_of": "2026-10-31",
"products": [
{
"id": "unlimited",
"unit": "day",
"quantity": {
"meaning": "days",
"min": 1,
"max": 365
},
"...": "..."
},
{
"id": "residential",
"unit": "gb",
"...": "..."
}
]
}Länder und Städte auflisten
GET/api/v1/countriesKein Schlüssel
Zeigt die Länder, die jedes Produkt unterstützt, und die Städtewerte für die Option -city- im Benutzernamen.
| Feld | Typ | Bedeutung |
|---|---|---|
productOptional | string | Einer von unlimited, residential, isp, datacenter. Leer bedeutet residential. |
curl "https://hiproxy.shop/api/v1/countries?product=datacenter"
{
"product": "datacenter",
"countries": [
{
"code": "us",
"name": "United States",
"region": "americas",
"datacenter": true,
"cities": [
{
"name": "New York",
"value": "new_york"
},
{
"name": "Los Angeles",
"value": "los_angeles"
}
]
}
]
}Preisangebot abrufen
POST/api/v1/quoteKein Schlüssel
Berechnet den Bestellbetrag, ohne Ihr Guthaben zu belasten. Senden Sie denselben Body wie bei der Bestellung.
| Feld | Typ | Bedeutung |
|---|---|---|
productPflicht | string | Einer von unlimited, residential, isp, datacenter. |
quantityPflicht | integer | Tage für unlimited (1~365), GB für residential (5~5,000), Anzahl der IPs für isp (1~1,000) oder datacenter (5~5,000). |
concurrencyOptional | integer | Nur für unlimited. Wählen Sie 200, 500, 1000 oder 2000. |
bandwidthOptional | integer | Nur für unlimited, in Mbps. Wählen Sie 100, 200, 500 oder 1000. |
monthsOptional | integer | Nur für isp und datacenter. Wählen Sie 1, 3, 6 oder 12. |
countryOptional | string | Nur für isp und datacenter. Ein Ländercode aus zwei Buchstaben wie jp. Gültige Werte stehen in /countries. |
curl -X POST https://hiproxy.shop/api/v1/quote \
-H "Content-Type: application/json" \
-d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'{
"product": "unlimited",
"quantity": 30,
"unit_price_usd": 8.78,
"unit": "day",
"total_usd": 263.4
}Bestellung aufgeben
POST/api/v1/ordersAPI-Schlüssel nötig
Zieht den Gesamtbetrag von Ihrem Guthaben ab und erstellt die Bestellung. Sie beginnt als pending (wird aktiviert) und wechselt zu active, sobald sie bereit ist. Eine Bestellung, die nicht aktiviert werden kann, wird zu refunded, und alles, was Sie bezahlt haben, geht zurück auf Ihr Guthaben. Ist Ihr Guthaben zu niedrig, erhalten Sie 402.
| Feld | Typ | Bedeutung |
|---|---|---|
productPflicht | string | Einer von unlimited, residential, isp, datacenter. |
quantityPflicht | integer | Tage für unlimited (1~365), GB für residential (5~5,000), Anzahl der IPs für isp (1~1,000) oder datacenter (5~5,000). |
concurrencyOptional | integer | Nur für unlimited. Wählen Sie 200, 500, 1000 oder 2000. |
bandwidthOptional | integer | Nur für unlimited, in Mbps. Wählen Sie 100, 200, 500 oder 1000. |
monthsOptional | integer | Nur für isp und datacenter. Wählen Sie 1, 3, 6 oder 12. |
countryOptional | string | Nur für isp und datacenter. Ein Ländercode aus zwei Buchstaben wie jp. Gültige Werte stehen in /countries. |
curl -X POST https://hiproxy.shop/api/v1/orders \
-H "Authorization: Bearer hpk_your_api_key" \
-H "Content-Type: application/json" \
-d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'{
"order": {
"id": "HP-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.78,
"total_usd": 263.4,
"status": "pending",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:12:44.120Z"
},
"balance_usd": 1036.6
}Bestellungen auflisten
GET/api/v1/ordersAPI-Schlüssel nötig
Zeigt bis zu 100 Ihrer Bestellungen, die neuesten zuerst.
| Feld | Typ | Bedeutung |
|---|---|---|
statusOptional | string | Einer von pending, active, refunded. Leer liefert Bestellungen mit jedem Status. |
curl "https://hiproxy.shop/api/v1/orders?status=pending" \ -H "Authorization: Bearer hpk_your_api_key"
{
"orders": [
{
"id": "HP-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.78,
"total_usd": 263.4,
"status": "pending",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:12:44.120Z"
}
]
}Eine Bestellung abrufen
GET/api/v1/orders/{id}API-Schlüssel nötig
Zeigt eine einzelne Bestellung anhand ihrer id. Praktisch, um zu prüfen, ob die Aktivierung abgeschlossen ist.
| Feld | Typ | Bedeutung |
|---|---|---|
idPflicht | string | Die Bestell-id, etwa HP-7KQ2M-X4HTD. |
curl https://hiproxy.shop/api/v1/orders/HP-7KQ2M-X4HTD \ -H "Authorization: Bearer hpk_your_api_key"
{
"order": {
"id": "HP-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.78,
"total_usd": 263.4,
"status": "active",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:40:02.511Z"
}
}Proxy-Benutzernamen erstellen
GET/api/v1/proxy-userAPI-Schlüssel nötig
Liefert einen Proxy-Benutzernamen mit Ihren Optionen sowie HTTP- und SOCKS5-URLs, die Sie direkt einfügen können. Ohne session wechselt die IP bei jeder Anfrage.
| Feld | Typ | Bedeutung |
|---|---|---|
productOptional | string | Einer von unlimited, residential, isp, datacenter. Leer bedeutet unlimited. |
countryOptional | string | Ein zweistelliger Ländercode wie jp. |
cityOptional | string | Ein Städtewert aus /countries wie tokyo. Funktioniert nur zusammen mit country. |
sessionOptional | string | 1~32 Buchstaben oder Ziffern. Anfragen mit derselben session nutzen dieselbe IP. |
ttlOptional | integer | Wie viele Minuten die Session-IP gehalten wird, 1~60. Leer bedeutet 30. |
curl "https://hiproxy.shop/api/v1/proxy-user?product=residential&country=jp&city=tokyo&session=job42&ttl=30" \ -H "Authorization: Bearer hpk_your_api_key"
{
"username": "hpexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30",
"password": "your_password",
"http": "http://hpexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.hiproxy.shop:6100",
"socks5": "socks5h://hpexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.hiproxy.shop:6200"
}Beispiel Schritt für Schritt
Ein Skript, das den Preis prüft, vom Guthaben bestellt und sich über eine japanische IP verbindet.
import requests
API = "https://hiproxy.shop/api/v1"
HEAD = {"Authorization": "Bearer hpk_your_api_key"}
# 1) Check the price first
plan = {"product": "residential", "quantity": 100}
print(requests.post(f"{API}/quote", json=plan).json())
# 2) Order from your balance
r = requests.post(f"{API}/orders", json=plan, headers=HEAD)
order = r.json()["order"]
print(order["id"], order["status"])
# 3) Get a username for Japanese IPs
u = requests.get(f"{API}/proxy-user", headers=HEAD,
params={"product": "residential", "country": "jp"}).json()
proxies = {"http": u["http"], "https": u["http"]}
print(requests.get("https://ipinfo.io/json", proxies=proxies, timeout=30).json())const API = "https://hiproxy.shop/api/v1";
const HEAD = { Authorization: "Bearer hpk_your_api_key", "Content-Type": "application/json" };
// Check the balance
const acc = await fetch(`${API}/account`, { headers: HEAD }).then((r) => r.json());
console.log(acc.balance_usd);
// Order 7 days of unlimited
const res = await fetch(`${API}/orders`, {
method: "POST",
headers: HEAD,
body: JSON.stringify({ product: "unlimited", quantity: 7, concurrency: 500, bandwidth: 100 }),
});
if (res.status === 402) console.log("Top up first");
else console.log((await res.json()).order.id);Über die API aufgegebene Bestellungen werden genauso behandelt wie Bestellungen im Dashboard und erscheinen im Tab Verlauf. Ersetzen Sie hpk_your_api_key in den Beispielen durch Ihren eigenen API-Schlüssel.