x402 List

x402 Protocol Service Directory

Fia Signals

Finance

x402 crypto market-intelligence and token-risk API for autonomous agents, led by a delivery-verified /fear-greed checkout route on Base USDC.

Pay from $0.03 to $1.00 in USDC on Base, settled onchain via the x402 protocol, no signup, no API key needed.

UPTIME 24H 96.2% 7D 84.1% 30D 96.6%
BASE URL https://x402.fiasignals.com WEBSITE https://x402.fiasignals.com ENDPOINTS 7 NETWORK Base ASSET USDC MEMBER SINCE 2026-06-01 MONITORED SINCE 2026-06-01

ASSESSMENT

updated 2h ago

Evidence-backed signals, not a single score. Click any chip for the proof. Measured values stay read-only; unknown is honest.

reliability 96.5%
uptime 24h
95.7%
uptime 7d
84%
uptime 30d
96.5%
uptime 90d
97.9%
response p95
474ms
avg response
332ms
total checks
2,687
compliance A (11/11)

11 of 11 x402 conformance checks pass. Full checklist below.

jump to compliance checklist

price $0.03 to $1.00 (p74 in Finance)
price (min)
$0.03
price (max)
$1.00
category percentile (min)
p74 in Finance
category percentile (max)
p85 in Finance
endpoints / prices
7 / 5
model
tiered
stability
58%
risk clean

No deterministic risk flag. Risk fires only on an exact blocklist match, or a reserved-brand name with a mismatched verified payTo. Never from low uptime, a high price, or a model guess.

traction $1.15 30d · 3 buyers
volume 30d
$1.15
buyers 30d
3
settlements 30d
8
last settlement
2026-07-10
top buyer share
93% of 30d volume
trend 7d vs 30d
0.00x the 30d daily rate
networks
eip155:8453

Conservative undercount: only USDC settlements via facilitators we measure are counted. A measured floor, not an estimate.

Top buyer share is a concentration signal, not part of the ranking score.

WHAT IT DOES

ai-derived

Fia Signals provides financial risk assessment and market data APIs for cryptocurrency trading on the Base network.

category
crypto-risk-data
in
query params
risk-assessmentmarket-datacryptotradingsecuritycompliance

AI-generated summary. The measured data is never altered by it.

ENDPOINTS

Service endpoints with HTTP method, path, description, pricing, and network
METHOD PATH DESCRIPTION PRICE NETWORK ASSET
GET /contract-risk/batch $0.03 Base USDC
GET /fear-greed $0.05 Base USDC
GET /funding $0.20 Base USDC
GET /pre-trade-risk/batch $0.03 Base USDC
GET /prices $0.20 Base USDC
GET /regime $1.00 Base USDC
GET /token-safety/batch $0.03 Base USDC
7 endpoints

REQUEST / RESPONSE EXAMPLE

An unpaid request to GET /contract-risk/batch returns HTTP 402 with the payment terms. Settle onchain via your facilitator, then retry with the X-Payment header.

