← Back to marketplace

OneSource - Pay-per-call Ethereum RPC for Agents

external

Pay-per-call Ethereum RPC for AI agents. Live block, balance, contract, NFT, transaction, and event data served directly from mainnet nodes. No API keys, no accounts - every request settles in USDC on Base via x402.

by Onesource25 endpoints100% uptime624ms avg

Price

from $0.0010

up to $0.0100 per request

Network

base

Category

ai

On-chain txns

1

Uptime

100%

Avg latency

624ms

Checks

160

Status

Healthy

Base URL

https://skills.onesource.io

Endpoints (25)

Discovered from on-chain x402 payment activity. Prices shown are per-call in USDC.

POST/api/chain/allowance
base$0.0030

Get ERC20 allowance (owner -> spender) via allowance (eth_call)

POST/api/chain/block-number
base$0.0010

Get the latest block number via eth_blockNumber

POST/api/chain/block/%7Bnumber%7D
base$0.0030

Get a block by number via eth_getBlockByNumber

POST/api/chain/call
base$0.0050

Simulate a contract call via eth_call

POST/api/chain/chain-id
base$0.0010

Get the chain ID via eth_chainId

POST/api/chain/code/%7Baddress%7D
base$0.0030

Get deployed bytecode and detect if an address is a contract via eth_getCode

POST/api/chain/contract/%7Baddress%7D
base$0.0050

Get contract info (name, symbol, decimals, interfaces) via eth_call

POST/api/chain/ens/%7Binput%7D
base$0.0050

Resolve ENS name to address or reverse-resolve via RPC

POST/api/chain/erc1155-balance
base$0.0030

Get ERC1155 token balance via balanceOf (eth_call)

POST/api/chain/erc20-balance
base$0.0030

Get ERC20 token balance via balanceOf (eth_call)

POST/api/chain/erc20-transfers
base$0.0050

Get ERC20 Transfer logs for a token or wallet via eth_getLogs

POST/api/chain/erc721-tokens
base$0.0080

Enumerate ERC721 tokens owned by an address via tokenOfOwnerByIndex (eth_call)

POST/api/chain/estimate-gas
base$0.0040

Estimate gas for a transaction via eth_estimateGas

POST/api/chain/events
base$0.0050

Query contract event logs via eth_getLogs

POST/api/chain/live-balance
base$0.0030

Get live ETH and ERC20 balances for a wallet via RPC

POST/api/chain/network-info
base$0.0010

Get chain ID, latest block, and gas price via RPC (one call)

POST/api/chain/nft-metadata
base$0.0080

Fetch NFT metadata (tokenURI + resolved JSON) via eth_call

POST/api/chain/nft-owner
base$0.0030

Get an ERC721 NFT owner via ownerOf (eth_call)

POST/api/chain/nonce/%7Baddress%7D
base$0.0030

Get the transaction nonce for an address via eth_getTransactionCount

POST/api/chain/pending
base$0.0100

Get the pending block via eth_getBlockByNumber("pending")

POST/api/chain/proxy/%7Baddress%7D
base$0.0050

Detect proxy patterns (EIP-1967, UUPS, Transparent) via eth_getStorageAt

POST/api/chain/receipt/%7Bhash%7D
base$0.0050

Get a transaction receipt via eth_getTransactionReceipt

POST/api/chain/storage
base$0.0050

Read a raw storage slot from a contract via eth_getStorageAt

POST/api/chain/total-supply
base$0.0030

Get ERC20 or ERC721 total supply via totalSupply (eth_call)

POST/api/chain/tx/%7Bhash%7D
base$0.0080

Get transaction details via eth_getTransactionByHash

Payment

Protocolx402 (direct payment, USDC)
Networkbase

How to call

Via APIHub (recommended)No wallet · pay with credits · gasless
# one-time setup
npx @apihubio/cli register
npx @apihubio/cli topup 10

# call it
npx @apihubio/cli call https://skills.onesource.io \
  -X POST \
  -d '{ /* check provider docs for input */ }'

# or save it to Claude/Cursor/Codex
npx @apihubio/cli install
npx @apihubio/cli add https://skills.onesource.io
APIHub pays the provider on your behalf and debits your credit balance for the exact amount. No wallet setup, no gas, no per-call signing.
Via direct x402 (advanced)Bring your own wallet
import { wrapFetchWithPayment } from "@x402/fetch";
import { createWalletClient, http } from "viem";
import { privateKeyToAccount } from "viem/accounts";
import { base } from "viem/chains";

const account = privateKeyToAccount("0xYOUR_PRIVATE_KEY");
const client = createWalletClient({ account, chain: base, transport: http() });
const x402Fetch = wrapFetchWithPayment(client);

const res = await x402Fetch("https://skills.onesource.io", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ /* check provider docs for input */ }),
});
const data = await res.json();
Requires USDC on Base and gas on each call. The @x402/fetch client signs EIP-3009 transferWithAuthorization for each 402 response and retries.

This is an external service not operated by APIHub. Listing data is sourced from public on-chain records and third-party indexes. Payment goes directly to the service provider via the x402 protocol. APIHub does not guarantee availability, accuracy, or quality of external services.