Zum Inhalt springen

HiProxy API-Anleitung

Was Sie im Dashboard tun, können Sie auch aus Ihrem eigenen Code tun. Guthaben und Zugangsdaten ablesen, Preise prüfen, vom Guthaben bestellen und Proxy-Benutzernamen mit Optionen erstellen, alles über eine REST API.

Wie fange ich an?

  1. 1Registrieren Sie sich mit einem Benutzernamen und melden Sie sich im Dashboard an.
  2. 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.
  3. 3Senden Sie den Schlüssel im Authorization-Header jeder Anfrage, die ihn braucht.
  4. 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.

HTTP header
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.

Beispiel
{
  "error": {
    "code": "insufficient_balance",
    "message": "Your balance is too low for this order. Top up in the dashboard."
  }
}
code
bad_requestHTTP 400Ein Pflichtwert fehlt, oder dieses Produkt akzeptiert den Wert nicht.
unauthorizedHTTP 401Es 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.
not_foundHTTP 404Ihr Konto hat keine Bestellung mit dieser id.
rate_limitedHTTP 429Sie 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.

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.

Anfrage
curl https://hiproxy.shop/api/v1/account \
  -H "Authorization: Bearer hpk_your_api_key"
Antwort
{
  "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.

Anfrage
curl https://hiproxy.shop/api/v1/products
Antwort
{
  "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.

FeldBedeutung
productOptionalEiner von unlimited, residential, isp, datacenter. Leer bedeutet residential.
Anfrage
curl "https://hiproxy.shop/api/v1/countries?product=datacenter"
Antwort
{
  "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.

FeldBedeutung
productPflichtEiner von unlimited, residential, isp, datacenter.
quantityPflichtTage 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).
concurrencyOptionalNur für unlimited. Wählen Sie 200, 500, 1000 oder 2000.
bandwidthOptionalNur für unlimited, in Mbps. Wählen Sie 100, 200, 500 oder 1000.
monthsOptionalNur für isp und datacenter. Wählen Sie 1, 3, 6 oder 12.
countryOptionalNur für isp und datacenter. Ein Ländercode aus zwei Buchstaben wie jp. Gültige Werte stehen in /countries.
Anfrage
curl -X POST https://hiproxy.shop/api/v1/quote \
  -H "Content-Type: application/json" \
  -d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'
Antwort
{
  "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.

FeldBedeutung
productPflichtEiner von unlimited, residential, isp, datacenter.
quantityPflichtTage 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).
concurrencyOptionalNur für unlimited. Wählen Sie 200, 500, 1000 oder 2000.
bandwidthOptionalNur für unlimited, in Mbps. Wählen Sie 100, 200, 500 oder 1000.
monthsOptionalNur für isp und datacenter. Wählen Sie 1, 3, 6 oder 12.
countryOptionalNur für isp und datacenter. Ein Ländercode aus zwei Buchstaben wie jp. Gültige Werte stehen in /countries.
Anfrage
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}'
Antwort
{
  "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.

FeldBedeutung
statusOptionalEiner von pending, active, refunded. Leer liefert Bestellungen mit jedem Status.
Anfrage
curl "https://hiproxy.shop/api/v1/orders?status=pending" \
  -H "Authorization: Bearer hpk_your_api_key"
Antwort
{
  "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.

FeldBedeutung
idPflichtDie Bestell-id, etwa HP-7KQ2M-X4HTD.
Anfrage
curl https://hiproxy.shop/api/v1/orders/HP-7KQ2M-X4HTD \
  -H "Authorization: Bearer hpk_your_api_key"
Antwort
{
  "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.

FeldBedeutung
productOptionalEiner von unlimited, residential, isp, datacenter. Leer bedeutet unlimited.
countryOptionalEin zweistelliger Ländercode wie jp.
cityOptionalEin Städtewert aus /countries wie tokyo. Funktioniert nur zusammen mit country.
sessionOptional1~32 Buchstaben oder Ziffern. Anfragen mit derselben session nutzen dieselbe IP.
ttlOptionalWie viele Minuten die Session-IP gehalten wird, 1~60. Leer bedeutet 30.
Anfrage
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"
Antwort
{
  "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.

Python (requests)
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())
Node.js 18+
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.

HiProxy aus Ihrem eigenen Code aufrufen

Mit einem Benutzernamen registrieren, im Dashboard einen API-Schlüssel erzeugen, fertig.