Beam Bench Dokumentation

HTTP-API verwenden

Steuern Sie Beam Bench über jeden HTTP-Client. Dieselben Vorgänge wie bei der CLI, integrationsfreundlich.

Die HTTP- oder WebSocket-API von Beam Bench ist dieselbe Schnittstelle, mit der die CLI kommuniziert. Wenn Sie Beam Bench in einer Umgebung benötigen, die keine CLI verwendet, zum Beispiel in einer Web-App, einem Integrationsserver oder einer mobilen App, verwenden Sie die HTTP-API direkt.

Was Sie benötigen

  • Beam Bench installiert.
  • Die lokale API ist unter Edit → Settings → General aktiviert. Sie ist standardmäßig deaktiviert.
  • Einen HTTP-Client (curl, die HTTP-Bibliothek Ihrer Sprache, Postman usw.).

Prüfen, ob die API aktiviert ist

Die Standardwerte des aktuellen Builds sind absichtlich eingeschränkt:

  • Local API: aus.
  • API Port: 5900.
  • Allow network devices to connect: aus. Solange diese Option deaktiviert bleibt, akzeptiert der Server nur Verbindungen von diesem Computer.

Öffnen Sie die Desktop-App, wechseln Sie zu Edit → Settings → General und aktivieren Sie Local API. Lassen Sie Allow network devices to connect für Skripte auf demselben Computer ausgeschaltet. Die Einstellungen werden sofort wirksam.

Lesen Sie die HTTP-API-Seite, bevor Sie die API in einem gemeinsam genutzten WLAN an das Netzwerk binden. Die API verfügt über keine Authentifizierung und kann die Maschine bewegen und den Laser auslösen.

Basis-URL

http://localhost:5900/api/v1

(Oder die LAN-IP Ihrer Maschine statt localhost, wenn Allow network devices to connect aktiviert ist.)

Schritte

1. Prüfen, ob die API erreichbar ist

curl -s http://localhost:5900/api/v1/agent/capabilities | jq .

Liefert das Fähigkeitsschema zurück. (Ersetzen Sie 5900 durch Ihren konfigurierten Port, wenn Sie ihn geändert haben.)

2. Status untersuchen

curl -s http://localhost:5900/api/v1/agent/state | jq .

3. Ein Projekt öffnen

curl -s -X POST http://localhost:5900/api/v1/projects/open \
  -H 'Content-Type: application/json' \
  -d '{"path":"/abs/path/to/file.lzrproj"}'

4. Das Design über den laufenden Server rendern

curl -s -X POST http://localhost:5900/api/v1/design/render \
  -H 'Content-Type: application/json' \
  -d '{"format":"png","pixels_per_mm":4,"output_path":"/tmp/out.png"}'

5. Kamerastatus abrufen

curl -s http://localhost:5900/api/v1/camera/state | jq .

6. Kameraüberlagerung über das App-Frontend rendern

curl -s -X POST http://localhost:5900/api/v1/camera/overlay/render \
  -H 'Content-Type: application/json' \
  -d '{"output_path":"/tmp/overlay.png","view":"fit","keep":true}'

Verfügbare Endpunktgruppen

Die vollständige Schnittstelle finden Sie im Abschnitt API-Referenz, sobald dieser ausgefüllt ist. Wichtige Gruppen:

  • /agent, capabilities, state, guide.
  • /camera, devices, state, capture, overlay (display, transform, render), calibration, alignment.
  • /design, describe, render, transactions.
  • /projects, open, save, close, layers, objects, undo/redo, import.
  • /export, svg, dxf, pdf, eps, ai.

Sicherheit

Der API-Server verfügt über keine Authentifizierung. Er setzt voraus, dass das Netzwerk, in dem er sich befindet, vertrauenswürdig ist.

  • Die Bindung nur an Localhost begrenzt die Aussetzung auf den lokalen Computer.
  • Die Netzwerkbindung ist eine separate Opt-in-Option und öffnet die API für alle Geräte im selben LAN. Aktivieren Sie sie nur in einem vertrauenswürdigen Netzwerk.

Prüfen, ob es funktioniert hat

  • curl agent/capabilities gibt JSON zurück.
  • Ein Renderaufruf erzeugt die angeforderte Datei.

Verwandte Inhalte

On this page