Die Verwaltung von Kunden kann von Resellern per API vollständig automatisiert werden. Die Verwaltung verwendet dabei die "normalen" API-Keys für Accounts. Dieser kann entweder händisch angelegt werden (per Single-Sign-On für Reseller) oder es wird beim Erstellen des Kunden per Reseller-API der Parameter furnish_api_key
gesendet. Dann wird für den Kunden sofort ein API-Key mit allen Rechten erstellt und der API-Key in der Antwort zurückgegeben.
Ein solcher Ablauf könnte etwa so aussehen:
+----------------+
+-------------------+ Kunden-Daten | |
| | +----------------------> | Reseller-API |
| | UserID & API-Key | |
| Automation-Script | <----------------------+ +----------------+
| muss den API-Key |
| speichern | +----------------+
| | API-Request mit User-Key | |
| | +----------------------> | Usercp-API |
+-------------------+ <----------------------+ | |
+----------------+
Logge Dich mit dem Reseller-Account ein und öffne die API-Keys-Seite. Lege einen neuen API-Key an. Der API-Key muss die reseller.customers.admin
-Rechte haben.
Dieser API-Key wird für das Anlegen der Kunden verwendet.
Führe per Script den folgenden API-Call aus (Beispiel mit cURL - ersetze den RESELLERAPIKEY mit dem Key aus Schritt 1), um einen Kunden anzulegen:
curl 'https://www.lima-city.de/resellercp/customers' -H 'Content-Type: application/json' -u api:RESELLER_API_KEY --data '{"customer":{"hosting_type":"cloud","disk_space_gb":10,"mysql_space_gb":1,"mail_limit":100,"furnish_api_key":"1","username":"demouser1337","email":"kundenemail@example.de"}}'
Es wird dabei das folgende JSON zurückgegeben:
{
"status": "ok",
"object": {
"id": 386557,
"api_key": "HnyxDQCkB6NUJCd6a7X43qIygcLVJ9ZR"
}
}
Der API-Key, der in dieser Antwort zurückgesendet wird, ist der Management-API-Key für den Reseller. Der API-Key kann jederzeit über den Kunden-Account (per Single-Sign-In oder Login) geändert oder gelöscht werden.
Wichtig: ohne den Parameter furnish_api_key
wird kein API-Key für die Verwaltung des Kunden-Accounts angelegt - den brauchen wir aber für die weiteren Schritte!
Da wir nun einen API-Key (im Beispiel HnyxDQCkB6NUJCd6a7X43qIygcLVJ9ZR
) mit allen Rechten für den Kunden erstellt haben, können wir diesen normal nutzen. Benutze dazu wie gewohnt die lima-city API mit dem API-Key des Kunden.