Zugang & Freigaben
Nicht jeder Reseller bekommt automatisch alle Produktfamilien. Freigaben erfolgen gezielt — bei Bewerbung, per Ticket oder später im Admin.
1
Start
In der Bewerbung nur die Familien wählen, die du brauchst — oder wir schalten sie manuell für deinen Kundenaccount frei.
2
Später erweitern
Weitere Funktionen (z. B. Dedicated oder Domains) einfach per Ticket anfragen. Wir schalten sie nach Prüfung frei.
3
API prüft
Ohne Freigabe: 403 RESELLER_FAMILY_FORBIDDEN. GET /me zeigt deine aktiven Familien.
| Code | Produkt | Hinweis |
|---|---|---|
| plesk | Webspace / Plesk-Reseller | Plesk-Reseller-Accounts und Webspaces für Endkunden. |
| vps | V-Server | Virtualisierte Server (VPS) zum Weiterverkauf. |
| root | Root-Server | Root-Server / leistungsstarke VPS-Varianten. |
| dedicated | Dedicated Server | Bare-Metal: HosterAPI-Marktplatz + FameSystems-Outlet — Reseller → NexoraHost → Upstream nach Zahlung. |
| domains | Domains | Domain-Registrierung, Transfer und Verlängerung. |
Relay-Modell
Du sprichst nur NexoraHost an. HosterAPI, FameSystems Outlet und Domain-Provider werden nie direkt kontaktiert — wir leiten nach Zahlung weiter.
Dein System
HTTPS + Bearer nxr_…
NexoraHost API
/api/v1/reseller
dedicated.market.{id}→ HosterAPI (nach Zahlung)dedicated.outlet.{sku}→ FameSystems Outlet (nach Zahlung + Trust)- Plesk / VPS / Root / Domains → interne Provisionierung
Authentication
Jeder Request braucht einen gültigen Reseller-API-Key.
Authorization: Bearer nxr_************************
# Alternative:
X-Reseller-Token: nxr_************************
Keys erzeugst du im Kundenportal nach Freigabe. Der Klartext wird nur einmal angezeigt.
Quickstart
- Reseller-Zugang freigeschaltet (Bewerbung oder Admin)
- API-Key im Kundenportal erzeugen
GET /me— freigeschaltete Familien prüfenGET /catalog/{family}— Produkte ladenPOST /orders/quote→POST /orders— Quote, dann Order
| Base URL | https://new.nexorahost.com/api/v1/reseller |
| Content-Type | application/json |
| Money | Cent als Integer · 1499 = 14,99 EUR |
| Success | { "data": … } |
| Error | { "error": { "code", "message" } } |
Endpoints
Klicke einen Endpoint für Details und curl-Beispiel.
Profil + freigeschaltete Produktfamilien.
curl -s https://new.nexorahost.com/api/v1/reseller/me -H "Authorization: Bearer $TOKEN" | jq
{
"data": {
"slug": "acme-hosting",
"status": "active",
"product_families": ["vps", "domains"],
"discount_percent": 0,
"rate_limit_per_minute": 120
}
}
Katalog nur für freigeschaltete Familien.
curl -s https://new.nexorahost.com/api/v1/reseller/catalog -H "Authorization: Bearer $TOKEN" | jq '.data.families'
Families: plesk, vps, root, dedicated, domains.
Ohne Freigabe: 403 RESELLER_FAMILY_FORBIDDEN
curl -s https://new.nexorahost.com/api/v1/reseller/catalog/vps -H "Authorization: Bearer $TOKEN" | jq '.data.products[0]'
OS-Templates für HosterAPI-Dedicated (Relay).
curl -s https://new.nexorahost.com/api/v1/reseller/dedicated/templates -H "Authorization: Bearer $TOKEN" | jq '.data.templates'
Unverbindliche Preisprüfung — kein Upstream-Kostenanfall.
curl -s https://new.nexorahost.com/api/v1/reseller/orders/quote \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"family":"vps","product_code":"vps.m","configuration":{"hostname":"vps-01","os":"debian-12"}}'
Order anlegen (awaiting_payment). Provisionierung erst nach Zahlung.
curl -s https://new.nexorahost.com/api/v1/reseller/orders \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"family":"domains","product_code":"domain.tld.de","configuration":{"fqdn":"beispielkunde.de","years":1},"idempotency_key":"ord-1"}'
Eigene Quotes/Orders. Query: ?limit=20
curl -s "https://new.nexorahost.com/api/v1/reseller/orders?limit=20" -H "Authorization: Bearer $TOKEN" | jq '.data.items'
curl -s https://new.nexorahost.com/api/v1/reseller/orders/018f… -H "Authorization: Bearer $TOKEN" | jq
Availability-Check (nur lesen). Familie domains nötig.
curl -s https://new.nexorahost.com/api/v1/reseller/domains/check \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"fqdn":"mein-shop.de"}'
Payload-Beispiele
Plesk
{
"family": "plesk",
"product_code": "plesk.webspace.business",
"configuration": { "domain": "kunde.example", "plan": "business" }
}
VPS / Root
{
"family": "vps",
"product_code": "vps.m",
"configuration": { "hostname": "vps-01", "os": "debian-12" }
}
Dedicated · Markt
{
"family": "dedicated",
"product_code": "dedicated.market.545",
"configuration": { "hostname": "dedi-01", "template": "Debian 12" }
}
Dedicated · Outlet
{
"family": "dedicated",
"product_code": "dedicated.outlet.SRV110",
"configuration": { "hostname": "dedi-01", "template": "Debian 12" }
}
Domains
{
"family": "domains",
"product_code": "domain.tld.com",
"configuration": { "fqdn": "shop.example.com", "years": 1 }
}
Order lifecycle
quoted— unverbindliches Angebotawaiting_payment— Order angelegtprovisioning— nach Zahlung, Relay läuftactive— Service bereitfailed/cancelled
Quote/Order starten keine Domain-Registrierung und kein Dedicated-Ticket — erst nach Zahlung.
Rate limit Standard: 120 req/min pro Key.
Errors
401 RESELLER_UNAUTHORIZED— Token / IP / Account403 RESELLER_FAMILY_FORBIDDEN— Familie nicht freigeschaltet → Ticket404 RESELLER_ORDER_NOT_FOUND422 RESELLER_ORDER_INVALID/RESELLER_QUOTE_FAILED503 RESELLER_DISABLED
Noch keinen Zugang?
Bewirb dich mit den Familien, die du brauchst — oder lass dir den Zugang als bestehender Kunde freischalten. Später erweiterbar per Ticket.