Backup per API zurückspielen
Mit der Hosting-API spielst du ein Backup deiner WordPress-Website zurück, auch aus einer Pipeline. Das überschreibt die Website mit dem Stand des Backups. Alles, was nach dem Backup geschrieben wurde, geht verloren. Deshalb braucht der Aufruf ein eigenes Recht, einen ausdrücklichen Umfang und die Bestätigung des Hosts. Nichts davon hat einen Standardwert.
Voraussetzungen
- Ein Token mit dem Recht
backups:restorefür die Website. Das Recht steht nicht in der Schnellauswahl des Formulars und ist nie vorausgewählt, siehe API-Token für dein Hosting erstellen und widerrufen. - Die ID des Backups aus
turbopress backups list --site SITE_ID. Es muss ein Backup dieser Installation sein. Backups einer Staging-Kopie spielst du über die Staging-Site zurück. - Ein freier Platz in deinem Backup-Limit. Die API legt vor dem Zurückspielen immer ein Sicherheitsbackup an. Ist das Limit erreicht, lehnt sie ab (
backup_limit_reached). Entferne dann zuerst ein altes Backup, siehe Backups per API anzeigen und löschen.
Zurückspielen
turbopress backups restore --site SITE_ID --backup BACKUP_ID --scope full --confirm-host beispiel.de --wait
--confirm-host ist der genaue Host der Website, auf der zurückgespielt wird. Weicht er ab, passiert nichts (confirmation_mismatch).
Der Umfang --scope ist Pflicht:
| Umfang | Was passiert |
|---|---|
full |
Das ganze Backup wird zurückgespielt. |
database |
Nur die Datenbank. |
files |
Nur die Dateien. Neuere Dateien bleiben bestehen, wp-config.php wird nie ersetzt. |
folder |
Ein einzelner Ordner (--folder wp-content/uploads, wp-content/plugins/<slug> oder wp-content/themes/<slug>). Der Ordner wird auf den Stand des Backups gespiegelt. Dateien, die im Backup fehlen, werden in diesem Ordner gelöscht. |
Ist auf der Website WooCommerce aktiv, verlangt die API bei full und database zusätzlich --confirm-data-loss. Bestellungen und Kunden, die nach dem Backup entstanden sind, gehen dabei verloren. Kann die API die Plugin-Liste nicht lesen, gilt WooCommerce als aktiv.
Was dabei passiert
- Die API prüft Token, Recht, Website, Backup und Bestätigung. Danach läuft der Auftrag im Hintergrund und kann mehrere Minuten dauern.
- Sie legt immer ein Sicherheitsbackup an. Schlägt das fehl oder wird es nicht rechtzeitig fertig, wird nichts zurückgespielt, und der Auftrag meldet das.
- Erst danach wird zurückgespielt. Bei den Teil-Umfängen folgt eine Funktionsprüfung der Website.
Das Ergebnis nennt den Dateinamen des Sicherheitsbackups (safety_backup). Es gibt kein automatisches Rollback. Willst du das Zurückspielen rückgängig machen, spielst du das Sicherheitsbackup selbst zurück.
Ergebnis lesen
succeeded: Beifullhat WordPress Toolkit das Zurückspielen als beendet gemeldet, bei den Teil-Umfängen ist der Import fertig und die Funktionsprüfung hat geantwortet. Stehthealth_checkaufissue_found, ist die Website zurückgespielt, die Prüfung hat danach aber ein Problem gefunden. Die CLI beendet sich dann mit Exitcode 0 und warnt auf stderr. Schau dir die Website an.- Ein
full-Restore kann noch laufen, wenn der Auftrag schon zurückmeldet. Der Status bleibt dannrunning, und die API fragt den Vorgang bis zu 30 Minuten lang ab. failed: Meist wurde nichts geändert, etwa beiconfirmation_mismatch,woo_confirmation_missingoderbackup_limit_reached. Nur beirestore_failedkann die Website teilweise zurückgespielt sein. Das Ergebnis nennt dann das Sicherheitsbackup.unknown: Der Ausgang ist nicht belegt. Die Website bleibt für weitere Änderungen gesperrt, bis der Support den Ausgang geklärt hat. Die CLI beendet sich mit Exitcode 4. Siehe Hosting-API: 401, 403, 429, Timeout und unbekannter Jobstatus beheben.
Grenzen
- Pro Tag sind drei Voll- und drei Teil-Rückspielungen möglich. Der Zähler gilt gemeinsam mit dem KI-Zugriff.
- Pro Konto und pro Hosting-Paket läuft höchstens ein solcher Auftrag. Läuft gerade etwas anderes auf dem Paket, endet der Aufruf mit
site_busy. Warte einige Minuten und starte ihn mit einem neuenIdempotency-Keyerneut. - Ein Widerruf des Tokens hält einen wartenden Auftrag auf. Ein bereits laufendes Zurückspielen bricht er nicht ab.
Weitere Anleitungen
API-Token für dein Hosting erstellen und widerrufen · Backups per API anzeigen und löschen · WordPress-Updates und Staging per API steuern · Staging per API anlegen und nach Live übernehmen · Hosting-API: 401, 403, 429, Timeout und unbekannter Jobstatus beheben · turbopress CLI installieren und einrichten