# x402 Trust: 30-Day Endpoint Watch

> x402 Trust: 30-Day Endpoint Watch is a paid API for AI agents from x402-trust.com, paid per call via x402, $0.2/call, status unknown (last checked 2026-09-15).

Registers a 30-day active monitoring watch on an x402 endpoint, delivering uptime, compliance, and settlement alerts via webhook or Slack.

## Facts

- Endpoint: POST https://x402-trust.com/v1/watch-endpoint-30d
- Price: $0.2/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-trust-30-day-endpoint-watch-16603395
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_d58uk3hXEloojMlrdDbw9

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 x402-trust-30-day-endpoint-watch-16603395 -d '<json body>'
```

Example prompt: Set up a 30-day x402 trust watch on https://api.example.com/v1/thing and send alerts to my webhook at https://my-app.example.com/x402-alerts whenever uptime or 402-compliance events occur, with a liveness sensitivity of 3.

## When to prefer this

Choose this endpoint when you need ongoing, 30-day active monitoring of a specific x402 endpoint with push-based alerting (webhook or Slack) or a pollable event log. It is the right choice when you want continuous uptime probing, 402-envelope compliance checking, and USDC settlement anomaly detection — not just a one-time trust score lookup. Use a different endpoint if you only need a free grade or a single full data snapshot without sustained monitoring.

## Known failure modes

- Invalid or unreachable endpoint URL returns validation error
- Webhook URL fails connection test during setup, blocking watch creation
- Missing required delivery fields (webhook_urls or slack_url) returns 422
- Payment of $0.20 USDC not received causes 402 rejection before watch is created
- Secret token lost after creation cannot be recovered — only its SHA-256 hash is stored
- Watch expiry not renewed within 30 days causes monitoring to lapse

## How this service works

Trust, reputation & reliability scores for x402 endpoints. We monitor every listed x402 service 24/7: uptime probes, 402-envelope compliance, price history, and real on-chain USDC settlement volume. Free grade & recommendation for any endpoint, $0.005 for a full data breakdown.

## Output

Returns a watch record containing a one-time secret token (for bearer authentication of future management calls), the watch ID, poll URL for reading the append-only event log, edit/cancel/renew URLs, an expiry timestamp 30 days out, and a structured list of next-step instructions for storing the secret, polling events, verifying webhook signatures, editing watch settings, and renewing or cancelling the watch.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "events": {
   "type": "array",
   "items": {
    "type": "string"
   }
  },
  "delivery": {
   "type": "object",
   "required": [
    "webhook_urls",
    "slack_url"
   ],
   "properties": {
    "slack_url": {
     "type": "string"
    },
    "webhook_urls": {
     "type": "array",
     "items": {
      "type": "string"
     }
    }
   }
  },
  "endpoint": {
   "type": "string"
  },
  "liveness_sensitivity_n": {
   "type": "integer"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "secret": "wsk_… (shown once — store it now)",
  "watched": [
   {
    "resource": "https://api.example.com/v1/thing",
    "endpoint_id": 123
   }
  ],
  "delivery": {
   "poll": true,
   "slack": [],
   "webhook": [
    "https://your-app.example.com/x402-alerts"
   ]
  },
  "edit_url": "/v1/watch/01J8Z9K7X4QmY9example",
  "poll_url": "/v1/watch/01J8Z9K7X4QmY9example/events",
  "watch_id": "01J8Z9K7X4Qmy9example",
  "renew_url": "/v1/watch/01J8Z9K7X4QmY9example/renew",
  "cancel_url": "/v1/watch/01J8Z9K7X4QmY9example",
  "expires_at": 1751328000000,
  "next_steps": [
   {
    "step": 1,
    "action": "store_secret",
    "details": "Store `secret` in a secrets manager. It is shown only once; we only store its SHA-256 hash."
   },
   {
    "url": "/v1/watch/01J8Z9K7X4QmY9example/events",
    "step": 2,
    "action": "poll_events",
    "method": "GET",
    "details": "Read the append-only event log. Nothing that happened between two polls is lost.",
    "headers": {
     "Authorization": "Bearer wsk_…"
    },
    "cursor_hint": "Start without `since`; then use the highest returned `event_id` as the next `since` value.",
    "cursor_param": "since"
   },
   {
    "step": 3,
    "action": "verify_webhook",
    "details": "If you configured webhook_url(s), verify every incoming POST: the `x-signature` header must equal `sha256=` + HMAC-SHA256(body) keyed by hex(sha256(secret)) (NOT the raw secret). A `connection_test` ping is sent during setup — see delivery.connection_test.",
    "enabled": true
   },
   {
    "url": "/v1/watch/01J8Z9K7X4QmY9example",
    "step": 4,
    "action": "edit",
    "method": "PATCH",
    "details": "Change webhook/Slack URLs, liveness sensitivity, or subscribed events for free. PATCH with Authorization: Bearer <secret>; new URLs are connection-tested.",
    "headers": {
     "Authorization": "Bearer wsk_…"
    }
   },
   {
    "url": "/v1/watch/01J8Z9K7X4QmY9example",
    "step": 5,
    "action": "cancel",
    "method": "DELETE",
    "details": "Stop monitoring early (probing drops to normal cadence immediately). Free, bearer-authed.",
    "headers": {
     "Authorization": "Bearer wsk_…"
    }
   },
   {
    "url": "/v1/watch/01J8Z9K7X4QmY9example/renew",
    "step": 6,
    "action": "renew",
    "method": "POST",
    "details": "Extend the watch by 30 days before expires_at. The secret stays the same."
   }
  ],
  "subscribed_events": "all",
  "probe_interval_sec": 300,
  "liveness_sensitivity_n": 
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-trust-30-day-endpoint-watch-16603395/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-trust.com](https://www.zero.xyz/host/x402-trust.com/llms.txt)
