Grundlagen
| Basis-URL | https://lowcostgpu.com/v1 |
|---|---|
| Auth | Authorization: Bearer pg_live_… |
| Format | JSON rein, JSON raus, UTF-8. Fehler: {"error":{"code","message"}} |
| Ratenbegrenzung | 120 Anfragen/Min. (steigt automatisch mit dem Kontoverlauf) – danach 429 + Retry-After |
Öffentliche Endpunkte – jetzt ausprobieren
GET /v1/gpus/pricing
Die vollständige Preisliste als Daten: alle 83 Modelle, jeweils drei Modi, Marktmediane und die Preisregel selbst.
curl https://lowcostgpu.com/v1/gpus/pricing{
"object": "gpu_pricing",
"currency": "USD",
"billing": "per_second",
"price_rule": "market_median * 0.70, rounded down; …",
"market_snapshot": "2026-10-19",
"data": [
{
"slug": "h100-sxm",
"name": "NVIDIA H100 SXM",
"vram_gb": 80,
"price_per_gpu_hour": {
"on_demand": 1.680,
"interruptible": 0.840,
"reserved": 1.092
},
"market_median": 2.4001,
"available_gpus": 50
}, …
]
}GET /v1/offers
Live-Maschineninventar. Filter: gpu (Slug), region, num_min, price_max ($/Std. für die gesamte Maschine), limit (≤100).
curl "https://lowcostgpu.com/v1/offers?gpu=rtx-4090&num_min=2&limit=3"Authentifizierte Endpunkte
Erstellen Sie einen Schlüssel unter Konsole → API-Schlüssel (Dokumentation), dann:
GET /v1/balance
curl -H "Authorization: Bearer " https://lowcostgpu.com/v1/balance
{ "object": "balance", "currency": "USD", "balance": 41.2183, "month_spend": 12.8402 }POST /v1/instances
Auf einer Maschine aus /v1/offers bereitstellen. Body: machine_id (erforderlich), template, disk_gb, type (od | interruptible | res).
curl -X POST -H "Authorization: Bearer " \
-H "Content-Type: application/json" \
-d '{"machine_id":"m-1d29c04a","template":"vllm","disk_gb":80,"type":"od"}' \
https://lowcostgpu.com/v1/instances
{ "object": "instance", "id": "i-52ab77c1", "status": "running",
"hostname": "i-52ab77c1.lowcostgpu.com", "price_hr": 1.5983, … }GET /v1/instances · GET /v1/instances/{id}
Aktive Instanzen auflisten / eine einzelne abrufen (Status, Preis, Hostname, Zeitstempel). Die Abrechnung erfolgt beim Lesezugriff, die Zahlen sind daher sekundengenau aktuell.
POST /v1/instances/{id}/actions
-d '{"action":"stop"}' # or start | destroyDELETE /v1/instances/{id}
Alias für die Aktion „destroy“. Der Instanzdatenträger wird gelöscht; angehängte Volumes bleiben erhalten.
Fehler
| Status | Code | Bedeutung |
|---|---|---|
| 401 | unauthorized | Fehlender oder unbekannter Bearer-Schlüssel |
| 404 | not_found / no_route | Unbekannte Instanz oder unbekannter Endpunkt |
| 409 | deploy_failed / action_failed | Geschäftsregel hat abgelehnt – die Meldung nennt den Grund (Guthaben, Kapazität, Status) |
| 422 | missing_machine / bad_action | Struktur der Anfrage ist fehlerhaft |
| 429 | rate_limited | Verlangsamen; Retry-After beachten |
Bevorzugen Sie einen Wrapper? Die CLI und das Python SDK decken diese API eins zu eins ab.