# HTTP-API Die Schnittstelle zwischen Client und Manage-Server, Protokoll v1. Wer den mitgelieferten Client übernimmt, braucht dieses Kapitel nicht – es ist für eigene Clients, für Debugging und für die Fehlersuche mit `curl` gedacht. Basis-URL dieser Installation: `{{BASE_URL}}/api/v1` ## Die vier Endpunkte | Methode | Pfad | Zweck | |---|---|---| | `GET` | `/manifest.php` | Welches Release soll installiert werden | | `GET` | `/package.php?version=vX.Y.Z` | Das Release-ZIP | | `POST` | `/backup.php` | Backup-Archiv hochladen (`multipart/form-data`) | | `POST` | `/heartbeat.php` | Status melden, Update-Information erhalten | Jede Anfrage trägt zwei Header: ```http X-Manage-Instance: meinprojekt-prod X-Manage-Token: e4032c4dc51e9100… ``` Es gibt keine Sitzung, kein Cookie und kein gemeinsames Passwort. Der Server speichert nur den SHA-256-Hash des Tokens und vergleicht in konstanter Zeit. ## Wo was steht - **Beschreibung mit Beispielaufrufen**, Fehlerfällen und den Regeln, an die sich ein eigener Client halten muss: [08_PROTOCOL.md](08_PROTOCOL.md). - **Maschinenlesbar**, als OpenAPI 3.1: <{{SELF_URL}}/openapi.php>. Enthält Schemata für alle Antworten, die Fehlercodes und die Muster für Version, Dateiname und Prüfsumme. - **Zum Nachschlagen und Ausprobieren** im Browser: [Swagger UI]({{SELF_URL}}/api.php). „Try it out“ spricht diese Installation an und braucht eine gültige Instanz samt Token. - **Als Referenzimplementierung**: `manage-client/lib/client.php` baut die Anfragen, `lib/updater.php` und `lib/backup.php` benutzen sie.