Projekte und Deployment
Ein Projekt ist eine fertige App. Was in einer Session entstanden ist, wird als Projekt festgeschrieben, deployt und bei Problemen zurückgerollt.
Auflisten und Anlegen
| Methode | Pfad | Funktion |
|---|---|---|
GET | /api/projects | Alle für mich sichtbaren Projekte |
POST | /api/projects | Neues Projekt (im Body name, template — beide optional) |
POST | /api/projects/{id}/fork | Bestehendes Projekt duplizieren (im Body name) |
POST | /api/projects/{id}/open | Bearbeitungssession öffnen und deren Session-Informationen erhalten |
Name und Sichtbarkeit
| Methode | Pfad | Body |
|---|---|---|
PATCH | /api/projects/{id} | { "name": "새 이름" } |
PATCH | /api/projects/{id} | { "access": "public" } oder "private" |
DELETE | /api/projects/{id} | — |
public bedeutet, dass jeder, der in Studio angemeldet ist, das Projekt sehen kann. Von der Authentifizierung selbst befreit es nicht.
Deployment
| Methode | Pfad | Funktion |
|---|---|---|
POST | /api/projects/{id}/deploy | Aktuellen Stand deployen. Eine neue Versionsnummer wird vergeben |
GET | /api/projects/{id}/deploys | Deployment-Historie |
POST | /api/projects/{id}/rollback | Auf eine frühere Version zurücksetzen (im Body version) |
POST | /api/projects/{id}/stop | Deployment stoppen |
Da Deployments versioniert aufeinander aufbauen, ist ein Rollback nicht destruktiv — auch nach dem Zurücksetzen bleiben die späteren Versionen in der Historie erhalten.
Runtime
| Methode | Pfad | Funktion |
|---|---|---|
GET | /api/projects/{id}/runtime | Ausführungsstatus |
GET | /api/projects/{id}/runtime/logs?tail={n} | Letzte n Zeilen des Logs (Standard 200) |
POST | /api/projects/{id}/runtime/restart | Neustart |
Export
| Methode | Pfad | Funktion |
|---|---|---|
GET | /api/projects/{id}/deploy-bundle?version={n} | Deployment-Bundle herunterladen |
GET | /api/projects/{id}/image-push/preview | Prüfung vor dem Image-Push |
POST | /api/projects/{id}/image-push | Push in eine Container-Registry (im Body version) |
POST | /api/projects/{id}/git-push | Push in ein Git-Repository |
POST | /api/projects/{id}/save-template | Als Vorlage speichern (im Body name, category) |
Für die Übertragung in ein Air-Gap-Netzwerk ist es einfacher, das Deployment-Bundle herunterzuladen und einzuspielen, als Images zu pushen.
Dokumentation
GET /api/projects/{id}/doc
Sie erhalten eine aufbereitete Dokumentation darüber, was die App leistet. Sie wurde vom Agenten während der Erstellung mitgeschrieben.