# APEX Runner Grid Health Signal

> APEX Runner Grid Health Signal is a paid API for AI agents from apexrunner.ai, paid per call via x402, $0.35/call, status unknown (last checked 2026-09-13).

Returns real-time health metrics for an active grid trading bot, including PnL, fill rate, and a rebalance recommendation.

## Facts

- Endpoint: GET https://apexrunner.ai/signals/grid-health
- Price: $0.35/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/apex-runner-grid-health-signal-9116eafc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6jOyWQsNXgVjEFjOd6lC7

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 apex-runner-grid-health-signal-9116eafc
```

Example prompt: Check the health of my APEX Runner grid bot and tell me if it needs rebalancing — I want to see the current PnL percentage, fill rate, and whether the recommendation is to hold, rebalance, pause, or close.

## When to prefer this

Use this endpoint when you need a real-time health check on a running grid trading bot to decide whether to rebalance, pause, or continue. It is specifically designed for grid strategy monitoring on Kraken, Coinbase, or Hyperliquid accounts managed by APEX Runner, and is ideal for agents automating periodic bot health checks.

## Known failure modes

- No active grid bot found — returns empty or error if no grid strategy is running
- Authentication failure — missing or invalid API credentials return 401/402
- Grid bot not yet initialized — may return null values if bot has no trade history
- Rate limit exceeded — too many calls in a short period return 429
- Service unavailable — apexrunner.ai downtime returns 503

## How this service works

APEX Runner: Grid Health Signal

## Output

Returns a JSON object with: pnl_pct (float, grid bot PnL percentage since last rebalance), fill_rate (float 0.0–1.0, fraction of grid levels filled), recommendation (string enum: hold/rebalance/pause/close), and rebalance_needed (boolean indicating whether price has moved outside the active grid range).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "method"
   ],
   "properties": {
    "queryParams": {
     "type": "object",
     "properties": {
      "coin": {
       "enum": [
        "AVAX",
        "BTC",
        "ETH",
        "LINK",
        "SOL",
        "XRP"
       ],
       "type": "string",
       "default": "BTC"
      },
      "levels": {
       "type": "integer",
       "default": 8
      },
      "spacing_pct": {
       "type": "number",
       "default": 0.8
      }
     }
    }
   }
  },
  "output": {
   "type": "object",
   "properties": {
    "example": {
     "type": "object",
     "properties": {
      "coin": {
       "type": "string"
      },
      "atr_14": {
       "type": "number"
      },
      "rsi_14": {
       "type": "number"
      },
      "atr_fit": {
       "type": "string"
      },
      "current_config": {
       "type": "object",
       "properties": {
        "levels": {
         "type": "integer"
        },
        "spacing_pct": {
         "type": "number"
        }
       }
      },
      "recommendation": {
       "type": "string"
      },
      "grid_efficiency_pct": {
       "type": "number"
      },
      "optimal_spacing_pct": {
       "type": "number"
      },
      "projected_daily_fills": {
       "type": "number"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "pnl_pct": 2.3,
  "fill_rate": 0.68,
  "recommendation": "hold",
  "rebalance_needed": false
 },
 "pnl_pct": "float — grid bot PnL as a percentage since last rebalance",
 "fill_rate": "float — fraction of grid levels filled in the current cycle 0.0 to 1.0",
 "recommendation": "string — suggested action: hold, rebalance, pause, or close",
 "rebalance_needed": "boolean — true when price has moved outside the active grid range"
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/apex-runner-grid-health-signal-9116eafc/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from apexrunner.ai](https://www.zero.xyz/host/apexrunner.ai/llms.txt)
