Watch 0.39 API v1

Read Watch events and connect your system

API Quick Start

Connect and read events

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

  1. Open Settings → API & integrations → Connection settings. For access from a second device, enable the LAN API and select that device’s trusted network.
  2. Copy the API address shown in Watch. Create an event-read API key and save the full, once-displayed key locally.
  3. 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").StatusCode

200 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").StatusCode
200 confirms that the key can read event history even if it is empty. For 401, check the key locally for truncation or revocation. For 403, ask the administrator to check event-read access and the client’s network.

This check confirms event-read access only. Use Watch for settings, missions, schedules, and database operations. The public API does not provide those writes.

Next steps