ProxyWorld API

Was Sie im Dashboard tun, können Sie auch per Code erledigen. Guthaben lesen, Preise prüfen, aus dem Guthaben bestellen und Proxy-Benutzernamen mit Optionen abrufen, alles über eine REST API.

Neu hier? So starten Sie

  1. 1Registrieren Sie sich mit E-Mail und Passwort oder mit einem Token und öffnen Sie das Dashboard.
  2. 2Erstellen Sie im Tab Verbindung einen API-Schlüssel. Der vollständige Schlüssel wird nur einmal angezeigt, direkt beim Erstellen. Speichern Sie ihn also sofort.
  3. 3Setzen Sie den Schlüssel in den Authorization-Header jeder Anfrage, die einen braucht.
  4. 4Rufen Sie zuerst /account auf, um zu prüfen, ob der Schlüssel akzeptiert wird, und bestellen Sie dann über /orders.

Wie funktioniert die Authentifizierung?

Anfragen, die Ihr eigenes Konto betreffen (account, orders, proxy-user), brauchen einen API-Schlüssel. Senden Sie ihn im Header als Authorization: Bearer pwk_... Preise, Länder und Preisangebote sind öffentlich und ohne Schlüssel abrufbar.

Die ProxyWorld-Server speichern nie den Schlüssel selbst, nur einen Hash davon. Wenn Sie einen Schlüssel verlieren, erstellen Sie im Dashboard einen neuen, der alte wird sofort gesperrt. Verwenden Sie Schlüssel nur in serverseitigem Code. Landet ein Schlüssel in Code, der im Browser läuft, oder in einem öffentlichen Repository, kann jemand anderes ihn nutzen.

HTTP header
Authorization: Bearer pwk_your_api_key

Basis-URL und Datenformat

Basis-URL
https://proxyworld.shop/api/v1
Request- und Response-Body
application/json
Beträge
USD als Zahl, zum Beispiel 1058.50
Zeitstempel
ISO 8601 (UTC)

Wie viele Aufrufe sind möglich?

Jeder API-Schlüssel kann 60 Aufrufe pro Minute ausführen. Öffentliche Endpunkte ohne Schlüssel erlauben 60 Aufrufe pro Minute und IP. Darüber erhalten Sie HTTP 429. Warten Sie etwa eine Minute und versuchen Sie es dann erneut.

Was kommt bei einem Fehler zurück?

Sie erhalten einen HTTP-Statuscode und einen JSON-Body mit einem kurzen Fehlercode und einer Erklärung.

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 es wurde ein Wert gesendet, den dieses Produkt nicht akzeptiert.
unauthorizedHTTP 401Der API-Schlüssel fehlt oder ist ungültig.
insufficient_balanceHTTP 402Ihr Guthaben ist geringer als der Bestellbetrag. Es wurde nichts abgebucht.
not_foundHTTP 404Ihr Konto hat keine Bestellung mit dieser Nummer.
rate_limitedHTTP 429Sie haben die erlaubte Anzahl an Aufrufen pro Minute überschritten.
server_errorHTTP 500Der Server konnte die Anfrage nicht abschließen. Es wurde nichts abgebucht.

Endpunkte

Konto anzeigen

GET/api/v1/accountAPI-Schlüssel nötig

Liefert die Anmeldeart (login: email oder token), Ihre E-Mail, Guthaben, Proxy-Host und Ports, Proxy-Benutzername und Passwort sowie die freigegebenen IPs. Bei Konten, die mit einem Token erstellt wurden, ist email null.

Anfrage
curl https://proxyworld.shop/api/v1/account \
  -H "Authorization: Bearer pwk_your_api_key"
Antwort
{
  "login": "email",
  "email": "you@example.com",
  "balance_usd": 1300,
  "proxy": {
    "host": "gate.proxyworld.shop",
    "http_port": 6100,
    "socks5_port": 6200,
    "username": "pwexample1",
    "password": "your_password"
  },
  "allowed_ips": [
    "203.0.113.10"
  ]
}

Produkte und Preise anzeigen

GET/api/v1/productsOhne Schlüssel nutzbar

Liefert den Bestellbereich für jedes Produkt, den Preis pro Einheit für jede Mengenstufe und die Laufzeitrabatte. Es gilt dieselbe Preistabelle wie auf der Preisseite.

Anfrage
curl https://proxyworld.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

GET/api/v1/countriesOhne Schlüssel nutzbar

Liefert die wählbaren Länder für jedes Produkt sowie die Stadtwerte für die Option -city- im Benutzernamen.

NameBedeutung
productOptionalEiner von unlimited, residential, isp, datacenter. Ohne Angabe wird residential verwendet.
Anfrage
curl "https://proxyworld.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/quoteOhne Schlüssel nutzbar

Berechnet den Bestellbetrag, ohne Ihr Guthaben zu belasten. Senden Sie denselben Body wie bei der Bestellung.

NameBedeutung
productPflichtEiner von unlimited, residential, isp, datacenter.
quantityPflichtBestellmenge: Tage bei unlimited (1~365), GB bei residential (5~5,000), Anzahl IPs bei isp (1~1,000) oder datacenter (5~5,000).
concurrencyOptionalNur unlimited. Einer von 200, 500, 1000, 2000.
bandwidthOptionalNur unlimited, in Mbps. Einer von 100, 200, 500, 1000.
monthsOptionalNur isp und datacenter. Einer von 1, 3, 6, 12.
countryOptionalNur isp und datacenter. Ein zweistelliger Ländercode wie jp. Die zulässigen Werte stehen in /countries.
Anfrage
curl -X POST https://proxyworld.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.05,
  "unit": "day",
  "total_usd": 241.5
}

