Zum Hauptinhalt springen

API-Übersicht

Der Studio-Server stellt dieselbe REST-API bereit, die auch die Weboberfläche verwendet. Dieses Dokument richtet sich an Integrationsentwickler, die die API direkt aufrufen möchten.

Basisadresse​

Die Studio-API lautet /api/v1.

https://<studio-host>/api/v1/...

Auch der alte Pfad /api/... funktioniert weiterhin (Alias). Beispiele in diesem Dokument, die noch mit /api/... angegeben sind, können weiterhin verwendet werden. Für neuen Code verwenden Sie jedoch /api/v1.

Nicht mit dem v5 der Plattform verwechseln

Es handelt sich nicht um zwei Versionen derselben API, sondern um unterschiedliche Produkte mit unterschiedlichen Listenern.

WasPfad
Studio-APIDie API des Studios selbst (dieses Dokument)/api/v1
Plattform-APIEin Proxy, den von Studio erstellte Apps auf ihrer eigenen Herkunft aufrufen/api/v5

Authentifizierung​

Senden Sie das Sitzungstoken als Header.

Authorization: Bearer <token>

Wenn das Token fehlt oder abgelaufen ist, gibt der Server 401 zurück. Die Weboberfläche löscht bei 401 das gespeicherte Token und kehrt zum Anmeldebildschirm zurück. Bei direkten Aufrufen wird dasselbe Vorgehen empfohlen – 401 lässt sich nicht durch erneutes Senden beheben.

Antwortformat​

Erfolgreiche Antworten werden in einer data-Hülle geliefert.

{
"data": { "id": "prj_01H...", "name": "라인 모니터" }
}

Fehlerantworten enthalten ein errors-Array. Das message des ersten Eintrags ist die für Menschen lesbare Meldung.

{
"errors": [
{ "code": "project_not_found", "message": "프로젝트를 찾을 수 없습니다." }
]
}

Für den Client ist es sicher, den HTTP-Status zusammen mit errors[0].message zu betrachten. Es gibt Fälle, in denen der Server keine Meldung liefert; nur dann verwendet die Weboberfläche ihren eigenen Ersatztext.

Streaming-Ereignisse​

Der Fortschritt, während der Agent arbeitet, wird per Streaming übertragen. Dazu gehören Konversationen (/api/session/{id}/message, /api/ask) und Benachrichtigungen (/api/notifications/stream).

Es gibt sieben Arten von Ereignissen.

typeEnthaltener WertBedeutung
assistant_texttextTextfragment, das der Agent geschrieben hat
tool_callname, inputEin Werkzeug wurde aufgerufen
tool_resultname, ok, summaryWerkzeugergebnis. ok gibt an, ob erfolgreich
file_changepathEine Datei wurde geändert
commithash, messageDie Änderung wurde committet
done—Diese Runde ist beendet
errormessageFehler während der Verarbeitung

Lesen Sie, bis done oder error eintrifft.

Anhänge​

Anhänge wie Bilder werden als base64 inline übertragen.

{
"name": "설비사진.png",
"mime": "image/png",
"dataBase64": "iVBORw0KGgo..."
}

Dokumentationsstruktur​

DokumentBehandelt
SitzungLebenszyklus von Arbeitssitzungen, Dateien, Verlauf, Rückgängig
Projekte und BereitstellungApp-Erstellung, Bereitstellung, Rollback, Laufzeit
KonversationDialog mit dem Agenten, Abfrageverlauf
FähigkeitenRegistrierung, Extraktion und Import von Feld-Fähigkeiten
Plattform-IntegrationDatenbank der PlantPulse-Plattform, semantische Suche
VerwaltungEinstellungen, Benutzer, Wächter, Audit, Benachrichtigungen