API Quick Start
Connect and read events
Use with AI
Use the API address provided by Watch and a key with event-read access. Run the checks from a computer that can reach Watch. You can verify the connection before connecting a camera or installing an SDK.
1. Get your address and key
Watch desktop
- Open Settings → API & integrations → Connection settings. For access from a second device, enable the LAN API and select that device’s trusted network.
- Copy the API address shown in Watch. Create an event-read API key and save the full, once-displayed key locally.
- To test without a terminal, open the event viewer address shown by Watch (ending in /viewer/) on a device on the trusted LAN. Verify the address belongs to your Watch host before entering the key in its password field and selecting Connect. The connected status confirms access even when there are no events from the past five hours.
The desktop LAN API provides read-only access to events and available evidence. Manage cameras, monitoring settings, and offline work inside Watch. v0.39 events and evidence reference
If an administrator provides an existing Event API, use its address and an events:read key. No additional service installation is needed.
2. Check reachability from a terminal
If the viewer shows a connected status, your first event-read test is complete. To verify a programmatic integration, copy the API base address from Watch, without /viewer/ or a trailing slash. Test on the computer that will run the integration. On another computer, localhost points to that computer.
macOS / Linux
WATCH_URL='http://YOUR_WATCH_IP:PORT'
curl -q --noproxy '*' -sS --max-time 10 -o /dev/null -w 'Health HTTP %{http_code}\n' "$WATCH_URL/healthz"Windows PowerShell
$WatchUrl = 'http://YOUR_WATCH_IP:PORT'
(Invoke-WebRequest -UseBasicParsing -MaximumRedirection 0 -TimeoutSec 10 -Uri "$WatchUrl/healthz").StatusCode200 means the service answered. For a connection failure, check the address, port, selected network, and whether Watch is still running.
3. Make a read-only request
Load the key into the WATCH_API_KEY environment variable using your local secret manager, then run one example below. The checks display only the HTTP status and keep event contents out of the terminal. Send the key only to the Watch address you just verified.
macOS / Linux
curl -q --noproxy '*' -sS --max-time 10 -o /dev/null -w 'Events HTTP %{http_code}\n' \
-H "Authorization: Bearer $WATCH_API_KEY" "$WATCH_URL/v1/events?limit=1"Windows PowerShell
$Headers = @{ Authorization = "Bearer $env:WATCH_API_KEY" }
(Invoke-WebRequest -UseBasicParsing -MaximumRedirection 0 -TimeoutSec 10 -Headers $Headers -Uri "$WatchUrl/v1/events?limit=1").StatusCodeThis check confirms event-read access only. Use Watch for settings, missions, schedules, and database operations. The public API does not provide those writes.