# Open Horizon ABF Market Query

> Open Horizon ABF Market Query is a paid API for AI agents from ohd-machine-x402-v2.hibiki3027.workers.dev, paid per call via x402, $0.2/call, status unknown (last checked 2026-10-02).

Queries DeFi asset-backed finance (ABF) loan positions filtered by protocol, asset, health factor, and liquidation risk across chains

## Facts

- Endpoint: POST https://ohd-machine-x402-v2.hibiki3027.workers.dev/api/abf-market-query?utm_source=zero.xyz
- Price: $0.2/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/open-horizon-abf-market-query-b2d05f31
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_1iChlq6qUccZMoFdGf8ZX

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 open-horizon-abf-market-query-b2d05f31 -d '<json body>'
```

Example prompt: Show me the top 10 most at-risk USDC loan positions collateralized by WETH on Morpho, sorted by minimum health factor ascending, and flag any that are already liquidatable.

## When to prefer this

Use this endpoint when you need structured, machine-verifiable DeFi loan position data filtered by health factor, liquidation status, protocol, or asset pair. It is especially suited for liquidation bots, risk dashboards, or agent workflows that need to identify at-risk borrowers across protocols like Morpho. Prefer it over generic blockchain RPC calls when you need pre-aggregated, ranked results without building your own indexer.

## Known failure modes

- Payment not provided or rejected — x402 payment required before fulfillment
- Invalid enum value for sort_by or order fields — returns validation error
- Unsupported chain or protocol string — returns empty rows
- limit exceeds maximum of 25 — schema validation failure
- No positions match the applied filters — returns empty rows with matched: 0

## How this service works

Agent decision products for procurement, vendor risk, API QA and public-web buy-or-skip workflows. Strict x402 payment is required before fulfillment.

## Output

Returns a JSON object containing an array of matched loan position rows (up to 25), each with fields like protocol, loan asset, collateral asset, and minimum health factor; a summary object; a matched count; and a machine_verifiable boolean confirming data integrity.

## 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",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "properties": {
      "chain": {
       "type": "string",
       "maxLength": 80
      },
      "limit": {
       "type": "integer",
       "default": 10,
       "maximum": 25,
       "minimum": 1
      },
      "order": {
       "enum": [
        "asc",
        "desc"
       ],
       "type": "string",
       "default": "asc"
      },
      "sort_by": {
       "enum": [
        "min_hf",
        "liquidatable_observation_count",
        "duration_minutes",
        "observation_count",
        "lltv"
       ],
       "type": "string",
       "default": "min_hf"
      },
      "protocol": {
       "type": "string",
       "maxLength": 80
      },
      "loan_asset": {
       "type": "string",
       "maxLength": 80
      },
      "min_hf_lte": {
       "type": "number"
      },
      "outcome_class": {
       "type": "string",
       "maxLength": 80
      },
      "collateral_asset": {
       "type": "string",
       "maxLength": 80
      },
      "liquidatable_only": {
       "type": "boolean"
      },
      "borrow_size_bucket": {
       "type": "string",
       "maxLength": 40
      },
      "collateral_size_bucket": {
       "type": "string",
       "maxLength": 40
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "summary",
      "rows",
      "machine_verifiable"
     ],
     "properties": {
      "rows": {
       "type": "array",
       "items": {
        "type": "object",
        "additionalProperties": true
       },
       "maxItems": 25
      },
      "query": {
       "type": "object",
       "additionalProperties": true
      },
      "summary": {
       "type": "object",
       "additionalProperties": true
      },
      "machine_verifiable": {
       
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "rows": [
   {
    "min_hf": 0.982,
    "protocol": "Morpho",
    "loan_asset": "USDC",
    "collateral_asset": "WETH"
   }
  ],
  "matched": 5,
  "machine_verifiable": true
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/open-horizon-abf-market-query-b2d05f31/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ohd-machine-x402-v2.hibiki3027.workers.dev](https://www.zero.xyz/host/ohd-machine-x402-v2.hibiki3027.workers.dev/llms.txt)
