API reference

Read the activity. NFTs, trades, chains.

Example calls for the public edge that cashback activity is read from. Responses below are samples so you can see the shape.

Base URL in these examples: https://edge.yodes.app. Send Accept: application/json. A node is a generated link. Read routes shown here are unauthenticated samples.
MethodPathUse
GET/v1/networksList chains the edge will route.
GET/v1/nft/{chain}/{contract}/{token}Indexed metadata for one token.
POST/v1/rpc/{chain}JSON-RPC forwarded to the hardened pool.
GET/v1/node/{id}Public status for a node link.

List networks

Returns the chain ids the edge currently routes. Use this before you hard-code a name.

curl https://edge.yodes.app/v1/networks

{
  "networks": [
    {"id": "ethereum", "family": "evm"},
    {"id": "solana", "family": "svm"},
    {"id": "bitcoin", "family": "utxo"},
    {"id": "base", "family": "evm"}
  ]
}

Read an NFT

Metadata, collection, and the chain the index stored. Media URLs may be signed and short-lived.

curl https://edge.yodes.app/v1/nft/ethereum/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d/1

{
  "chain": "ethereum",
  "tokenId": "1",
  "collection": "Bored Ape Yacht Club",
  "cached": true
}

JSON-RPC

The body is standard JSON-RPC. The edge picks a healthy endpoint in the pool for that chain.

curl -X POST https://edge.yodes.app/v1/rpc/ethereum \
  -H "content-type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": "0x1529a3f"
}

Errors

Failures use a small JSON body. Retry 503s. Do not retry 400s until the path or the RPC payload is fixed.

{
  "error": {
    "code": "chain_unavailable",
    "message": "No healthy RPC endpoint for this chain."
  }
}