B

OneSource - Pay-per-call Ethereum RPC for Agents — MPP Grade B

blockchaindatadeveloper-tools
Preview responses and set spending limits for this service through use.mpp.land Free budget controls, response samples, and reliability routing.

Compliance Checks

All paid ops declare 402 response MUST 10pt
All x-payment-info valid MUST 10pt
Challenge has Cache-Control: no-store MUST 5pt
- Challenge digest on POST SHOULD 3pt
Challenge has expires SHOULD 3pt
Challenge has Problem Details SHOULD 2pt
Challenge has required params MUST 5pt
Challenge has WWW-Authenticate MUST 5pt
Challenge returns 402 MUST 10pt
Correct Content-Type MUST 5pt
Has Cache-Control on discovery SHOULD 5pt
Has input schemas SHOULD 5pt
Has llms.txt SHOULD 5pt
Has /openapi.json at root MUST 10pt
Has required top-level fields MUST 10pt
Served over HTTPS MUST 10pt
Uses standard categories SHOULD 2pt
1 issue
  • OpenAPI doc exceeds 64KB limit (106598 bytes)

Paid Operations (25)

GET /api/chain/allowance dynamic
ERC20 allowance via allowance (eth_call) - how much a spender is approved to move from an owner's wallet

Returns how much of an ERC20 token a spender is approved to transfer from an owner via eth_call on allowance(owner, spender). Use before calling transferFrom, or to audit outstanding approvals for security review.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string Yes ERC20 contract address
owner query string Yes Token owner address
spender query string Yes Approved spender address
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/block-number dynamic
Latest Ethereum block height - current chain tip via eth_blockNumber

Returns the latest mined Ethereum block height via eth_blockNumber against a live node. No caching - every call queries the upstream RPC fresh. Use this to sync an agent to the chain tip, to detect progress or stalls, or as a cheap liveness ping before issuing more expensive RPC calls.

