PerpCheck by YourAITools
Pay-per-call x402 APIs for AI agents (USDC on Base, Polygon, Arbitrum or Solana). No signup: call, get HTTP 402, pay, retry. Or pay once for a prepaid credits pack ($1, or $5 for $5.50 of credits) and send Authorization: Bearer <key> to any paid route.
The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.
Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.
Live 402 challenge
Captured by the enrichment pass, not read just now. Prices can change — always read the 402 the endpoint answers with.
{
"error": "X-PAYMENT header is required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F",
"scheme": "exact",
"network": "base",
"mimeType": "application/json",
"resource": "https://api.youraitools.co/perpcheck/v1/lite",
"description": "Pre-trade check of a Hyperliquid perp order before you send it: REJECT_LIKELY / CAUTION / OK, each exchange-rule issue with a fix value (size decimals, price tick, $10 minimum, max leverage by margin tier, isolated-only, OI cap, delisted, far-from-mark limit), warnings and the coin rules. Read-only; never places or signs orders. Fail-closed: a failed source is listed, never OK. Not financial advice; the exchange decides whether an order is accepted.",
"outputSchema": {
"input": {
"type": "http",
"method": "GET",
"queryParams": {
"coin": {
"type": "string",
"required": true,
"description": "Hyperliquid main-dex perp name, e.g. BTC, ETH, SOL, HYPE, kPEPE"
},
"side": {
"type": "string",
"required": true,
"description": "long/buy or short/sell"
},
"size": {
"type": "string",
"required": false,
"description": "Order size in coins, exactly as you would send it (decimals are checked), e.g. 0.001. Give size or notional."
},
"price": {
"type": "string",
"required": false,
"description": "Limit price exactly as you would send it (tick rule is checked). Omit for a market order (then taker impact is estimated from the L2 book)."
},
"margin": {
"type": "string",
"required": false,
"description": "cross (default) or isolated"
},
"leverage": {
"type": "number",
"required": false,
"description": "Leverage, e.g. 10 (default 1)"
},
"notional": {
"type": "number",
"required": false,
"description": "Order value in USD (instead of size), e.g. 100"
},
"reduceOnly": {
"type": "boolean",
"required": false,
"description": "true if the order only reduces a position (exempt from the minimum and OI cap)"
}
},
"discoverable": true
},
"output": {
"coin": "ETH",
"side": "long",
"size": 0.0012,
"tier": "lite",
"rules": {
"szDecimals": 4,
"max_leverage": 25,
"only_isolated": false,
"min_notional_usd": 10,
"price_max_decimals": 2,
"price_max_sig_figs": 5,
"max_leverage_at_size": 25
},
"issues": [
{
"msg": "order value $3.70 is below Hyperliquid's $10 minimum",
"code": "min_notional"
},
{
"fix": 0.0012,
"msg": "size has 7 decimals; this coin allows 4 (szDecimals)",
"code": "size_decimals"
},
{
"fix": 3000.1,
"msg": "price has 3 decimals; max for this coin is 2",
"code": "price_tick"
},
{
"fix": 25,
"msg": "leverage 60x is above the 25x maximum for this coin at $4 notional",
"code": "leverage"
}
],
"margin": "cross",
"verdict": "REJECT_LIKELY",
"leverage": 60,
"warnings": [
{
"msg": "limit buy above mark by 25.37%: fills immediately as taker",
"code": "marketable_limit"
}
],
"checked_at": "2026-10-23T19:20:07.798Z",
"confidence": "high",
"disclaimer": "Not financial advice; the exchange decides whether an order is accepted. PerpCheck is a read-only pre-trade check: it never places, signs or holds orders, has no custody and never asks for keys.",
"order_type": "limit",
"reduce_only": false,
"notional_usd": 3.7,
"sources_failed": []
}
},
"maxAmountRequired": "3000",
"maxTimeoutSeconds": 120
}
],
"message": "Payment required: PerpCheck GET /perpcheck/v1/lite costs $0.003 per call in USDC. Will this Hyperliquid perp order be rejected, and what does it cost and risk? Pay per call in USDC with any x402 client: read the PAYMENT-REQUIRED header (x402 v2) or the accepts list in this body (x402 v1), sign the payment and retry the same request with the PAYMENT-SIGNATURE (v2) or X-PAYMENT (v1) header. Networks: Base, Polygon, Arbitrum, Solana. No account, no API key. No crypto wallet? Buy prepaid credits by card or USDC at https://api.youraitools.co/credits/ and send them as a Bearer key. Free: 30 calls/day (full checks via remote MCP, tool check_perp_order), then $0.003 lite / $0.01 full per call in USDC (not financial advice)",
"x402Version": 1,
"payment_help": {
"docs": "https://api.youraitools.co/perpcheck/",
"tool": "PerpCheck",
"what": "Will this Hyperliquid perp order be rejected, and what does it cost and risk? A read-only pre-trade check of the order a trading agent is about to send: REJECT_LIKELY / CAUTION / OK with each exchange-rule issue and a fix value (size decimals, price tick, $10 minimum, max leverage by margin tier, isolated-only, open-interest cap, delisted, far-from-mark), plus isolated liquidation estimate, taker impact from the live L2 book and funding carry (full). Never places, signs or holds orders. Fail-closed: a failed source is never OK. Not financial advice; the exchange decides whether an order is accepted.",
"price": "$0.003 per call (USDC)",
"route": "GET https://api.youraitools.co/perpcheck/v1/lite",
"mcp_hub": "https://api.youraitools.co/mcp/hub",
"free_tier": "30 calls/day (full checks via remote MCP, tool check_perp_order), then $0.003 lite / $0.01 full per call in USDC (not financial advice)",
"pay_with_x402": "Pay per call in USDC with any x402 client: read the PAYMENT-REQUIRED header (x402 v2) or the accepts list in this body (x402 v1), sign the payment and retry the same request with the PAYMENT-SIGNATURE (v2) or X-PAYMENT (v1) header. Networks: Base, Polygon, Arbitrum, Solana. No account, no API key.",
"pay_with_credits": {
"url": "https://api.youraitools.co/credits/",
"use": "Send the key as Authorization: Bearer yatc_... on the same request; each call is deducted at the listed price.",
"card": "Pay by card (Stripe): $5, $20 or $50 credit packs, no crypto wallet needed.",
"wallet": "Or buy $1 or $5 of credits in USDC with the one-click browser wallet button on the same page.",
"card_checkout": "https://api.youraitools.co/credits/ (choose a pack under Pay by card; Stripe checkout opens in one click)"
}
}
}Accepts
The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.
Pay 0.003 USDC on Base to 0x3c1A…08d6F. The signed payment is good for 2 minutes.
- Paid to
- 0x3c1A…08d6F
- USD Coin contract
- 0x8335…02913
- Payment window
- 2 minutes
- As published
- 3000 smallest units
The catalog’s raw entry
[
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F",
"amount": "3000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 120
}
]Extensions
{
"bazaar": {
"info": {
"input": {
"type": "http",
"method": "GET",
"queryParams": {
"coin": "BTC",
"side": "long",
"size": "0.001",
"leverage": 10
}
},
"output": {
"type": "json",
"example": {
"coin": "ETH",
"side": "long",
"size": 0.0012,
"tier": "lite",
"rules": {
"szDecimals": 4,
"max_leverage": 25,
"only_isolated": false,
"min_notional_usd": 10,
"price_max_decimals": 2,
"price_max_sig_figs": 5,
"max_leverage_at_size": 25
},
"issues": [
{
"msg": "order value $3.70 is below Hyperliquid's $10 minimum",
"code": "min_notional"
},
{
"fix": 0.0012,
"msg": "size has 7 decimals; this coin allows 4 (szDecimals)",
"code": "size_decimals"
},
{
"fix": 3000.1,
"msg": "price has 3 decimals; max for this coin is 2",
"code": "price_tick"
},
{
"fix": 25,
"msg": "leverage 60x is above the 25x maximum for this coin at $4 notional",
"code": "leverage"
}
],
"margin": "cross",
"verdict": "REJECT_LIKELY",
"leverage": 60,
"warnings": [
{
"msg": "limit buy above mark by 25.37%: fills immediately as taker",
"code": "marketable_limit"
}
],
"checked_at": "2026-10-23T19:20:07.798Z",
"confidence": "high",
"disclaimer": "Not financial advice; the exchange decides whether an order is accepted. PerpCheck is a read-only pre-trade check: it never places, signs or holds orders, has no custody and never asks for keys.",
"order_type": "limit",
"reduce_only": false,
"notional_usd": 3.7,
"sources_failed": []
}
}
},
"schema": {
"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"
},
"queryParams": {
"type": "object",
"required": [
"coin",
"side"
],
"properties": {
"coin": {
"type": "string",
"description": "Hyperliquid main-dex perp name, e.g. BTC, ETH, SOL, HYPE, kPEPE"
},
"side": {
"enum": [
"long",
"short",
"buy",
"sell"
],
"type": "string",
"description": "long/buy or short/sell"
},
"size": {
"type": "string",
"description": "Order size in coins, exactly as you would send it (decimals are checked), e.g. 0.001. Give size or notional."
},
"price": {
"type": "string",
"description": "Limit price exactly as you would send it (tick rule is checked). Omit for a market order (then taker impact is estimated from the L2 book)."
},
"margin": {
"enum": [
"cross",
"isolated"
],
"type": "string",
"description": "cross (default) or isolated"
},
"leverage": {
"type": "number",
"description": "Leverage, e.g. 10 (default 1)"
},
"notional": {
"type": "number",
"description": "Order value in USD (instead of size), e.g. 100"
},
"reduceOnly": {
"type": "boolean",
"description": "true if the order only reduces a position (exempt from the minimum and OI cap)"
}
}
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
}Provenance
- Seen in the source catalog
- 2026-10-24 22:10Z
- Last indexed by Roundhouse
- 2026-10-26 20:46Z
- Last enriched (probe, favicon, geo)
- 2026-10-25 11:45Z
- x402 version
- 2
- Max timeout
- 120s
- Liveness probe
- HTTP 402
Hand this page to an agent
Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.
GET api.roundhouseai.io/v0/endpoints
This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 5 snapshots so far. Verified volume counts only settlements with an on-chain EIP-3009 marker.
Show the promptHide the prompt
Using Roundhouse, look up the x402 service PerpCheck by YourAITools and tell me whether it is worth paying: what a call costs, whether the endpoint answered when last probed, and what its payment record actually shows. curl -s 'https://api.roundhouseai.io/v0/endpoints?q=PerpCheck%20by%20YourAITools' curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>' Then call it: read the price from the live 402 at https://api.youraitools.co/perpcheck/v1/lite, never from a cached figure, and pay with an x402 client. The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except /v0/unified* and /v0/endpoints. Either pay over x402 (mint a personal key for $0.01 at GET https://api.roundhouseai.io/v0/test/x402), or ask me for an organization key, which I create at https://roundhouseai.io/dashboard/connections. If you have neither, ask before going further. If you do not have Roundhouse tools or skills installed, read https://roundhouseai.io/skill.md first — it is the whole procedure.