Dokumentacija Beam Bench

HTTP API

Upravljajte Beam Bench s katerim koli odjemalcem HTTP. Isti vmesnik, ki ga uporablja CLI.

HTTP API je integracijski vmesnik za Beam Bench. Namizna aplikacija, CLI in vsi zunanji odjemalci uporabljajo iste poti. Če potrebujete Beam Bench v okolju, ki ni CLI, na primer v spletni aplikaciji, integracijskem strežniku, mobilni aplikaciji ali lastnem orodju, uporabite API neposredno.

API je vključen v namizno aplikacijo in deluje v istem procesu. Ločene storitve ni treba namestiti.

Privzete nastavitve in varnost

V trenutni različici lokalni strežnik API uporablja te nastavitve:

  • Lokalni API: izklopljeno.
  • Vrata API: 5900.
  • Dovolite omrežnim napravam povezavo: izklopljeno. Ko je API omogočen, se veže na 127.0.0.1 in sprejema povezave samo iz tega računalnika.

API ne posluša povezav, dokler ga izrecno ne omogočite. Omogočanje omrežnega dostopa je ločena izrecna izbira, ker API nima preverjanja pristnosti in vključuje postopke, ki lahko premaknejo stroj in sprožijo laser.

Če želite uporabljati API, spremenite njegove nastavitve v Nastavitve → Splošno:

  1. Odprite namizno aplikacijo.
  2. Uredi → Nastavitve → Splošno.
  3. Vklopite Lokalni API.
  4. Možnost Dovolite omrežnim napravam povezavo pustite izklopljeno, razen če se mora povezati druga zaupanja vredna naprava.

Spremembe začnejo veljati takoj, ponovni zagon ni potreben.

Osnovni URL

http://<host>:5900/api/v1

<host> je localhost (ali 127.0.0.1), ko je možnost Dovolite omrežnim napravam povezavo izklopljena. Ko je vklopljena, je strežnik dosegljiv na naslovu LAN tega računalnika iz katere koli naprave v omrežju.

Vrata lahko nastavite v Nastavitve → Splošno; privzeta vrednost je 5900.

Preverjanje pristnosti

Ni ga. API nima žetona, ključa ali prijave.

  • Pri vezavi na localhost je meja model dostopa na ravni operacijskega sistema: kateri koli proces v vašem računalniku lahko komunicira z API-jem.
  • Ko je omrežna vezava omogočena, lahko z API-jem komunicira kdor koli v istem omrežju. Način omrežne vezave uporabljajte samo v zaupanja vrednih omrežjih Wi-Fi.

Oblika zahtev

Vsa telesa zahtev POST/PATCH/PUT so JSON:

Content-Type: application/json

Poizvedbeni nizi so preprosti pari ključ=vrednost. Odseki poti so kodirani z URL kot običajno.

Ovojnica odgovora

Uspešni odgovori vrnejo telo vira neposredno, brez ovojnice:

{
  "field": "value",
  "...": "..."
}

Napake vrnejo enotno ovojnico:

{
  "error": {
    "code": "InvalidInput",
    "message": "Human-readable summary of what went wrong.",
    "details": { "...optional structured context..." }
  }
}

error.code je ena od teh vrednosti:

KodaHTTPPomen
NotFound404Zahtevani vir ne obstaja.
InvalidInput400Telo zahteve ali parametri so bili nepravilno oblikovani ali zavrnjeni.
InvalidState412Aplikacija ni v stanju, v katerem je ta postopek smiseln, na primer ni odprtega projekta.
Busy409Postopek v sporu že poteka.
Conflict409Drug zapisovalec je spremenil vir, odkar ste ga nazadnje prebrali.
StaleRevision412Vaš žeton revizije zaostaja za trenutno vrednostjo. Znova preberite vir in poskusite.
MachineIo502Povezava s strojem ni uspela, zaradi prekinitve, časovne omejitve ali napake pri prenosu.
Persistence500Branje ali zapisovanje na disk ni uspelo.
Internal500Nepričakovana napaka strežnika. Prijavite jo kot napako.

Napake, ki zahtevajo potrditev

Majhno število postopkov lahko premakne stroj ali sproži laser. Te končne točke zahtevajo izrecno zastavico za potrditev v telesu zahteve. Če manjka, API vrne 428 Precondition Required:

{
  "error_code": "CONFIRMATION_REQUIRED",
  "missing": ["confirm_motion"],
  "message": "This command can move the machine and requires explicit confirmation."
}

Zahtevo pošljite znova, pri čemer navedeno zastavico nastavite na true. Trenutno se uporabljajo zastavice confirm_motion, confirm_laser_on, confirm_raw_gcode in confirm_air_assist.

Skupine končnih točk

PotKaj zajema
/api/v1/appInformacije na ravni aplikacije: različica, čas delovanja in zmogljivosti.
/api/v1/agentShema zmogljivosti agenta, posnetek stanja in navodila za uporabo.
/api/v1/projectsOdpiranje, shranjevanje in zapiranje. Plasti, predmeti, razveljavljanje in ponavljanje.
/api/v1/projects/importUvoz datotek SVG, DXF, PDF in AI ter rastrskih slik v projekt.
/api/v1/exportIzris projekta v SVG, DXF, PDF, EPS ali AI.
/api/v1/designOpis trenutnega načrta, izris v PNG in uporaba transakcijskih urejanj.
/api/v1/previewUstvarjanje predogledov rezanja in statistike.
/api/v1/jobsPredhodno preverjanje, zagon, preizkusni zagon, premor, nadaljevanje, okvirjanje in zaustavitev.
/api/v1/machinePovezovanje, prekinitev povezave, stanje, pomik po korakih in pozicioniranje na izhodišče.
/api/v1/cameraNaprave, stanje, zajem, prekrivanje (prikaz, transformacija, izris), umerjanje in poravnava.
/api/v1/consolePošiljanje surovega G-code. Branje nedavnega dnevnika konzole.
/api/v1/macrosIzpis, shranjevanje in zagon uporabniških makrov.
/api/v1/materialsKnjižnica materialov: prednastavitve, določene z materialom in debelino.
/api/v1/profilesProfili stroja: ustvarjanje, izpis in uporaba.
/api/v1/assetsDostop do grafik prek možnosti Knjižnica grafik.
/api/v1/vectorVektorske operacije: pretvorba, logične operacije, združevanje in poti.
/api/v1/eventsTok WebSocket s spremembami stanja in dogodki stroja.

Referenčne strani za posamezne vire so še v izdelavi; do takrat si oglejte shemo zmogljivosti agenta.

Odkrijte trenutni vmesnik

Najhitreje si ogledate, kaj omogoča vaša nameščena različica:

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

To vrne celotno shemo zmogljivosti, vključno z vsemi končnimi točkami, njihovimi parametri in obliko odgovorov. Shema je merodajen opis, ta stran pa je njen vodnik.

Za pregled stanja:

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

Za pisno razlago upravljanja aplikacije:

curl -s http://localhost:5900/api/v1/agent/guide

Različice

Vse poti so pod /api/v1. Nezdružljive spremembe bodo ob uvedbi vključene v /api/v2. Dopolnilne spremembe, kot so nove končne točke in nova neobvezna polja, so vključene v v1 brez povečanja različice.

Povezano

On this page