Amount
map[amount:0.001 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.001 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
network query string No Blockchain network (currently only "ethereum" mainnet)

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/block/{number} dynamic
Fetch an Ethereum block header and transaction hashes by number, tag, or hex via eth_getBlockByNumber

Returns the block header plus its transaction hashes for a given block number, tag (latest, pending, safe, finalized), or hex block number via eth_getBlockByNumber. Live from the upstream RPC node.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
number path Yes Block number (hex or decimal)
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
POST /api/chain/call dynamic
Simulate a read-only Ethereum contract call via eth_call - no transaction sent

Simulates a contract read via eth_call - returns the raw ABI-encoded result without submitting a transaction. Pass 'to' (contract address) and 'data' (ABI-encoded calldata); optional 'from', 'value', and 'block' override the caller, msg.value, and block tag.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
network query string No Blockchain network

Input Schema

FieldTypeRequiredDescription
data string Yes ABI-encoded call data (hex)
from string No Caller address (optional)
to string Yes Target contract address
value string No ETH value in wei (hex, optional)

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/chain-id dynamic
Ethereum chain ID (EIP-155) via eth_chainId - confirm which chain a network is on

Returns the EIP-155 chain ID via eth_chainId, queried live from the upstream RPC node. Verify a backend is serving the expected chain before signing an EIP-155 transaction.

Amount
map[amount:0.001 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.001 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/code/{address} dynamic
Check if an Ethereum address is a contract via eth_getCode - returns deployed bytecode

Returns the deployed bytecode at an address via eth_getCode. Empty bytecode means the address is an EOA (wallet); non-empty means it's a contract. Response includes a bytecode_size field for quick classification.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
address path string Yes Contract or wallet address
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/contract/{address} dynamic
Contract introspection via eth_call - name, symbol, decimals, and ERC20/721/1155 interface support

Introspects a contract via eth_call - probes name(), symbol(), decimals(), and supportsInterface() to report what token standards (ERC20, ERC721, ERC1155) the contract claims to implement. Ideal for classifying an unknown contract.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
address path string Yes Contract address
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/ens/{input} dynamic
ENS resolve - turn a .eth name into an address, or an address into its primary .eth name, via eth_call on OneSource live Ethereum RPC

Resolves a *.eth ENS name to its address (forward lookup) or an address to its primary ENS name (reverse lookup) via eth_call on the ENS Registry and Resolver contracts. Auto-detects direction from the input format.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
input path Yes ENS name (e.g. vitalik.eth) or address (0x...)
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/erc1155-balance dynamic
ERC1155 token balance via balanceOf (eth_call) - how many copies of a token_id a wallet holds

Fetches an account's balance of a specific ERC1155 token_id by eth_call-ing balanceOf(address, uint256). Supports any ERC1155 contract - gaming items, editions, semi-fungible assets.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
address query string Yes Wallet address
contract query string Yes ERC1155 contract address
token_id query string Yes Token ID
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/erc20-balance dynamic
ERC20 token balance for any Ethereum wallet - USDC, USDT, DAI, or any token - via balanceOf (eth_call) on OneSource live Ethereum RPC

Fetches an account's balance of a specific ERC20 token by eth_call-ing balanceOf(address). Returns the raw balance plus the token's decimals and symbol for convenience. Works for any ERC20 contract.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
address query string Yes Wallet address
contract query string Yes ERC20 contract address
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/erc20-transfers dynamic
ERC20 Transfer logs via eth_getLogs - decoded sender, recipient, and amount for a token or wallet

Specialized eth_getLogs query that filters on the ERC20 Transfer(address,address,uint256) topic and optionally narrows to a token contract or a specific wallet (sender or recipient). Decodes the indexed from/to and raw value.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string No ERC20 contract address
address query string No Wallet address filter
from_block query No Start block
to_block query No End block
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/erc721-tokens dynamic
List every ERC721 NFT token_id a wallet owns in a collection via tokenOfOwnerByIndex (eth_call)

Lists every ERC721 token_id held by an owner by combining balanceOf(owner) with tokenOfOwnerByIndex(owner, i) across a batched set of eth_call requests. Requires the contract to implement the ERC721Enumerable extension.

Amount
map[amount:0.008 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.008 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string Yes ERC721 contract address
address query string Yes Wallet address to enumerate tokens for
max query integer No Max tokens to return (default 50)
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
POST /api/chain/estimate-gas dynamic
Estimate the gas a transaction will consume via eth_estimateGas before signing it

Estimates the gas a transaction would consume via eth_estimateGas. Accepts the same 'to', 'data', 'from', 'value' fields as /call. A failing estimate usually means the transaction would revert - use this to pre-flight a complex interaction before paying gas.

Amount
map[amount:0.004 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.004 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
network query string No Blockchain network

Input Schema

FieldTypeRequiredDescription
data string No ABI-encoded call data (hex, optional)
from string No Sender address (optional)
to string No Target address
value string No ETH value in wei (hex, optional)

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/events dynamic
Query Ethereum contract event logs via eth_getLogs - filter by contract, topic, and block range

Queries contract event logs via eth_getLogs with optional filters on contract address, topic0 (event signature hash), and block range. Returns the raw logs - address, topics, data, block_number, tx_hash.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string No Contract address filter
topic query string No Topic0 filter (event signature hash)
from_block query No Start block
to_block query No End block
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/live-balance dynamic
Live wallet balance - native ETH plus any ERC20 tokens in one call via eth_getBalance and balanceOf on OneSource Ethereum RPC

Fetches the wallet's native ETH balance (eth_getBalance) and, when you pass a comma-separated list of ERC20 contract addresses in the optional 'tokens' param, batches a balanceOf eth_call per token alongside symbol() and decimals(). Returns a single snapshot of ETH plus any requested token balances. Live from the upstream RPC node.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
address query string Yes Wallet address
tokens query string No Comma-separated ERC20 contract addresses
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/network-info dynamic
Ethereum network info - chain ID, block height, and gas price in one batched RPC call (eth_chainId + eth_blockNumber + eth_gasPrice)

Batches eth_chainId, eth_blockNumber, and eth_gasPrice into a single round-trip to the upstream RPC node. Use this instead of three separate calls when bootstrapping an agent, probing liveness, or pre-flighting a transaction.

Amount
map[amount:0.001 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.001 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/nft-metadata dynamic
NFT metadata, traits, and image URI for any ERC721 or ERC1155 token - fetched via eth_call with IPFS resolution (OneSource live Ethereum RPC)

Calls tokenURI(tokenId) (ERC721) or uri(tokenId) (ERC1155) via eth_call, resolves ipfs:// URIs through a gateway, and returns the resolved metadata JSON alongside the raw URI. Works for most compliant NFT contracts.

Amount
map[amount:0.008 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.008 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string Yes NFT contract address
token_id query string Yes Token ID
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/nft-owner dynamic
Look up the current owner of an ERC721 NFT by token_id via ownerOf (eth_call)

Returns the current owner of a specific ERC721 NFT via eth_call on ownerOf(tokenId). Reverts for unminted or burned token IDs - the error surfaces as an RPC error.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string Yes NFT contract address
token_id query string Yes Token ID
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/nonce/{address} dynamic
Next transaction nonce for any Ethereum wallet via eth_getTransactionCount - how many txs it has sent

Returns the number of transactions sent from this address via eth_getTransactionCount. Pass block="pending" (default) for the next-nonce an EIP-1559 or legacy transaction should use, or a confirmed tag for historical nonces. Use this to build a correctly-nonced transaction or to diagnose stuck transactions.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
address path string Yes Wallet address
block query No Block tag (default: "pending")
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/pending dynamic
Pending Ethereum block - mempool transactions not yet mined, via eth_getBlockByNumber("pending")

Returns the pending block as seen by the upstream RPC node - transactions that are in the mempool but not yet included on-chain, via eth_getBlockByNumber("pending"). Use this to monitor unconfirmed activity, spot front-running risk, or peek at what a node plans to mine next.

Amount
map[amount:0.010 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.010 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/proxy/{address} dynamic
Detect upgradeable proxy patterns (EIP-1967, UUPS, Transparent) via eth_getStorageAt - returns the implementation address behind a proxy

Reads well-known proxy storage slots via eth_getStorageAt to detect EIP-1967, UUPS, and Transparent proxy patterns, and returns the current implementation address. Also surfaces the admin slot when present.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
address path string Yes Proxy contract address
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/receipt/{hash} dynamic
Transaction receipt via eth_getTransactionReceipt - status, gas, and event logs for a mined Ethereum transaction

Returns the mined transaction receipt - status (success/failed), gas used, effective gas price, emitted event logs, and block inclusion data - via eth_getTransactionReceipt. Returns null if the transaction is pending or unknown to the node.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
hash path string Yes Transaction hash
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/storage dynamic
Read a raw storage slot from any Ethereum contract via eth_getStorageAt

Reads a 32-byte storage slot directly from a contract's storage via eth_getStorageAt. Useful for inspecting EIP-1967 proxy implementation slots, packed variables, and storage layouts that aren't exposed through a public function.

Amount
map[amount:0.005 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.005 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string Yes Contract address
slot query string Yes Storage slot (hex)
block query No Block tag (default: "latest")
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/total-supply dynamic
Total supply of an ERC20 or ERC721 token contract via totalSupply (eth_call)

Returns the total supply of a token contract via eth_call on totalSupply(). Works for ERC20 (raw token units) and ERC721 (count of minted NFTs) contracts that implement the standard.

Amount
map[amount:0.003 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.003 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
contract query string Yes Token contract address
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -
GET /api/chain/tx/{hash} dynamic
Full Ethereum transaction details by hash via eth_getTransactionByHash - from, to, value, calldata, block

Returns the full transaction object - from, to, value, gas, nonce, calldata, block inclusion - via eth_getTransactionByHash. Returns null if the transaction is pending eviction or unknown to the node.

Amount
map[amount:0.008 currency:USD mode:fixed]
Currency
-
Method
Intent
-
402 Declared
Yes
Non-standard x-payment-info fields: payTo: 0x52E29e0d2Aa49bfBfC548C0A9F2196F4aa51f3ea price: map[amount:0.008 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c000000000000000000000b9537d11c60e8b50 intent:charge method:tempo]] map[mpp:map[currency:0x20c0000000000000000000000000000000000000 intent:charge method:tempo]]]

Parameters

NameInTypeRequiredDescription
hash path string Yes Transaction hash
network query string No Blockchain network

Response Schema (200)

FieldTypeDescription
data object Response payload
error [object null] -
meta object -

Payment Methods

Methods
tempo (from challenge)
Intents
charge (from challenge)
Currencies (discovery)
-
Currency (challenge)
pathUSD on Tempo Mainnet Presto (Tempo Mainnet Presto)
Multiple Challenges
Yes

Recipients

  • 0x19B8e99079A5558ff4460357b0a78e14a7F600B7
Per-endpoint breakdown
GET /api/chain/allowance
0x19B8e99079A5558ff4460357b0a78e14a7F600B7
GET /api/chain/block-number
0x19B8e99079A5558ff4460357b0a78e14a7F600B7
GET /api/chain/block/{number}
0x19B8e99079A5558ff4460357b0a78e14a7F600B7
GET /api/chain/chain-id
0x19B8e99079A5558ff4460357b0a78e14a7F600B7
GET /api/chain/code/{address}
0x19B8e99079A5558ff4460357b0a78e14a7F600B7
POST /api/chain/call
0x19B8e99079A5558ff4460357b0a78e14a7F600B7

Security

TLS Version
TLSv1.2
Challenge ID Unique
Yes
Challenge ID Length
43
Digest Binding
-

Uptime

Discovery
Reachable (876ms)
Challenge
Reachable (562ms)
Last Checked

Schema Completeness

Paid Operations
25
With Input Schema
2
With Description
25
23 missing schema
  • GET /api/chain/allowance
  • GET /api/chain/block-number
  • GET /api/chain/block/{number}
  • GET /api/chain/chain-id
  • GET /api/chain/code/{address}
  • GET /api/chain/contract/{address}
  • GET /api/chain/ens/{input}
  • GET /api/chain/erc1155-balance
  • GET /api/chain/erc20-balance
  • GET /api/chain/erc20-transfers
  • GET /api/chain/erc721-tokens
  • GET /api/chain/events
  • GET /api/chain/live-balance
  • GET /api/chain/network-info
  • GET /api/chain/nft-metadata
  • GET /api/chain/nft-owner
  • GET /api/chain/nonce/{address}
  • GET /api/chain/pending
  • GET /api/chain/proxy/{address}
  • GET /api/chain/receipt/{hash}
  • GET /api/chain/storage
  • GET /api/chain/total-supply
  • GET /api/chain/tx/{hash}

Documentation

Homepage
https://onesource.io
API Reference
https://skills.onesource.io/openapi.json
llms.txt
-

Discovery

OpenAPI URL
https://skills.onesource.io/openapi.json
OpenAPI Version
3.1.0
Service Version
1.0.0
Document Size
106598 bytes
Document Hash
262352495f35c7e19a2dce9f1b5ad6d76356f0fb3c81c686e411219ae64daf3e

Version History (1 snapshots)

Grade: F (13%) → B (81%)
Grade: B (81%) → F (13%)
  • document hash changed (no semantic differences detected)
Scan snapshots
Date Grade Score Response Status
2026-05-06 B 81% 874ms Up