# 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 DeFi risk tier grade (A–F) for a specific liquidity pool or protocol node identified by its node ID

## Facts

- Endpoint: GET https://risk.yo.xyz/api/v1/agent/node/pool%3Aethereum%3A0x1cfdc0154ae6b9f1887a8250f2582d55606e1a2008e65108fb83dd50a928593e
- 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-3e3b1aac
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_0X8xuZVk_rhD_KWbWmVAa

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-3e3b1aac
```

Example prompt: What's the risk grade for the Ethereum pool at 0x1cfdc0154ae6b9f1887a8250f2582d55606e1a2008e65108fb83dd50a928593e — I want to know its risk tier and any explanation of how it was graded.

## When to prefer this

Use this endpoint when you have a specific pool or protocol node ID and need its risk grade and properties without neighbor context. It is faster and cheaper than dependency graph endpoints. Best when you already know the nodeId (e.g. from a prior search endpoint call) and just need the risk tier and breakdown for that single node.

## Known failure modes

- Node ID not found — returns 404 or empty result
- Invalid nodeId format causes 400 bad request
- Payment not fulfilled via x402 protocol returns 402 Payment Required
- Node exists but risk data not yet computed returns partial properties without _riskTier
- Rate limiting or upstream graph database timeout returns 503

## How this service works

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

## Output

A JSON object containing the node's stable ID, PascalCase labels (e.g. Pool, Asset, Protocol, Chain), and a properties bag including _riskTier (letter grade A–F), tvlUsd (total value locked in USD), and riskBreakdown (array of question/answer pairs explaining the risk grade).

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "pathParams": {
   "nodeId": "pool:ethereum:0x1cfdc0154ae6b9f1887a8250f2582d55606e1a2008e65108fb83dd50a928593e"
  }
 }
}
```

## 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-3e3b1aac/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)
