# SolEnrich Check-Alerts (Spot + Jupiter Perps)

> SolEnrich Check-Alerts (Spot + Jupiter Perps) is a paid API for AI agents from api.solenrich.com, paid per call via x402, $0.008/call, status unknown (last checked 2026-09-14).

Poll for fired alerts since a given timestamp across a watchlist of Solana tokens and wallets, covering price spikes, whale flows, wallet risk changes, and Jupiter Perps position events.

## Facts

- Endpoint: POST https://api.solenrich.com/entrypoints/check-alerts/invoke
- Price: $0.008/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/solenrich-check-alerts-spot-jupiter-perps-161a149f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_h1gqUe_Yj_4Cr-lZ2sdDR

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 solenrich-check-alerts-spot-jupiter-perps-161a149f -d '<json body>'
```

Example prompt: Check for any alerts that have fired on my Solana watchlist since 2025-06-01T00:00:00Z — I'm watching tokens So11111111111111111111111111111111111111112 and EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v, and wallets 7v91N7iZ9mNicL8WfG6cgSCKyRXydQjLh6UYBWwm6y1Q and 3yFwqXBfZY4jVoefJCPXQRegkqXnzmjuAvd3xgwzHF5P, and fire a whale alert only if net flow exceeds $100,000.

## When to prefer this

Use this endpoint when you need a stateless, poll-based alert system for Solana tokens and Jupiter Perps wallets without setting up webhooks or persistent subscriptions. Ideal for agents that maintain their own `since` cursor and need to check for significant events — price moves, whale activity, perp liquidation risk — on a defined watchlist at intervals. Prefer over real-time stream solutions when you control the polling frequency and want configurable thresholds per call.

## Known failure modes

- Invalid or missing `since` timestamp returns a 400 error
- Token mint or wallet address outside valid Solana address length range (32-44 chars) triggers validation error
- Exceeding 10 tokens or 10 wallets in watchlist returns a 400 bad request
- Payment not provided or insufficient USDC causes x402 payment required response
- Threshold values outside allowed ranges (e.g. leverage > 100) return validation errors
- If the Solana RPC or enrichment data source is unavailable, a 503 or timeout may occur

## How this service works

Poll-based event detection for spot + Jupiter Perps. Pass a watchlist (<=10 tokens, <=10 wallets) and a `since` ISO 8601 timestamp; get alerts fired since then. Token alerts: price spikes/drops, whale inflow/outflow, concentration shifts. Wallet alerts: risk changes, portfolio value moves, position add/remove. Perps alerts per wallet: position add/close, at-risk, liquidation-approaching, pnl-swing. Stateless; the agent owns the `since` cursor.

## Output

A list of alert objects fired since the provided timestamp, each typed by event category (price_spike, price_drop, whale_inflow, whale_outflow, concentration_shift, risk_change, portfolio_move, perp_position_add, perp_position_close, perp_at_risk, liquidation_approaching, pnl_swing) with relevant metadata such as token mint, wallet address, magnitude, and timestamp. Returns empty list if no alerts fired.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "since": {
   "type": "string",
   "format": "date-time",
   "description": "ISO 8601 timestamp — return alerts fired since this moment"
  },
  "format": {
   "enum": [
    "json",
    "llm",
    "both"
   ],
   "type": "string",
   "default": "json"
  },
  "tokens": {
   "type": "array",
   "items": {
    "type": "string",
    "maxLength": 44,
    "minLength": 32
   },
   "maxItems": 10,
   "description": "Token mints to monitor"
  },
  "wallets": {
   "type": "array",
   "items": {
    "type": "string",
    "maxLength": 44,
    "minLength": 32
   },
   "maxItems": 10,
   "description": "Wallet addresses to monitor (spot + Jupiter Perps)"
  },
  "criteria": {
   "type": "object",
   "properties": {
    "perp_max_leverage": {
     "type": "number",
     "maximum": 100,
     "minimum": 1,
     "description": "Default 10 — fire perp_at_risk when position leverage ≥ this"
    },
    "min_price_change_pct": {
     "type": "number",
     "minimum": 0,
     "description": "Default 10 — fire on token price moves ≥ this percentage"
    },
    "min_risk_score_delta": {
     "type": "number",
     "maximum": 1,
     "minimum": 0,
     "description": "Default 0.15 — fire on risk score deltas ≥ this magnitude"
    },
    "min_whale_volume_usd": {
     "type": "number",
     "minimum": 0,
     "description": "Default 50000 — fire on whale net flow ≥ this USD value"
    },
    "perp_min_pnl_swing_pts": {
     "type": "number",
     "minimum": 0,
     "description": "Default 25 — fire pnl_swing when unrealized PnL%% moves by this many points since prior snapshot"
    },
    "min_portfolio_change_pct": {
     "type": "number",
     "minimum": 0,
     "description": "Default 20 — fire on wallet portfolio moves ≥ this percentage"
    },
    "min_concentration_shift_pct": {
     "type": "number",
     "minimum": 0,
     "description": "Default 5 — fire on top-1 holder concentration shifts ≥ this magnitude"
    },
    "perp_liquidation_buffer_pct": {
     "type": "number",
     "maximum": 100,
     "minimum": 0,
     "description": "Default 15 — fire liquidation_approaching when collateral buffer (100%% + PnL%%) drops below this"
    }
   },
   "description": "Optional alert thresholds"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "output": {
   "briefing": "string (llm format) or object (json format)"
  },
  "run_id": "uuid",
  "status": "succeeded"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/solenrich-check-alerts-spot-jupiter-perps-161a149f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.solenrich.com](https://www.zero.xyz/host/api.solenrich.com/llms.txt)
