Documentación de Beam Bench

Uso de la API HTTP

Controla Beam Bench desde cualquier cliente HTTP. Las mismas operaciones que la CLI, con facilidad de integración.

La API HTTP y WebSocket de Beam Bench es la misma superficie con la que se comunica la CLI. Si tienes un caso de uso que necesita Beam Bench en un entorno que no sea CLI, como una aplicación web, un servidor de integración o una aplicación móvil, usa directamente la API HTTP.

Lo que necesitas

  • Beam Bench instalado.
  • La API local activada en Editar → Ajustes → General. Viene desactivada de forma predeterminada.
  • Un cliente HTTP (curl, la biblioteca HTTP de tu lenguaje, Postman, etc.).

Verifica que la API está activada

Los valores predeterminados de la compilación actual están bloqueados deliberadamente:

  • API local: desactivada.
  • Puerto de API: 5900.
  • Permitir que se conecten dispositivos de red: desactivado. Mientras siga desactivado, el servidor solo acepta conexiones desde este ordenador.

Abre la aplicación de escritorio, ve a Editar → Ajustes → General y activa API local. Mantén desactivado Permitir que se conecten dispositivos de red para los scripts que se ejecuten en el mismo ordenador. Los ajustes surten efecto inmediatamente.

Lee la página de la API HTTP antes de enlazarla a la red en una Wi-Fi compartida. La API no tiene autenticación y puede mover la máquina y disparar el láser.

URL base

http://localhost:5900/api/v1

(O la IP LAN de tu máquina en lugar de localhost, cuando Permitir que se conecten dispositivos de red está activado.)

Pasos

1. Verifica que la API está activa

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

Devuelve el esquema de capacidades. Sustituye 5900 por el puerto configurado si lo has cambiado.

2. Inspecciona el estado

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

3. Abre un proyecto

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

4. Renderiza el diseño a través del servidor en ejecución

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. Obtén el estado de la cámara

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

6. Renderiza la superposición de cámara a través del frontend de la aplicación

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}'

Grupos de endpoints disponibles

Consulta la sección de referencia de la API, cuando esté completa, para ver toda la superficie. Grupos principales:

  • /agent, capacidades, estado, guía.
  • /camera, dispositivos, estado, captura, superposición, con visualización, transformación y renderizado, calibración, alineación.
  • /design, descripción, renderizado, transacciones.
  • /projects, abrir, guardar, cerrar, capas, objetos, deshacer y rehacer, importar.
  • /export, svg, dxf, pdf, eps, ai.

Seguridad

El servidor de la API no tiene autenticación. Da por supuesto que la red en la que se encuentra es de confianza.

  • La vinculación exclusiva a localhost limita la exposición al ordenador local.
  • La vinculación de red es una activación independiente y abre la API a cualquiera en la misma LAN. Actívala solo en una red de confianza.

Verifica que funciona

  • curl agent/capabilities devuelve JSON.
  • Una llamada de renderizado produce el archivo solicitado.

Relacionado

On this page