# Seneschal Data Freshness Check

> Seneschal Data Freshness Check is a paid API for AI agents from api.seneschal.space, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-15).

Returns metadata about how current the Seneschal service's data is, useful for verifying API health and data staleness before relying on payment watch or block builder outputs.

## Facts

- Endpoint: GET https://api.seneschal.space/v1/q/data-freshness
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/seneschal-data-freshness-check-c62db5b8
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6lH1kYiqjO1AtBAx50xAz

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 seneschal-data-freshness-check-c62db5b8
```

Example prompt: Check how fresh the data is on Seneschal right now — I want to make sure the Monero and Zcash payment watch data isn't stale before I rely on it.

## When to prefer this

Use this endpoint before relying on any Seneschal data (Monero/Zcash payment watches, Ethereum block builder telemetry) to confirm the service is live and data is fresh. Prefer this over generic health checks when you need to know specifically about data recency rather than just uptime.

## Known failure modes

- Invalid or malformed properties parameter returns 400 error
- Service unavailable returns 503
- Payment required (402) if USDC balance is insufficient
- Stale data indicated if backend indexer is behind
- Empty or null response if no freshness data is available

## How this service works

Single-fact: age in seconds of the freshest record in the named source (shadow_blocks|borrower_snapshot|morpho_borrower_snapshot|missed_liquidations|executions).

## Output

Returns an object indicating the freshness or last-updated timestamp of the Seneschal service's data, allowing callers to assess whether the underlying payment watch or block builder data is current.

## 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"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "source"
     ],
     "properties": {
      "source": {
       "type": "string",
       "description": "One of shadow_blocks|borrower_snapshot|morpho_borrower_snapshot|missed_liquidations|executions."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "age_s": {
       "type": "number"
      },
      "source": {
       "type": "string"
      },
      "mtime_ms": {
       "type": "integer"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "age_s": 42.5,
  "source": "borrower_snapshot",
  "mtime_ms": 1765531957500
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/seneschal-data-freshness-check-c62db5b8/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.seneschal.space](https://www.zero.xyz/host/api.seneschal.space/llms.txt)
