# risk.yo.xyz Node Risk Grade Lookup

> risk.yo.xyz Node Risk Grade Lookup is a paid API for AI agents from risk.yo.xyz, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-15).

Returns properties and risk grade (tier A–F) for a single DeFi node (pool, asset, protocol, or chain) identified by its stable node ID

## Facts

- Endpoint: GET https://risk.yo.xyz/api/v1/agent/node/pool%3Abase%3A0x1d3b1cd0a0f242d598834b3f2d126dc6bd774657
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/risk-yo-xyz-node-risk-grade-lookup-6a648480
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_AABjvMnZAhwfGJdmnXQav

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 risk-yo-xyz-node-risk-grade-lookup-6a648480
```

Example prompt: What's the risk grade and breakdown for the Base pool at address 0x1d3b1cd0a0f242d598834b3f2d126dc6bd774657 — I want to know if it's safe to deposit into it.

## When to prefer this

Use this endpoint when you already have a stable node ID (e.g. pool:base:0x…) from a prior search and need the full risk grade and property details for that single node without neighborhood traversal. Prefer this over neighborhood endpoints when you only need the node's own risk tier and properties, not its dependencies or connected graph.

## Known failure modes

- Invalid or malformed nodeId returns 404 or empty result
- Unparseable node identifier format causes request failure
- Node not indexed in graph returns no data
- Payment not processed (x402) returns 402 Payment Required
- Stale data if lastUpdatedAt is old — freshness not guaranteed

## How this service works

Single node — properties + risk grade only (no neighborhood)

## Output

A JSON object with the node's stable ID, PascalCase labels (e.g. Pool, Asset, Protocol, Chain), and a properties bag including _riskTier (letter grade A–F), tvlUsd (USD size), and riskBreakdown (array of {question, answer} pairs explaining the risk grade without numeric scores)

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "queryParams": {
   "nodeId": "pool:base:0x1d3b1cd0a0f242d598834b3f2d126dc6bd774657"
  }
 }
}
```

## 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": [
      "nodeId"
     ],
     "properties": {
      "nodeId": {
       "type": "string"
      }
     }
    },
    "queryParams": {
     "type": "object",
     "required": [
      "nodeId"
     ],
     "properties": {
      "nodeId": {
       "type": "string",
       "description": "Stable node id from /search — e.g. \"pool:ethereum:0x…\"."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "id",
      "labels",
      "properties"
     ],
     "properties": {
      "id": {
       "type": "string",
       "description": "Stable node identifier — `nodeId` everywhere else in the API."
      },
      "labels": {
       "type": "array",
       "items": {
        "type": "string"
       },
       "description": "PascalCase Neo4j labels (e.g. \"Pool\", \"Asset\", \"Protocol\", \"Chain\")."
      },
      "properties": {
       "type": "object",
       "description": "Per-label property bag — see /agent/schema for the canonical keys. Risk is exposed as `_riskTier` (A–F) only. May also carry `tvlUsd` (canonical $ size), `riskBreakdown` (on /node — an array of {question, answer} explaining the grade, no numbers), and `lastUpdatedAt` (on /dependencies — ISO-8601 freshness).",
       "additionalProperties": true
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/risk-yo-xyz-node-risk-grade-lookup-6a648480/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from risk.yo.xyz](https://www.zero.xyz/host/risk.yo.xyz/llms.txt)