Bestellung aufgeben

POST/api/v1/ordersAPI-Schlüssel nötig

Bucht den Betrag von Ihrem Guthaben ab und legt die Bestellung an. Sie beginnt als pending (wird aktiviert) und wechselt zu active, sobald sie bereit ist. Eine Bestellung, die nicht aktiviert werden kann, wird refunded, und alles, was Sie bezahlt haben, geht zurück auf Ihr Guthaben. Ist Ihr Guthaben zu niedrig, erhalten Sie 402.

NameBedeutung
productPflichtEiner von unlimited, residential, isp, datacenter.
quantityPflichtBestellmenge: Tage bei unlimited (1~365), GB bei residential (5~5,000), Anzahl IPs bei isp (1~1,000) oder datacenter (5~5,000).
concurrencyOptionalNur unlimited. Einer von 200, 500, 1000, 2000.
bandwidthOptionalNur unlimited, in Mbps. Einer von 100, 200, 500, 1000.
monthsOptionalNur isp und datacenter. Einer von 1, 3, 6, 12.
countryOptionalNur isp und datacenter. Ein zweistelliger Ländercode wie jp. Die zulässigen Werte stehen in /countries.
Anfrage
curl -X POST https://proxyworld.shop/api/v1/orders \
  -H "Authorization: Bearer pwk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'
Antwort
{
  "order": {
    "id": "PW-7KQ2M-X4HTD",
    "product": "unlimited",
    "quantity": 30,
    "months": null,
    "concurrency": 1000,
    "bandwidth_mbps": 200,
    "country": null,
    "unit_price_usd": 8.05,
    "total_usd": 241.5,
    "status": "pending",
    "created_at": "2026-10-31T09:12:44.120Z",
    "updated_at": "2026-10-31T09:12:44.120Z"
  },
  "balance_usd": 1058.5
}

Bestellungen anzeigen

GET/api/v1/ordersAPI-Schlüssel nötig

Zeigt bis zu 100 Bestellungen, die neuesten zuerst.

NameBedeutung
statusOptionalEiner von pending, active, refunded. Ohne Angabe erhalten Sie Bestellungen mit jedem Status.
Anfrage
curl "https://proxyworld.shop/api/v1/orders?status=pending" \
  -H "Authorization: Bearer pwk_your_api_key"
Antwort
{
  "orders": [
    {
      "id": "PW-7KQ2M-X4HTD",
      "product": "unlimited",
      "quantity": 30,
      "months": null,
      "concurrency": 1000,
      "bandwidth_mbps": 200,
      "country": null,
      "unit_price_usd": 8.05,
      "total_usd": 241.5,
      "status": "pending",
      "created_at": "2026-10-31T09:12:44.120Z",
      "updated_at": "2026-10-31T09:12:44.120Z"
    }
  ]
}

Eine Bestellung anzeigen

GET/api/v1/orders/{id}API-Schlüssel nötig

Liefert die Bestellung zu einer Bestellnummer. Praktisch, um zu prüfen, ob die Aktivierung abgeschlossen ist.

NameBedeutung
idPflichtDie Bestellnummer, zum Beispiel PW-7KQ2M-X4HTD.
Anfrage
curl https://proxyworld.shop/api/v1/orders/PW-7KQ2M-X4HTD \
  -H "Authorization: Bearer pwk_your_api_key"
Antwort
{
  "order": {
    "id": "PW-7KQ2M-X4HTD",
    "product": "unlimited",
    "quantity": 30,
    "months": null,
    "concurrency": 1000,
    "bandwidth_mbps": 200,
    "country": null,
    "unit_price_usd": 8.05,
    "total_usd": 241.5,
    "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.

NameBedeutung
productOptionalEiner von unlimited, residential, isp, datacenter. Ohne Angabe wird unlimited verwendet.
countryOptionalEin zweistelliger Ländercode, zum Beispiel jp.
cityOptionalEin Stadtwert aus /countries, zum Beispiel tokyo. Senden Sie country mit.
sessionOptional1~32 Buchstaben und Ziffern. Anfragen mit derselben session nutzen dieselbe IP.
ttlOptionalWie lange die Session ihre IP hält, 1~60 Minuten. Ohne Angabe 30 Minuten.
Anfrage
curl "https://proxyworld.shop/api/v1/proxy-user?product=residential&country=jp&city=tokyo&session=job42&ttl=30" \
  -H "Authorization: Bearer pwk_your_api_key"
Antwort
{
  "username": "pwexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30",
  "password": "your_password",
  "http": "http://pwexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyworld.shop:6100",
  "socks5": "socks5h://pwexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyworld.shop:6200"
}

Vollständiges Beispiel

Ein einzelnes Skript, das ein Preisangebot abruft, aus dem Guthaben bestellt und sich dann über eine IP in Japan verbindet.

Python (requests)
import requests

API = "https://proxyworld.shop/api/v1"
HEAD = {"Authorization": "Bearer pwk_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://proxyworld.shop/api/v1";
const HEAD = { Authorization: "Bearer pwk_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 wie Dashboard-Bestellungen behandelt und erscheinen ebenfalls im Tab Verlauf. Ersetzen Sie pwk_your_api_key in den Beispielen durch Ihren eigenen API-Schlüssel.

ProxyWorld mit Ihrem Code verbinden

Registrieren Sie sich per E-Mail oder Token, erstellen Sie im Dashboard einen API-Schlüssel, und Sie können sofort loslegen.