# DataSieve Standard Watch

> DataSieve Standard Watch is a paid API for AI agents from api.datasieve.xyz, paid per call via x402, $0.1/call, status unknown (last checked 2026-09-14).

Sets up a 7-day event-driven monitor on Base chain activity, heartbeat/dead-man switch, cron/schedule, or URL change, pushing HMAC-signed events to a webhook or pollable mailbox.

## Facts

- Endpoint: POST https://api.datasieve.xyz/watch/standard
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/datasieve-standard-watch-10d5ef03
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_E32FEeSskKnjNmLA2ZU5M

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 datasieve-standard-watch-10d5ef03 -d '<json body>'
```

Example prompt: Set up a 7-day whale alert on Base: watch the USDC token contract for any transfer over 500,000 USDC and push a signed event to my webhook at https://myagent.example.com/hook — I want to poll the mailbox too if the webhook misses anything.

## When to prefer this

Choose this endpoint when you need event-driven, push-based monitoring of Base chain activity (wallets, whale transfers, price crossings, new pairs), agent liveness via heartbeat, time-based webhook scheduling, or URL change detection — all without account creation and with cryptographic receipts for auditability. Prefer it over polling-based alternatives when you want low-latency alerts, HMAC-signed payloads, and a fallback mailbox. Best when you need a quick, no-registration paid watch that self-expires in 7 days and can be renewed cheaply.

## Known failure modes

- Payment fails or is insufficient — call not billed, no watch created
- Invalid or missing required condition fields — 400 validation error
- Webhook URL unreachable at delivery time — events queued in mailbox instead
- Watch expires after 7 days without renewal — no further events fired
- More than 50 triggers consumed — watch stops firing until renewed
- Invalid wallet/token/pool address format — rejected at creation time
- Heartbeat interval below 60 seconds or above 604800 — rejected
- Cron or ISO 8601 time is in the past — rejected

## How this service works

Something you cannot do while your agent is dead: keep watching. One paid call buys 7 days of it — on-chain on Base (wallet activity, whale transfers, price crossings, new pools), a dead-man switch that fires when YOUR agent goes silent, a cron/schedule webhook, or a url-change web monitor. Every event carries a signed Ed25519 receipt proving a third party observed it then — which your own logs cannot. Webhook or pollable mailbox. No account: the wallet is the identity. 50 triggers.

## Output

Returns a watch ID (wt_...), a shared secret for HMAC verification, and (for heartbeat conditions) a pingUrl the agent must call periodically. Events matching the condition are pushed to the caller's webhook as HMAC-signed JSON payloads and stored in a pollable mailbox with an Ed25519 receipt. Up to 50 triggers over 7 days; renewal is available via the renew field.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "renew": {
   "type": "string",
   "description": "INSTEAD of the other fields: pass an existing standard watch id (wt_...) to renew it for another 7 days at the same price"
  },
  "condition": {
   "type": "object",
   "oneOf": [
    {
     "required": [
      "type",
      "address"
     ],
     "properties": {
      "type": {
       "const": "wallet-activity"
      },
      "minEth": {
       "type": "string",
       "description": "only native transfers >= this many ETH"
      },
      "address": {
       "type": "string",
       "description": "0x wallet address on Base to watch"
      },
      "direction": {
       "enum": [
        "in",
        "out",
        "both"
       ],
       "default": "both"
      }
     }
    },
    {
     "required": [
      "type",
      "token",
      "minAmount"
     ],
     "properties": {
      "type": {
       "const": "token-transfers"
      },
      "token": {
       "type": "string",
       "description": "0x ERC-20 token address on Base"
      },
      "minAmount": {
       "type": "string",
       "description": "whale threshold in human token units, e.g. \"50000\""
      }
     }
    },
    {
     "required": [
      "type",
      "pool",
      "direction",
      "threshold"
     ],
     "properties": {
      "pool": {
       "type": "string",
       "description": "Uniswap v2 pair or v3 pool address on Base"
      },
      "type": {
       "const": "price-cross"
      },
      "direction": {
       "enum": [
        "above",
        "below"
       ]
      },
      "threshold": {
       "type": "string",
       "description": "price of token0 in token1 units"
      }
     }
    },
    {
     "required": [
      "type"
     ],
     "properties": {
      "type": {
       "const": "new-pairs"
      },
      "minQuoteLiquidity": {
       "type": "string",
       "description": "min initial liquidity on the WETH/USDC side, human units"
      }
     }
    },
    {
     "required": [
      "type",
      "intervalSeconds"
     ],
     "properties": {
      "type": {
       "const": "heartbeat"
      },
      "label": {
       "type": "string",
       "description": "name echoed in alarm events, e.g. \"trader-prod\""
      },
      "graceSeconds": {
       "type": "integer",
       "description": "extra allowance before alarming (default: interval/4, min 60)"
      },
      "intervalSeconds": {
       "type": "integer",
       "maximum": 604800,
       "minimum": 60,
       "des
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "id": "wt_01jzyx8k2mabcdefghjkmn",
  "tier": "standard",
  "links": {
   "events": "https://api.datasieve.xyz/watch/wt_01jzyx8k2mabcdefghjkmn/events",
   "status": "https://api.datasieve.xyz/watch/wt_01jzyx8k2mabcdefghjkmn"
  },
  "state": "active",
  "secret": "whsec_...returned once, keep it: it authenticates status/events reads and signs your webhooks",
  "expiresAt": "2026-07-17T00:00:00.000Z",
  "triggerCap": 50,
  "triggersUsed": 0
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/datasieve-standard-watch-10d5ef03/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.datasieve.xyz](https://www.zero.xyz/host/api.datasieve.xyz/llms.txt)
