# Glasswarp > API for real-time visual access and native input control on Windows machines you already own. ## Docs - [Create an API key](https://docs.glasswarp.com/api-reference/api-keys/create-an-api-key.md): Create a new API key. The full key is returned once in the response and never stored — only a SHA-256 hash is persisted. - [List API keys](https://docs.glasswarp.com/api-reference/api-keys/list-api-keys.md): List all active API keys (prefix only — full key is never stored). - [Revoke an API key](https://docs.glasswarp.com/api-reference/api-keys/revoke-an-api-key.md): Immediately revoke an API key. Existing sessions are not affected. - [Kill apps launched in this session](https://docs.glasswarp.com/api-reference/apps/kill-apps-launched-in-this-session.md): Terminate processes previously spawned via `/app/launch`. Omit `pid` to kill all session-launched apps; pass `pid` to kill one. Uses `taskkill /T /F` with protected-process guards. - [Launch an application on the rig](https://docs.glasswarp.com/api-reference/apps/launch-an-application-on-the-rig.md): Spawn a process on the host by absolute path or PATH name (e.g. `notepad.exe`). Does not enter Game Mode shell/display policy — desktop API session stays active. Returns the new PID. Tracked apps are killed on session end or via `/app/kill`. - [List click targets (VP0.5 grounding)](https://docs.glasswarp.com/api-reference/grounding/list-click-targets-vp05-grounding.md): Sparse click targets in native capture coords from the host focused-window UI Automation snapshot (P8). Empty if UIA finds nothing or the host is unavailable. Clients may still inject CV/grid targets via the SDK. - [Send input events](https://docs.glasswarp.com/api-reference/input/send-input-events.md): Send mouse and keyboard events to the remote desktop. Events are executed in order on the host. - [API reference](https://docs.glasswarp.com/api-reference/overview.md): The Glasswarp Platform API — real-time vision and native input on Windows. - [Get rig details](https://docs.glasswarp.com/api-reference/rigs/get-rig-details.md): Get details and capabilities for a specific rig. - [List rigs](https://docs.glasswarp.com/api-reference/rigs/list-rigs.md): List all rigs on your account with online status and capabilities. - [Wake a rig](https://docs.glasswarp.com/api-reference/rigs/wake-a-rig.md): Send a Wake-on-LAN packet to power on an offline rig. - [Get accumulated dirty rectangles (VP0)](https://docs.glasswarp.com/api-reference/screenshots/get-accumulated-dirty-rectangles-vp0.md): Returns DXGI dirty rects accumulated since the last poll, in capture-buffer coordinates `[x, y, w, h]`. Empty `rects` means no visual change — agents can skip a vision model call. Pair with ROI screenshot (`x,y,w,h`) to encode only changed regions. - [Observe (JPEG + dirty + targets) in one RTT (VP0.5 grounding)](https://docs.glasswarp.com/api-reference/screenshots/observe-jpeg-+-dirty-+-targets-in-one-rtt-vp05-grounding.md): One-round-trip agent observe: JPEG (same options as screenshot), dirty rects take, and sparse click targets from host UIA (P8). SDK applies Set-of-Mark when `mark=1` and targets are present. Coords are native capture space. - [Take a screenshot](https://docs.glasswarp.com/api-reference/screenshots/take-a-screenshot.md): Return a JPEG of the current desktop from the host's last-frame buffer (DXGI capture, not VNC). Capture is always native resolution (including 4K). Use `max_width` / `quality` to downscale on the host for faster LLM ingest. Response headers include both JPEG size and native desktop size for click co… - [Create a session](https://docs.glasswarp.com/api-reference/sessions/create-a-session.md): Start a new desktop session on a rig. The rig must be online and have API access enabled by the owner. - [End a session](https://docs.glasswarp.com/api-reference/sessions/end-a-session.md): End a session. Triggers safety_restore on the host (restores desktop state, disarms input). - [Get session details](https://docs.glasswarp.com/api-reference/sessions/get-session-details.md): Get the status, duration, and action count for a session. - [List active sessions](https://docs.glasswarp.com/api-reference/sessions/list-active-sessions.md): List all active sessions for the authenticated API key. - [Get live stream connection](https://docs.glasswarp.com/api-reference/streaming/get-live-stream-connection.md): Get WebRTC signaling credentials for a live 60fps video stream of the remote desktop. Returns a one-time connect URL — open a WebSocket to it, send an SDP OFFER, and receive an ANSWER to start receiving H.264 video over WebRTC. - [Eyes and hands](https://docs.glasswarp.com/concepts/eyes-and-hands.md): The one idea behind Glasswarp — and the line between platform and agent. - [Grounding](https://docs.glasswarp.com/concepts/grounding.md): Click targets, not guessed pixels. - [Rigs and sessions](https://docs.glasswarp.com/concepts/rigs-and-sessions.md): The two core objects: the machine and the connection to it. - [Safety and consent](https://docs.glasswarp.com/concepts/safety-and-consent.md): The guardrails around every API session. - [Vision](https://docs.glasswarp.com/concepts/vision.md): How your agent sees the screen — screenshots, observe, and dirty rects. - [Grounding: observe + Set-of-Mark](https://docs.glasswarp.com/examples/grounding.md): Turn a frame into numbered targets a vision model can click by id. - [Notepad: UIA targets + type](https://docs.glasswarp.com/examples/notepad.md): An agent launches Notepad, finds the edit surface via UIA, and types. - [Paint: draw the wordmark](https://docs.glasswarp.com/examples/paint.md): An agent draws a bold, hollow GLASSWARP wordmark in Paint on real Windows. - [Your first session](https://docs.glasswarp.com/get-started/first-session.md): Start a session, capture a frame, send input, and clean up. - [Install the host agent](https://docs.glasswarp.com/get-started/install-host.md): Put the Glasswarp host on a Windows machine so agents get eyes and hands. - [Install the SDK](https://docs.glasswarp.com/get-started/install-sdk.md): Add the Glasswarp Python SDK to your project. - [Pair a rig](https://docs.glasswarp.com/get-started/pair-rig.md): Link a Windows machine to your account and enable API access. - [Build an agent loop](https://docs.glasswarp.com/guides/agent-loop.md): observe → decide → act, efficiently and safely. - [Send input](https://docs.glasswarp.com/guides/input.md): Native Win32 clicks, typing, keys, drags, and scrolls. - [Launch apps](https://docs.glasswarp.com/guides/launch-apps.md): Spawn and drive Windows applications from your session. - [Live View](https://docs.glasswarp.com/guides/live-view.md): Watch any session at 60fps and keep humans in the loop. - [Observe the screen](https://docs.glasswarp.com/guides/observe.md): Capture frames, regions of interest, and only what changed. - [Glasswarp](https://docs.glasswarp.com/index.md): API for real-time visual access and native input control on Windows machines you already own. - [Quickstart](https://docs.glasswarp.com/quickstart.md): Go from zero to a live Windows session in minutes. - [Setup for Agents](https://docs.glasswarp.com/setup-for-agents.md): Paste one prompt into your coding agent and let it wire Glasswarp into your project. - [Troubleshooting](https://docs.glasswarp.com/troubleshooting.md): Common failures and how to fix them fast. ## OpenAPI Specs - [openapi](https://docs.glasswarp.com/openapi.yaml)