// request
curl -i 'https://x402.fiasignals.com/contract-risk/batch'
// 402 response (captured by monitor) · 7 payloads · click to expand
[
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "200000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      },
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "200000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://x402.fiasignals.com/funding",
      "mimeType": "application/json",
      "description": "Market funding risk check for autonomous trading agents. Returns top positive perpetual funding rates, a decision summary, funding window timing, evidence fields, and risk framing for enter/hold/avoid decisions. Repeat-buyer market-data ladder: buyer 0x3803...101b paid /prices, /fear-greed, then /basis. /funding is the next adjacent paid route to watch; it is not demand proof until payment evidence or delivered paid response appears."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET"
          },
          "output": {
            "type": "json",
            "example": {
              "count": 10,
              "action": "Avoid crowded long exposure unless basis and setup justify funding cost.",
              "product": "market_funding_risk_check",
              "results": [
                {
                  "symbol": "BTCUSDT",
                  "direction": "positive",
                  "funding_rate_pct": 0.01,
                  "next_funding_time": "2026-02-25T08:00:00Z"
                }
              ],
              "decision": "CAUTION",
              "evidence": {
                "top_symbol": "BTCUSDT",
                "next_funding_utc": "2026-02-25 08:00:00 UTC",
                "max_funding_rate_pct": 0.01
              },
              "timestamp": "2026-02-25T07:00:00+00:00"
            }
          },
          "positioning": "Use after /basis when an agent needs to decide whether perp funding makes a trade expensive, attractive, or worth avoiding.",
          "conversion_copy": "Repeat-buyer market-data ladder: buyer 0x3803...101b paid /prices, /fear-greed, then /basis. /funding is the next adjacent paid route to watch; it is not demand proof until payment evidence or delivered paid response appears.",
          "buyer_conversion_proof": {
            "url": "https://x402.fiasignals.com/basis",
            "asset": "Base USDC",
            "route": "/basis",
            "method": "GET or HEAD",
            "network": "eip155:8453",
            "latest_tx": "0xcdd795d053277ddea1c89703300a7e5ce2e1b9416d96401d064d9cf38bae2138",
            "price_usdc": "0.25",
            "backup_route": "/dominance",
            "booking_rule": "/funding remains measurement-only until a payment header, paid 200, settlement, buyer hash, or delivery anomaly appears.",
            "latest_buyer": "0x3803A19280DeeFe533D177C4A169412BD341101b",
            "route_family": [
              "/prices",
              "/fear-greed",
              "/basis"
            ],
            "strict_delivery_yes": 1,
            "paid_attempts_observed": 1,
            "paid_delivery_failures": 0,
            "latest_strict_delivery_utc": "2026-05-26T15:15:57Z",
            "next_adjacent_route_to_measure": "/funding"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "method"
              ],
              "properties": {
                "queryParams": {
                  "type": "object",
                  "properties": {
                    "format": {
                      "enum": [
                        "json",
                        "minimal"
                      ],
                      "type": "string",
                      "default": "json"
                    }
                  }
                }
              }
            },
            "output": {
              "type": "object",
              "properties": {
                "example": {
                  "type": "object",
                  "description": "JSON response with market intelligence data"
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "200000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://x402.fiasignals.com/prices",
      "mimeType": "application/json",
      "description": "Real-time spot prices for up to 20 crypto symbols in a single call. Pass ?symbols=BTC,ETH,SOL or leave blank for top 20 by volume. Returns price, 24h change %, 24h high/low."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET"
          },
          "output": {
            "type": "json",
            "example": {
              "count": 3,
              "results": [
                {
                  "price": 68841.88,
                  "symbol": "BTCUSDT",
                  "low_24h": 64000,
                  "high_24h": 69500,
                  "change_24h_pct": 7.4
                },
                {
                  "price": 2080.69,
                  "symbol": "ETHUSDT",
                  "low_24h": 1845,
                  "high_24h": 2090,
                  "change_24h_pct": 12.33
                },
                {
                  "price": 88.88,
                  "symbol": "SOLUSDT",
                  "low_24h": 77,
                  "high_24h": 89,
                  "change_24h_pct": 14.01
                }
              ],
              "timestamp": "2026-02-25T19:00:00+00:00"
            }
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "method"
              ],
              "properties": {
                "queryParams": {
                  "type": "object",
                  "properties": {
                    "format": {
                      "enum": [
                        "json",
                        "minimal"
                      ],
                      "type": "string",
                      "default": "json"
                    }
                  }
                }
              }
            },
            "output": {
              "type": "object",
              "properties": {
                "example": {
                  "type": "object",
                  "description": "JSON response with market intelligence data"
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "1000000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      },
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "1000000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://x402.fiasignals.com/regime",
      "mimeType": "application/json",
      "description": "Bitcoin and crypto market regime API for trading agents. Returns volatility regime, RSI, ADX, confidence score, and actionable recommendation for bots deciding whether to trade, wait, hedge, or reduce exposure."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "chain": "base",
              "token_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "adx": 34.1,
              "rsi": 62.4,
              "regime": "TRENDING UP",
              "timestamp": "2026-02-25T07:00:00+00:00",
              "confidence": "HIGH (0.85)",
              "recommendation": "Favour longs with trailing stops. Grid bot above current price."
            }
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "method"
              ],
              "properties": {
                "queryParams": {
                  "type": "object",
                  "properties": {
                    "format": {
                      "enum": [
                        "json",
                        "minimal"
                      ],
                      "type": "string",
                      "default": "json"
                    }
                  }
                }
              }
            },
            "output": {
              "type": "object",
              "properties": {
                "example": {
                  "type": "object",
                  "description": "JSON response with market intelligence data"
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "30000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      },
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "500000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://x402.fiasignals.com/pre-trade-risk/batch",
      "mimeType": "application/json",
      "description": "Fia Signals x402 Base USDC token safety and smart contract risk batch API for buyer agents, trading bots, swap routers, and A2A commerce. Screen up to 5 Base/EVM contracts before a swap for contract risk, rugpull, honeypot, liquidity, and market risk. Returns safe/risky/blocked verdicts, scores, warnings, GoPlus and DexScreener evidence, aggregate counts, and a non-breaking 0.50 USDC bundled-risk-pack payable tier in one paid pre-swap call."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "chain": "base",
              "token_addresses": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "count": 3,
              "results": [
                {
                  "action": "PROCEED",
                  "verdict": "safe",
                  "safety_score": 90
                }
              ],
              "summary": {
                "safe": 1,
                "risky": 1,
                "blocked": 1
              }
            }
          },
          "upsell": {
            "id": "bundled-risk-pack",
            "name": "Fia Signals Bundled Risk Pack",
            "status": "payable_x402_route_live",
            "delivers": [
              "combined token safety and smart contract risk summary",
              "up to 5 Base/EVM contracts from the existing batch payload",
              "ranked proceed/caution/reject queue",
              "aggregate blocker reasons and warnings",
              "buyer-facing next-action memo for swap routers",
              "strict proof fields for revenue reconciliation"
            ],
            "price_usdc": "0.50",
            "buyer_action": "Use this as the next paid step after any /token-safety, /token-safety/batch, /pre-trade-risk, or /pre-trade-risk/batch hit. Do not buy another isolated starter check when the agent needs a ranked swap decision packet.",
            "truth_status": "not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job",
            "payable_route": "https://x402.fiasignals.com/bundled-risk-pack",
            "starter_routes": [
              "https://x402.fiasignals.com/token-safety/batch",
              "https://x402.fiasignals.com/contract-risk/batch"
            ],
            "amount_raw_usdc": "500000",
            "payable_methods": [
              "GET",
              "POST"
            ],
            "accepts_ordering": "starter_first_bundle_second",
            "non_breaking_policy": "Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.",
            "target_buyer_signal": "Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.",
            "starter_accepts_index": 0,
            "preferred_accepts_index": 1,
            "starter_amount_raw_usdc": "30000",
            "preferred_selection_hint": "Starter buyers can use accepts[0] at 30000 raw USDC. Repeat buyers, multi-token buyers, and agents that already know they need a combined risk memo should select accepts[1] at 500000 raw USDC or pay the distinct bundled-risk-pack route.",
            "preferred_amount_raw_usdc": "500000",
            "recommended_for_repeat_buyers": true
          },
          "dedup_alert_discipline": {
            "rule": "one reconcile per unique x402 tx_ref across x402_events and x402_sales",
            "watcher": "tools/x402_bundle_watch.py",
            "suppress": "duplicate alerts for the same tx_ref are operating noise, not new revenue",
            "fallback_key": "payment_proof_fingerprint, then endpoint+buyer+amount+timestamp_bucket when tx_ref is missing",
            "dedupe_priority": [
              "tx_ref",
              "payment_proof_fingerprint",
              "endpoint+buyer+amount+timestamp_bucket"
            ]
          }
        },
        "schema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "required": [
            "input"
          ],
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "queryParams"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "GET",
                    "POST"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "type": "object",
                  "required": [
                    "token_addresses"
                  ],
                  "properties": {
                    "chain": {
                      "type": "string",
                      "default": "base"
                    },
                    "token_addresses": {
                      "type": "string",
                      "description": "Comma-separated EVM token addresses, maximum 5."
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type",
                "example"
              ],
              "properties": {
                "chain": {
                  "type": "string"
                },
                "count": {
                  "type": "integer",
                  "maximum": 5,
                  "minimum": 1
                },
                "limit": {
                  "type": "integer",
                  "const": 5
                },
                "results": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "action": {
                        "type": "string"
                      },
                      "reasons": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "sources": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "verdict": {
                        "enum": [
                          "safe",
                          "risky",
                          "blocked",
                          "error"
                        ],
                        "type": "string"
                      },
                      "warnings": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "confidence": {
                        "type": "string"
                      },
                      "raw_checks": {
                        "type": "object"
                      },
                      "safety_score": {
                        "type": "integer",
                        "maximum": 100,
                        "minimum": 0
                      }
                    }
                  }
                },
                "summary": {
                  "type": "object",
                  "properties": {
                    "safe": {
                      "type": "integer"
                    },
                    "error": {
                      "type": "integer"
                    },
                    "risky": {
                      "type": "integer"
                    },
                    "blocked": {
                      "type": "integer"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "30000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      },
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "500000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://x402.fiasignals.com/token-safety/batch",
      "mimeType": "application/json",
      "description": "Fia Signals x402 Base USDC token safety and smart contract risk batch API for buyer agents, trading bots, swap routers, and A2A commerce. Screen up to 5 Base/EVM contracts before a swap for contract risk, rugpull, honeypot, liquidity, and market risk. Returns safe/risky/blocked verdicts, scores, warnings, GoPlus and DexScreener evidence, aggregate counts, and a non-breaking 0.50 USDC bundled-risk-pack payable tier in one paid pre-swap call."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "chain": "base",
              "token_addresses": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "chain": "base",
              "count": 2,
              "limit": 5,
              "results": [
                {
                  "action": "PROCEED",
                  "sources": [
                    "GoPlus",
                    "DexScreener"
                  ],
                  "verdict": "safe",
                  "confidence": "medium",
                  "safety_score": 90
                }
              ],
              "summary": {
                "safe": 2,
                "error": 0,
                "risky": 0,
                "blocked": 0
              }
            }
          },
          "upsell": {
            "id": "bundled-risk-pack",
            "name": "Fia Signals Bundled Risk Pack",
            "status": "payable_x402_route_live",
            "delivers": [
              "combined token safety and smart contract risk summary",
              "up to 5 Base/EVM contracts from the existing batch payload",
              "ranked proceed/caution/reject queue",
              "aggregate blocker reasons and warnings",
              "buyer-facing next-action memo for swap routers",
              "strict proof fields for revenue reconciliation"
            ],
            "price_usdc": "0.50",
            "buyer_action": "Use this as the next paid step after any /token-safety, /token-safety/batch, /pre-trade-risk, or /pre-trade-risk/batch hit. Do not buy another isolated starter check when the agent needs a ranked swap decision packet.",
            "truth_status": "not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job",
            "payable_route": "https://x402.fiasignals.com/bundled-risk-pack",
            "starter_routes": [
              "https://x402.fiasignals.com/token-safety/batch",
              "https://x402.fiasignals.com/contract-risk/batch"
            ],
            "amount_raw_usdc": "500000",
            "payable_methods": [
              "GET",
              "POST"
            ],
            "accepts_ordering": "starter_first_bundle_second",
            "non_breaking_policy": "Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.",
            "target_buyer_signal": "Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.",
            "starter_accepts_index": 0,
            "preferred_accepts_index": 1,
            "starter_amount_raw_usdc": "30000",
            "preferred_selection_hint": "Starter buyers can use accepts[0] at 30000 raw USDC. Repeat buyers, multi-token buyers, and agents that already know they need a combined risk memo should select accepts[1] at 500000 raw USDC or pay the distinct bundled-risk-pack route.",
            "preferred_amount_raw_usdc": "500000",
            "recommended_for_repeat_buyers": true
          },
          "dedup_alert_discipline": {
            "rule": "one reconcile per unique x402 tx_ref across x402_events and x402_sales",
            "watcher": "tools/x402_bundle_watch.py",
            "suppress": "duplicate alerts for the same tx_ref are operating noise, not new revenue",
            "fallback_key": "payment_proof_fingerprint, then endpoint+buyer+amount+timestamp_bucket when tx_ref is missing",
            "dedupe_priority": [
              "tx_ref",
              "payment_proof_fingerprint",
              "endpoint+buyer+amount+timestamp_bucket"
            ]
          }
        },
        "schema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "required": [
            "input"
          ],
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "queryParams"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "GET",
                    "POST"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "type": "object",
                  "required": [
                    "token_addresses"
                  ],
                  "properties": {
                    "chain": {
                      "type": "string",
                      "default": "base"
                    },
                    "token_addresses": {
                      "type": "string",
                      "description": "Comma-separated EVM token addresses, maximum 5."
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type",
                "example"
              ],
              "properties": {
                "chain": {
                  "type": "string"
                },
                "count": {
                  "type": "integer",
                  "maximum": 5,
                  "minimum": 1
                },
                "limit": {
                  "type": "integer",
                  "const": 5
                },
                "results": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "action": {
                        "type": "string"
                      },
                      "reasons": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "sources": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "verdict": {
                        "enum": [
                          "safe",
                          "risky",
                          "blocked",
                          "error"
                        ],
                        "type": "string"
                      },
                      "warnings": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "confidence": {
                        "type": "string"
                      },
                      "raw_checks": {
                        "type": "object"
                      },
                      "safety_score": {
                        "type": "integer",
                        "maximum": 100,
                        "minimum": 0
                      }
                    }
                  }
                },
                "summary": {
                  "type": "object",
                  "properties": {
                    "safe": {
                      "type": "integer"
                    },
                    "error": {
                      "type": "integer"
                    },
                    "risky": {
                      "type": "integer"
                    },
                    "blocked": {
                      "type": "integer"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "50000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      },
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "50000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://x402.fiasignals.com/fear-greed",
      "mimeType": "application/json",
      "description": "Crypto Fear and Greed Index API - real-time market sentiment indicator for Bitcoin and crypto. Contrarian trading signal based on market psychology. HEAD/GET paid-compatible /fear-greed route on Base USDC; delivery-gated; last strict paid delivery YES at 2026-06-14T00:15:47Z; 3 paid attempts, 3 delivery YES, 0 paid delivery failures."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET"
          },
          "output": {
            "description": "JSON with value (0-100), classification (Extreme Fear/Fear/Neutral/Greed/Extreme Greed), previous_close value, change since previous day, and ISO timestamp."
          },
          "conversion_copy": "HEAD/GET paid-compatible /fear-greed route on Base USDC; delivery-gated; last strict paid delivery YES at 2026-06-14T00:15:47Z; 3 paid attempts, 3 delivery YES, 0 paid delivery failures.",
          "buyer_conversion_proof": {
            "url": "https://x402.fiasignals.com/fear-greed",
            "asset": "Base USDC",
            "route": "/fear-greed",
            "method": "GET or HEAD",
            "network": "eip155:8453",
            "latest_tx": "0x0ca44cc649fdc9c5c785014be1f549a64fe9523638c824d7e59ad47639516c27",
            "price_usdc": "0.05",
            "booking_rule": "Payment without delivery blocks revenue booking; payment plus delivery is eligible for strict ledger review.",
            "latest_buyer": "0x3803A19280DeeFe533D177C4A169412BD341101b",
            "strict_delivery_yes": 3,
            "paid_attempts_observed": 3,
            "paid_delivery_failures": 0,
            "latest_strict_delivery_utc": "2026-06-14T00:15:47Z"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "method"
              ],
              "properties": {
                "queryParams": {
                  "type": "object",
                  "properties": {
                    "format": {
                      "enum": [
                        "json",
                        "minimal"
                      ],
                      "type": "string",
                      "default": "json"
                    }
                  }
                }
              }
            },
            "output": {
              "type": "object",
              "properties": {
                "example": {
                  "type": "object",
                  "description": "JSON response with market intelligence data"
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "30000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      },
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F",
        "amount": "500000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://x402.fiasignals.com/contract-risk/batch",
      "mimeType": "application/json",
      "description": "Fia Signals x402 Base USDC token safety and smart contract risk batch API for buyer agents, trading bots, swap routers, and A2A commerce. Screen up to 5 Base/EVM contracts before a swap for contract risk, rugpull, honeypot, liquidity, and market risk. Returns safe/risky/blocked verdicts, scores, warnings, GoPlus and DexScreener evidence, aggregate counts, and a non-breaking 0.50 USDC bundled-risk-pack payable tier in one paid pre-swap call."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "chain": "base",
              "token_addresses": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "chain": "base",
              "count": 2,
              "limit": 5,
              "results": [
                {
                  "action": "PROCEED",
                  "sources": [
                    "GoPlus",
                    "DexScreener"
                  ],
                  "verdict": "safe",
                  "confidence": "medium",
                  "safety_score": 90
                }
              ],
              "summary": {
                "safe": 2,
                "error": 0,
                "risky": 0,
                "blocked": 0
              }
            }
          },
          "upsell": {
            "id": "bundled-risk-pack",
            "name": "Fia Signals Bundled Risk Pack",
            "status": "payable_x402_route_live",
            "delivers": [
              "combined token safety and smart contract risk summary",
              "up to 5 Base/EVM contracts from the existing batch payload",
              "ranked proceed/caution/reject queue",
              "aggregate blocker reasons and warnings",
              "buyer-facing next-action memo for swap routers",
              "strict proof fields for revenue reconciliation"
            ],
            "price_usdc": "0.50",
            "buyer_action": "Use this as the next paid step after any /token-safety, /token-safety/batch, /pre-trade-risk, or /pre-trade-risk/batch hit. Do not buy another isolated starter check when the agent needs a ranked swap decision packet.",
            "truth_status": "not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job",
            "payable_route": "https://x402.fiasignals.com/bundled-risk-pack",
            "starter_routes": [
              "https://x402.fiasignals.com/token-safety/batch",
              "https://x402.fiasignals.com/contract-risk/batch"
            ],
            "amount_raw_usdc": "500000",
            "payable_methods": [
              "GET",
              "POST"
            ],
            "accepts_ordering": "starter_first_bundle_second",
            "non_breaking_policy": "Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.",
            "target_buyer_signal": "Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.",
            "starter_accepts_index": 0,
            "preferred_accepts_index": 1,
            "starter_amount_raw_usdc": "30000",
            "preferred_selection_hint": "Starter buyers can use accepts[0] at 30000 raw USDC. Repeat buyers, multi-token buyers, and agents that already know they need a combined risk memo should select accepts[1] at 500000 raw USDC or pay the distinct bundled-risk-pack route.",
            "preferred_amount_raw_usdc": "500000",
            "recommended_for_repeat_buyers": true
          },
          "dedup_alert_discipline": {
            "rule": "one reconcile per unique x402 tx_ref across x402_events and x402_sales",
            "watcher": "tools/x402_bundle_watch.py",
            "suppress": "duplicate alerts for the same tx_ref are operating noise, not new revenue",
            "fallback_key": "payment_proof_fingerprint, then endpoint+buyer+amount+timestamp_bucket when tx_ref is missing",
            "dedupe_priority": [
              "tx_ref",
              "payment_proof_fingerprint",
              "endpoint+buyer+amount+timestamp_bucket"
            ]
          }
        },
        "schema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "required": [
            "input"
          ],
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "queryParams"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "GET",
                    "POST"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "type": "object",
                  "required": [
                    "token_addresses"
                  ],
                  "properties": {
                    "chain": {
                      "type": "string",
                      "default": "base"
                    },
                    "token_addresses": {
                      "type": "string",
                      "description": "Comma-separated EVM token addresses, maximum 5."
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type",
                "example"
              ],
              "properties": {
                "chain": {
                  "type": "string"
                },
                "count": {
                  "type": "integer",
                  "maximum": 5,
                  "minimum": 1
                },
                "limit": {
                  "type": "integer",
                  "const": 5
                },
                "results": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "action": {
                        "type": "string"
                      },
                      "reasons": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "sources": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "verdict": {
                        "enum": [
                          "safe",
                          "risky",
                          "blocked",
                          "error"
                        ],
                        "type": "string"
                      },
                      "warnings": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "confidence": {
                        "type": "string"
                      },
                      "raw_checks": {
                        "type": "object"
                      },
                      "safety_score": {
                        "type": "integer",
                        "maximum": 100,
                        "minimum": 0
                      }
                    }
                  }
                },
                "summary": {
                  "type": "object",
                  "properties": {
                    "safe": {
                      "type": "integer"
                    },
                    "error": {
                      "type": "integer"
                    },
                    "risky": {
                      "type": "integer"
                    },
                    "blocked": {
                      "type": "integer"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  }
]

UPTIME

07-19 · uptime 96.2% · 292ms avg07-1907-19
RESPONSE TIME
07-19 · 292ms avg07-19 · 292ms avg07-1907-19
24h UPTIME 96.2%
UPTIME 24H 96.2%
AVG RESP 332ms
TOTAL CHECKS 2,693

RECENT CHECKS

TIME STATUS RESP
● OK 275ms
● OK 303ms
● OK 301ms
● OK 270ms
● OK 307ms
● OK 281ms
● OK 343ms
● OK 322ms
● OK 261ms
● OK 283ms
● OK 289ms
● OK 335ms
○ DOWN 113ms
● OK 328ms
● OK 275ms
● OK 210ms
● OK 303ms
● OK 311ms

OVER TIME

All charts share the 24h window selected here. Every series is also served as JSON at /api/v1/services/fia-signals/price, /scores, /volume and /buyers. On-chain volume and distinct buyers are measured over the service's settlement address and are a conservative undercount (only settlements that reach a measured facilitator are counted).

PRICE (captured 402, USD)
07-18 · $0.2007-19 · $0.20$0.2007-1807-19

Median across 7 endpoints. Use the selector to isolate one.

SUB-SCORES (uptime + x402 compliance)
07-18 uptime: 96.6% compliance: 100% checks07-19 uptime: 96.5% compliance: 100% checksuptimecompliance07-1807-19
VOLUME (on-chain settlement, USD)
no on-chain volume in the last 24h
DISTINCT BUYERS
no distinct buyers in the last 24h

COMPLIANCE

11/11 checks pass · grade A
  • 402 payload captured
  • accepts[] array present
  • payTo address recoverable
  • payTo at accepts[0].payTo (conformant shape)
  • payTo is a valid on-chain address
  • atomic price declared
  • atomic price in a sane range
  • asset (token) address declared
  • network resolves to CAIP-2
  • payment scheme declared
  • served over HTTPS

EMBED THIS BADGE

Show that Fia Signals is monitored on x402-list. Paste this on your site or README, it links back to this live listing.

Fia Signals listed on x402-list
status
Fia Signals uptime on x402-list
live uptime
// HTML
<a href="https://x402-list.com/services/fia-signals?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/fia-signals.svg" alt="Fia Signals listed on x402-list" height="28">
</a>
// Markdown
[![Fia Signals on x402-list](https://x402-list.com/badge/fia-signals.svg)](https://x402-list.com/services/fia-signals?utm_source=badge&utm_medium=referral&utm_campaign=embed)
// HTML · live uptime variant
<a href="https://x402-list.com/services/fia-signals?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/fia-signals.svg?data=uptime" alt="Fia Signals uptime on x402-list" height="28">
</a>

RUN THIS SERVICE?

Keep this listing accurate: propose changes to the name, description, website, category or add new endpoints to monitor. Ownership is verified with a domain proof and every change is reviewed manually; measured data stays read-only.

[ update this listing ]