Skip to content

加密数据 API ​

Surf 已于 2026-09-06 下线

本页原先介绍的 Surf 加密数据服务已由上游在 2026-09-06 下线。所有 /v1/marketplace/surf/* 路径现在返回 404 service no longer available: surf, 既不能调用,也不会收费。

原来用它做的事情由下面三个在线服务承接:DeFi(TVL、收益率、链)、DEX 兑换报价、现货价格。 预测市场请使用专门的 预测市场 API。

需求服务基础 URL价格
DeFi TVL、链、收益率、协议详情、代币价格DeFi(DefiLlama)/v1/marketplace/defi$0.0055/次
DEX 兑换价格与报价、无 Gas 兑换DEX(0x)/v1/marketplace/dex$0.0011/次
加密货币、外汇、大宗商品的现货价格与历史Markets/v1/marketplace/markets$0.0011/次
Polymarket、Kalshi 等预测市场/v1/marketplace/prediction$0.00935/次

价格为 2026-09-29 实测的 x402 报价。每次调用的准确扣费见 402 挑战中的 accepts[].amount(单位 micro-USDC)以及响应里的 price.amount。

本页三个服务均只支持 GET。

认证 ​

两种方式均支持 — 所有请求通过 x402 链上结算:

方式Header描述
API KeyAuthorization: Bearer sk-...平台自动从你的 HD 钱包签署 x402
私钥(x402)SDK 自动处理Agent 直接用自己的钱包签署 x402

详见 Agent 支付(x402)。

DeFi(DefiLlama) ​

基础 URL: https://api.jarvisclaw.ai/v1/marketplace/defi

方法路径返回
GET/protocols所有协议及 TVL、链分布
GET/protocol/{slug}单个协议的 TVL 历史与元数据
GET/chains各链 TVL
GET/yields各协议资金池收益率(APY、TVL)——响应很大
GET/prices/{coins}代币价格,例如 coingecko:ethereum,coingecko:bitcoin

未知路径返回 404,响应体里列出可用端点。

DEX(0x) ​

基础 URL: https://api.jarvisclaw.ai/v1/marketplace/dex

方法路径返回
GET/price参考兑换价格(不锁定)
GET/quote可执行的兑换报价
GET/gasless/price无 Gas 兑换参考价格
GET/gasless/quote无 Gas 兑换可执行报价
GET/gasless/status/{trade_hash}已提交无 Gas 交易的状态
GET/gasless/approval-tokens支持无 Gas 授权的代币
GET/gasless/chains支持无 Gas 兑换的链

/price 与 /quote 需要 chainId、sellToken、buyToken、sellAmount(卖出代币的最小单位)。

Markets(现货价格) ​

基础 URL: https://api.jarvisclaw.ai/v1/marketplace/markets

方法路径返回
GET/crypto/list支持的加密货币代码
GET/crypto/price/{symbol}最新价格,例如 BTC-USD
GET/crypto/history/{symbol}价格历史
GET/fx/list、/fx/price/{pair}、/fx/history/{pair}外汇同上,例如 EUR-USD
GET/commodity/list、/commodity/price/{symbol}、/commodity/history/{symbol}大宗商品同上,例如 XAU-USD

代码示例 ​

bash
# BTC spot price
curl "https://api.jarvisclaw.ai/v1/marketplace/markets/crypto/price/BTC-USD" \
  -H "Authorization: Bearer sk-..."

# TVL per chain
curl "https://api.jarvisclaw.ai/v1/marketplace/defi/chains" \
  -H "Authorization: Bearer sk-..."

# Swap price: 1 USDC -> WETH on Base
curl "https://api.jarvisclaw.ai/v1/marketplace/dex/price?chainId=8453&sellToken=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913&buyToken=0x4200000000000000000000000000000000000006&sellAmount=1000000" \
  -H "Authorization: Bearer sk-..."
python
from jarvisclaw import MarketplaceClient

# Hex private key -> USDC on Base; a base58 keypair -> USDC on Solana.
client = MarketplaceClient(private_key="0x<evm-private-key>")

btc = client.call("markets", "/crypto/price/BTC-USD")
print(btc["price"])

chains = client.call("defi", "/chains")
print(chains[0]["name"], chains[0]["tvl"])

quote = client.call("dex", "/price", params={
    "chainId": "8453",
    "sellToken": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",  # USDC
    "buyToken": "0x4200000000000000000000000000000000000006",   # WETH
    "sellAmount": "1000000",
})
print(quote["buyAmount"])
go
package main

import (
    "context"
    "fmt"
    jc "github.com/api-jarvisclaw/go-sdk/v2"
)

func main() {
    ctx := context.Background()
    mc, _ := jc.NewMarketplaceClient(jc.WithPrivateKey("0x<evm-private-key>"))

    btc, _ := mc.Call(ctx, "markets", "/crypto/price/BTC-USD", nil)
    fmt.Println(btc["price"])

    quote, _ := mc.Call(ctx, "dex", "/price", jc.WithParams(map[string]string{
        "chainId":    "8453",
        "sellToken":  "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "buyToken":   "0x4200000000000000000000000000000000000006",
        "sellAmount": "1000000",
    }))
    fmt.Println(quote["buyAmount"])
}

Surf 原有但暂无替代的能力 ​

链上 SQL、钱包标签、社交/CT 热度、VC 基金数据和 Surf 新闻流目前在平台上没有在线替代。 上游表示正在寻找新供应商。在替代发布之前,/v1/marketplace/surf/* 下的调用都返回 404,且从不扣费。

错误 ​

状态码含义处理
402需要 x402 支付完成支付挑战,或使用有 USDC 余额的 API Key 调用
404未知路径,或服务已下线(surf)使用上面表格中的路径
429限流退避后按指数延迟重试