Wie fange ich an?
- 1Registrieren Sie sich und melden Sie sich im Dashboard an.
- 2Öffnen Sie Verbindung und erstellen Sie einen API-Schlüssel. Der vollständige Schlüssel wird nur einmal angezeigt, speichern Sie ihn also an einem sicheren Ort.
- 3Senden Sie den Schlüssel im Authorization-Header mit jeder Anfrage, die ihn braucht.
- 4Rufen Sie /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 als Bearer-Token im Authorization-Header. Preise, Länder und Preisangebote sind öffentlich und brauchen keinen Schlüssel.
Wir speichern nur einen Hash des Schlüssels. Wenn Sie ihn verlieren, erstellen Sie im Dashboard einen neuen, und der alte Schlüssel funktioniert sofort nicht mehr. Halten Sie den Schlüssel aus Browser-Code und öffentlichen Repositories heraus.
Authorization: Bearer pdk_your_api_key
Basis-URL und Format
- Basis-URL
- https://proxyday.shop/api/v1
- Request- und Response-Body
- application/json
- Beträge
- USD als Zahl, zum Beispiel 807.90
- Zeit
- ISO 8601 (UTC)
Gibt es ein Rate Limit?
Jeder API-Schlüssel kann bis zu 60 Anfragen pro Minute senden. Öffentliche Endpunkte erlauben 60 Anfragen pro Minute und IP. Über dem Limit erhalten Sie HTTP 429. Warten Sie dann eine Minute und versuchen Sie es erneut.
Wie sehen Fehler aus?
Fehler werden mit dem HTTP-Statuscode und einem JSON-Body mit kurzem Code und einer Meldung zurückgegeben.
{
"error": {
"code": "insufficient_balance",
"message": "Your balance is too low for this order. Top up in the dashboard."
}
}| HTTP | code | Bedeutung |
|---|---|---|
| 400 | bad_request | Ein Wert fehlt oder ist für dieses Produkt nicht erlaubt. |
| 401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig. |
| 402 | insufficient_balance | Das Guthaben ist niedriger als die Bestellsumme. Es wurde nichts abgebucht. |
| 404 | not_found | Keine Bestellung mit dieser ID in Ihrem Konto. |
| 429 | rate_limited | Zu viele Anfragen in einer Minute. |
| 500 | server_error | Die Anfrage konnte nicht abgeschlossen werden. Es wurde nichts abgebucht. |
Endpunkte
Konto abrufen
GET/api/v1/accountAPI-Schlüssel
Gibt Ihr Guthaben, den Proxy-Host, Ports, Benutzername und Passwort sowie die freigegebenen IPs zurück.
curl https://proxyday.shop/api/v1/account \ -H "Authorization: Bearer pdk_your_api_key"
{
"email": "you@example.com",
"balance_usd": 1300,
"proxy": {
"host": "gate.proxyday.shop",
"http_port": 6100,
"socks5_port": 6200,
"username": "pdexample1",
"password": "your_password"
},
"allowed_ips": [
"203.0.113.10"
]
}Produkte und Preise auflisten
GET/api/v1/productsKein Schlüssel nötig
Gibt alle Produkte mit Limits, Preisstufen und Rabatten zurück. Die Preise stammen aus derselben Tabelle wie auf der Preisseite.
curl https://proxyday.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 nötig
Gibt die für ein Produkt verfügbaren Länder zurück, mit den Stadtwerten, die Sie in den Proxy-Benutzernamen schreiben können.
| Feld | Typ | Bedeutung |
|---|---|---|
productOptional | string | unlimited, residential, isp oder datacenter. Standard: residential. |
curl "https://proxyday.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 nötig
Berechnet die Summe einer Bestellung, ohne etwas abzubuchen. Verwenden Sie denselben Body wie beim Bestellen.
| Feld | Typ | Bedeutung |
|---|---|---|
productPflicht | string | unlimited, residential, isp oder datacenter. |
quantityPflicht | integer | Tage für unlimited (1~365), GB für residential (5~5,000), IPs für isp (1~1,000) oder datacenter (5~5,000). |
concurrencyOptional | integer | Nur unlimited: 200, 500, 1000 oder 2000. |
bandwidthOptional | integer | Nur unlimited, in Mbps: 100, 200, 500 oder 1000. |
monthsOptional | integer | Nur isp und datacenter: 1, 3, 6 oder 12. |
countryOptional | string | Nur isp und datacenter: zweistelliger Ländercode, zum Beispiel jp. Siehe /countries. |
curl -X POST https://proxyday.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.6,
"unit": "day",
"total_usd": 258
}Bestellung aufgeben
POST/api/v1/ordersAPI-Schlüssel
Bucht die Summe von Ihrem Guthaben ab und legt die Bestellung an. Neue Bestellungen starten mit pending (wird aktiviert) und wechseln zu active, sobald sie bereit sind. Kann eine Bestellung nicht aktiviert werden, wird sie zu refunded und der volle Betrag geht zurück auf Ihr Guthaben. Gibt 402 zurück, wenn das Guthaben zu niedrig ist.
| Feld | Typ | Bedeutung |
|---|---|---|
productPflicht | string | unlimited, residential, isp oder datacenter. |
quantityPflicht | integer | Tage für unlimited (1~365), GB für residential (5~5,000), IPs für isp (1~1,000) oder datacenter (5~5,000). |
concurrencyOptional | integer | Nur unlimited: 200, 500, 1000 oder 2000. |
bandwidthOptional | integer | Nur unlimited, in Mbps: 100, 200, 500 oder 1000. |
monthsOptional | integer | Nur isp und datacenter: 1, 3, 6 oder 12. |
countryOptional | string | Nur isp und datacenter: zweistelliger Ländercode, zum Beispiel jp. Siehe /countries. |
curl -X POST https://proxyday.shop/api/v1/orders \
-H "Authorization: Bearer pdk_your_api_key" \
-H "Content-Type: application/json" \
-d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'{
"order": {
"id": "PD-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.6,
"total_usd": 258,
"status": "pending",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:12:44.120Z"
},
"balance_usd": 1042
}Bestellungen auflisten
GET/api/v1/ordersAPI-Schlüssel
Gibt Ihre letzten 100 Bestellungen zurück, die neueste zuerst.
| Feld | Typ | Bedeutung |
|---|---|---|
statusOptional | string | pending, active oder refunded. Weglassen, um alle zu erhalten. |
curl "https://proxyday.shop/api/v1/orders?status=pending" \ -H "Authorization: Bearer pdk_your_api_key"
{
"orders": [
{
"id": "PD-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.6,
"total_usd": 258,
"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
Gibt eine Bestellung anhand ihrer ID zurück, zum Beispiel um zu prüfen, ob sie aktiv ist.
| Feld | Typ | Bedeutung |
|---|---|---|
idPflicht | string | Die Bestell-ID, zum Beispiel PD-7KQ2M-X4HTD. |
curl https://proxyday.shop/api/v1/orders/PD-7KQ2M-X4HTD \ -H "Authorization: Bearer pdk_your_api_key"
{
"order": {
"id": "PD-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.6,
"total_usd": 258,
"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
Gibt einen Proxy-Benutzernamen mit Ihren Optionen sowie fertige HTTP- und SOCKS5-Proxy-URLs zurück. Ohne session rotiert die IP bei jeder Anfrage.
| Feld | Typ | Bedeutung |
|---|---|---|
productOptional | string | unlimited, residential, isp oder datacenter. Standard: unlimited. |
countryOptional | string | Zweistelliger Ländercode, zum Beispiel jp. |
cityOptional | string | Stadtwert aus /countries, zum Beispiel tokyo. Erfordert country. |
sessionOptional | string | Beliebige 1~32 Buchstaben oder Ziffern. Anfragen mit derselben session behalten dieselbe IP. |
ttlOptional | integer | Minuten, die die Session-IP gehalten wird, 1~60. Standard: 30. |
curl "https://proxyday.shop/api/v1/proxy-user?product=residential&country=jp&city=tokyo&session=job42&ttl=30" \ -H "Authorization: Bearer pdk_your_api_key"
{
"username": "pdexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30",
"password": "your_password",
"http": "http://pdexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyday.shop:6100",
"socks5": "socks5h://pdexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyday.shop:6200"
}Vollständige Beispiele
Diese Beispiele prüfen den Preis, bestellen aus dem Guthaben und verbinden sich über eine japanische IP.
import requests
API = "https://proxyday.shop/api/v1"
HEAD = {"Authorization": "Bearer pdk_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://proxyday.shop/api/v1";
const HEAD = { Authorization: "Bearer pdk_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 sind dieselben wie Bestellungen aus dem Dashboard und erscheinen im Verlauf. Ersetzen Sie pdk_your_api_key durch Ihren eigenen Schlüssel.