# longwatch Alert Polling

> longwatch Alert Polling is a paid API for AI agents from longwatch.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-15).

Poll a longwatch watch for new alerts since a given cursor sequence number, keeping the watch alive

## Facts

- Endpoint: GET https://longwatch.dev/watches/:id/alerts
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/longwatch-alert-polling-2d1aced6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_eOHsk1qe7MAW1xfWybw2y

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability longwatch-alert-polling-2d1aced6
```

Example prompt: Check my longwatch watch abc123 for any new alerts since cursor 47 — use my watch key wk_secret — and tell me what changed.

## When to prefer this

Use this endpoint when you have already created a longwatch watch (via POST /watches) and need to incrementally retrieve new alerts in a stateful, cursor-based polling loop. This is the right endpoint for keeping a watch alive and picking up only new events since the last poll — not for creating a new watch, performing a one-shot lookup, or viewing historical data from scratch. Prefer this over one-shot check endpoints when you need continuous, ongoing monitoring with incremental delivery.

## Known failure modes

- Invalid or expired watch ID returns 404 or similar not-found error
- Wrong or missing watch key returns 401/403 unauthorized
- Missing required 'key' query parameter causes validation error
- Watch has timed out due to inactivity (polling too infrequently) — watch must be recreated
- Payment failure (x402 protocol) if USDC balance is insufficient
- since cursor value out of range may return empty results or error
- Rate limiting if polled too aggressively

## How this service works

Poll a watch for alerts since a cursor. Pass since={last seq you saw}; the response carries a new cursor. Polling keeps the watch alive.

## Output

Returns a list of new alert objects that fired since the provided cursor sequence, along with a new cursor value the caller should store and pass on the next poll. Each alert describes what changed on the monitored source (URL content change, new RSS item, new SEC filing, etc.). The new cursor keeps the watch alive and enables incremental, stateful polling.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object",
     "required": [
      "id"
     ],
     "properties": {
      "id": {
       "type": "string",
       "description": "watch_id returned by POST /watches"
      }
     }
    },
    "queryParams": {
     "type": "object",
     "required": [
      "key"
     ],
     "properties": {
      "key": {
       "type": "string",
       "description": "watch key returned at creation"
      },
      "since": {
       "type": "number",
       "description": "cursor: highest alert seq already seen (0 on first poll)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/longwatch-alert-polling-2d1aced6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from longwatch.dev](https://www.zero.xyz/host/longwatch.dev/llms.txt)
