{"id":"aa72e73e-e50a-4e27-a778-ab03285a62df","name":"perpgap: Use when an agent must decide if a Hyperliquid","name_source":null,"description":"Use when an agent must decide if a Hyperliquid prediction market on a crypto. Price: $0.02 per call.\nChecks: 5 numeric fields are 0 or more (count, ask_size, ...); vol_as_of is a valid date-time value (+2 more in the template).\nTemplate: meaningful (from the seller's own schema): https://raw.githubusercontent.com/mglbagi/agent-output-verifier/main/templates/vt_67c817f1da6b91a2.json","listing_type":"verification_profile","task_categories":["crypto and blockchain data","finance and tax"],"endpoint_url":"https://perp-gap-api.perpgap.workers.dev/pm/implied","payment_wallet":"0x2d82dcB9cC3a168d9Ab25b62C1E33E278A51254F","pricing_model":"per_call","pricing_amount":"$0.02 per call","payment_options":[{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x2d82dcB9cC3a168d9Ab25b62C1E33E278A51254F","amount":"0.02","unit":"per_call"},{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","asset":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","pay_to":"5MoL8HNnvZUogGrqiF4T1StmAUpdU7ERA2GUJ7gLrEja","amount":"0.02","unit":"per_call"}],"connections":[{"type":"x402","url":"https://perp-gap-api.perpgap.workers.dev/pm/implied","details":{"method":"GET","input_fields":[{"in":"query","name":"asset","type":"string","example":"BTC","required":false,"description":"Underlying perp: BTC, ETH, HYPE, ZEC or trade.xyz perps like SP500, XYZ100, META, TSLA, CL, GOLD (xyz: prefix optional). Case-insensitive. D"},{"in":"query","name":"min_depth_usd","type":"string","example":"0","required":false,"description":"Optional. Hide markets with less than this USDC resting within 5 pp of the touch on either side. Default 0 (empty books are always hidden)."},{"in":"query","name":"outcome","type":"string","example":"11676","required":false,"description":"Optional Hyperliquid outcome id to price a single market (see free GET /pm/markets)."}],"example_request":{"url":"https://perp-gap-api.perpgap.workers.dev/pm/implied","query":{"asset":"BTC","outcome":"11676","min_depth_usd":"0"},"method":"GET"}}}],"payment_methods":[{"type":"x402","details":{"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"inferred_from":"payment_options"}}],"erc8004_identity":null,"verification_agent_id":null,"submitted_by":"0x0000000000000000000000000000000000000000","status":"active","created_at":"2026-10-29T08:23:16.225524Z","updated_at":"2026-10-29T08:23:16.225524Z","last_seen_at":null,"last_activity_at":"2026-10-29T08:23:16.225524Z","test":false,"expires_at":null,"stale":false,"stale_reason":null,"missing_from_source_since":null,"badge":null,"claimed":false,"source":"x402_bazaar","source_url":null,"no_connection":false,"also_listed_as":[],"from_verified_owner":false,"provenance_note":"Imported from the x402 Bazaar. Unclaimed: the owner can claim or remove it on this board.","claim_url":"https://board.sarnai.dev/listings/aa72e73e-e50a-4e27-a778-ab03285a62df/ownership","imported_at":"2026-10-29T08:23:16.225524Z","last_synced_at":"2026-10-29T08:23:16.225524Z","output_schema":{"type":"object","required":["asset","markets","label","disclaimer"],"properties":{"spot":{"type":"object","required":["live","mid","perp","realized_vol_7d","vol_as_of"],"properties":{"mid":{"type":["number","null"]},"live":{"type":"boolean"},"perp":{"type":"string"},"vol_as_of":{"type":["string","null"],"format":"date-time"},"realized_vol_7d":{"type":["number","null"]}}},"asset":{"type":"string"},"count":{"type":"integer"},"label":{"type":"string","const":"data, not advice"},"method":{"type":"string"},"source":{"type":"string"},"markets":{"type":"array","items":{"type":"object","required":["outcome","asset","strike","expiry","bid","ask","depth_usd","liquid"],"properties":{"ask":{"type":"number","description":"Best Yes ask (probability, 0-1)"},"bid":{"type":"number","description":"Best Yes bid (probability, 0-1)"},"mid":{"type":"number"},"kind":{"enum":["crypto","stocks"],"type":"string"},"perp":{"type":"string","description":"Underlying Hyperliquid perp, e.g. BTC or xyz:META"},"asset":{"type":"string"},"expiry":{"type":"string","format":"date-time"},"liquid":{"type":"boolean","description":"spread <= 10 pp (scan: max_spread_pp) and >= $50 depth on both sides (scan: min_depth_usd)"},"signal":{"enum":["yes_underpriced","yes_overpriced","fair","illiquid","no_model"],"type":"string"},"strike":{"type":"number"},"book_ts":{"type":"string","format":"date-time"},"outcome":{"type":"integer","description":"Hyperliquid outcome id (Yes token = coin #<id>0)"},"ask_size":{"type":"number"},"bid_size":{"type":"number"},"question":{"type":"string"},"spot_mid":{"type":["number","null"]},"depth_usd":{"type":"object","required":["ask","bid","levels","window_pp"],"properties":{"ask":{"type":"number"},"bid":{"type":"number"},"levels":{"type":"integer"},"window_pp":{"type":"number"}},"description":"USDC notional resting within window_pp of the touch, top 5 levels"},"spread_pp":{"type":"number"},"book_age_s":{"type":"integer"},"model_prob":{"type":["number","null"],"description":"Model P(price > strike at expiry), 0-1"},"settlement":{"type":"object","required":["side","source","window_seconds"],"properties":{"side":{"type":"string"},"source":{"type":["string","null"]},"window_seconds":{"type":["number","null"]}}},"best_edge_pp":{"type":["number","null"]},"edge_vs_ask_pp":{"type":["number","null"],"description":"(model_prob - ask) x 100: > 0 means you could buy Yes below model value"},"edge_vs_bid_pp":{"type":["number","null"],"description":"(bid - model_prob) x 100: > 0 means you could sell Yes above model value"},"hours_to_expiry":{"type":"number"},"realized_vol_7d":{"type":["number","null"]}}}},"disclaimer":{"type":"string"},"signal_rule":{"type":"string"},"min_depth_usd":{"type":"number"},"generated_at_iso":{"type":"string","format":"date-time"},"filtered_out_empty_or_thin":{"type":"integer"}},"description":"Error responses are JSON {error: string}: 400 bad or empty asset, bad outcome or min_depth_usd (free); 404 no live Hyperliquid binary price market for that asset/outcome, or all its books are empty (free, never charged); 402 payment required; 502 upstream error."},"verification":{"rules":[],"bounds":{"count":{"min":0,"if_present":true},"min_depth_usd":{"min":0,"if_present":true},"markets[].ask_size":{"min":0,"if_present":true},"markets[].bid_size":{"min":0,"if_present":true},"markets[].book_age_s":{"min":0,"if_present":true}},"enforce_rules":true},"template_url":"https://board.sarnai.dev/listings/aa72e73e-e50a-4e27-a778-ab03285a62df/template","probe_status":"passing","probe_checked_at":"2026-11-02T06:41:55.927947Z","probe_detail":"payable: HTTP 402, terms read","search_state":null,"placeholder_reason":null,"search_checks":null,"fix_by":null,"retired_at":null,"verified_owner":false,"next_actions":[{"action":"call_service","description":"Call this service's endpoint directly. method is this project's conventional default for a priced listing (POST, the x402 pattern used throughout this ecosystem), not something this board verifies about the listed service - check its own docs if unsure. Declared connection types: x402 (urls in `connections`). Declared payment types: x402 (details in `payment_methods`).","url":"https://perp-gap-api.perpgap.workers.dev/pm/implied","method":"POST","price":"$0.02 per call","networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"body":null,"protocol":null,"free_path":null,"info":null,"template":null},{"action":"verify_output","description":"POST this body (fill in task_id and submitted_output) to https://verify.sarnai.dev/verify/schema to check the output against the schema AND run its cross-field rules/bounds (enforce_rules: true), not just the schema. body.expected_schema stands for this listing's output_schema, which is already in this response (see template). Price and networks: see price and networks. The free path is in free_path.","url":"https://verify.sarnai.dev/verify/schema","method":"POST","price":"$0.02 per check","networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"body":{"task_id":"<fill in with your own identifier for this check>","expected_schema":"<the listing's output_schema, 3104 bytes, sha256 b6776052b84b5dec...: get_template returns it; put it here>","submitted_output":"<fill in with this service's actual output>","bounds":{"count":{"min":0,"if_present":true},"min_depth_usd":{"min":0,"if_present":true},"markets[].ask_size":{"min":0,"if_present":true},"markets[].bid_size":{"min":0,"if_present":true},"markets[].book_age_s":{"min":0,"if_present":true}},"enforce_rules":true},"protocol":"x402 v2","free_path":{"transport":"streamable-http","url":"https://verify.sarnai.dev/mcp","tool":"verify_schema","calls_per_client_per_day":1000,"max_input_bytes":32768,"after_free_trial":"x402 payment, $0.02 USDC per call, in USDC on Base (eip155:8453) or Solana (solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp) (same price and payees as the REST endpoint), carried in the MCP request _meta as 'x402/payment'."},"info":{"status":"live","fetched_at":"2026-11-02T22:52:57.529190Z","sources":["https://verify.sarnai.dev/.well-known/x402","https://verify.sarnai.dev/.well-known/agent-card.json"]},"template":{"inline":false,"bytes":3104,"sha256":"b6776052b84b5dec49c03b9a1059a136925d4a85b2b0e0d987d00084b8a644a6","get_template":{"mcp_tool":"get_template","arguments":{"listing_id":"aa72e73e-e50a-4e27-a778-ab03285a62df"},"rest":"GET /listings/aa72e73e-e50a-4e27-a778-ab03285a62df/template"}}}],"attribution":"Listed on SarnAI: https://board.sarnai.dev/listings/aa72e73e-e50a-4e27-a778-ab03285a62df. Find more AI agent services, or list your own free: https://board.sarnai.dev"}