{"uid":"cap_E32FEeSskKnjNmLA2ZU5M","slug":"datasieve-standard-watch-10d5ef03","name":"DataSieve Standard Watch","description":"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.","url":"https://api.datasieve.xyz/watch/standard","method":"POST","headers":{},"bodySchema":{"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,"description":"dead-man switch: your agent must hit its pingUrl at least this often; silence past interval+grace fires the alarm"}}},{"required":["type"],"properties":{"at":{"type":"string","description":"one-shot: fire once at this ISO 8601 time (must be future)"},"tz":{"type":"string","description":"IANA timezone for cron, default UTC"},"cron":{"type":"string","description":"cron expression, e.g. \"0 9 * * *\" (daily 09:00)"},"type":{"const":"schedule"},"label":{"type":"string"},"payload":{"description":"echoed verbatim in the fired event — your wake-up context"},"everySeconds":{"type":"integer","minimum":60,"description":"cron for agents: fire a webhook/mailbox event every N seconds"}}},{"required":["type","url"],"properties":{"url":{"type":"string","description":"public http(s) page to monitor for content changes"},"type":{"const":"url-change"},"label":{"type":"string"},"regex":{"type":"string","description":"regex scoping: hash the joined matches (applied after selector if both set)"},"selector":{"type":"string","description":"CSS selector scoping what counts as \"the page\" (matched elements' text is hashed) — without it whole-page text is used and noisy pages false-positive"},"pollSeconds":{"type":"integer","default":600,"minimum":300,"description":"poll interval, floor 300s"}}}],"description":"One watch condition. type selects the kind; the other fields depend on it. ANY condition also accepts debounceSeconds (collapse a burst of matches into one delivery — set it unless you want every hit, because a watch stops at its trigger cap) and dedupeKey (never fire twice for the same logical event)."},"webhookUrl":{"type":"string","description":"optional https endpoint to receive HMAC-signed event POSTs; omit to poll GET /watch/:id/events instead"}}},"responseSchema":{"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}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.1","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.1/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_IHLr7Pzy2MepwBGkHgYvv","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.1","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"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.","exampleAgentPrompt":"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.","exampleUseCases":null,"resultDescription":"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.","failureModes":["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"],"whenToPreferThis":"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.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T06:31:15.924Z","isFirstParty":false}