Skip to Content

ERC721 API logo ERC721 API

API for ERC721 (NFT) Contracts. Every ABI item below is callable as its own Spectrum JSON-RPC method. See the Marketplace overview for how the method names are built.

NFT

Method names here carry no chain, so every call must pass chain and the contract address that implements this ABI.

Methods

Functions

Readnamespectrum_erc721api_erc721_call_name

Fetches the name for the asset

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_call_name",
  "params": {
    "args": [],
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Outputs
NameType
output_0string
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
Readsymbolspectrum_erc721api_erc721_call_symbol

Fetches the symbol for the asset

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_call_symbol",
  "params": {
    "args": [],
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Outputs
NameType
output_0string
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
ReadtokenURIspectrum_erc721api_erc721_call_tokenURI

Fetches the URI pointing to the JSON metadata

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_call_tokenURI",
  "params": {
    "args": [
      "0"
    ],
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Inputs
NameType
tokenIduint256
Outputs
NameType
output_0string
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
ReadbalanceOfspectrum_erc721api_erc721_call_balanceOf

Fetches the balance of an address for an asset

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_call_balanceOf",
  "params": {
    "args": [
      "0x0000000000000000000000000000000000000001"
    ],
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Inputs
NameType
owneraddress
Outputs
NameType
output_0uint256
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
ReadownerOfspectrum_erc721api_erc721_call_ownerOf

Fetches the owner of a tokenId

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_call_ownerOf",
  "params": {
    "args": [
      "0"
    ],
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Inputs
NameType
tokenIduint256
Outputs
NameType
output_0address
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
ReadgetApprovedspectrum_erc721api_erc721_call_getApproved

Fetches the single address approved to transfer the token

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_call_getApproved",
  "params": {
    "args": [
      "0"
    ],
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Inputs
NameType
tokenIduint256
Outputs
NameType
output_0address
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
ReadisApprovedForAllspectrum_erc721api_erc721_call_isApprovedForAll

Fetches whether operator may transfer any and all tokens owner holds in this contract

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_call_isApprovedForAll",
  "params": {
    "args": [
      "0x0000000000000000000000000000000000000001",
      "0x0000000000000000000000000000000000000001"
    ],
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Inputs
NameType
owneraddress
operatoraddress
Outputs
NameType
output_0bool
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.

Events

EventApprovalForAllspectrum_erc721api_erc721_getLogs_ApprovalForAll

Event emitted when an approval for all is made

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_getLogs_ApprovalForAll",
  "params": {
    "args": [
      null,
      null,
      null
    ],
    "fromBlock": "latest",
    "toBlock": "latest",
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Event arguments
NameTypeIndexed
owneraddressyes
operatoraddressyes
approvedboolno
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
EventTransferspectrum_erc721api_erc721_getLogs_Transfer

Event emitted when a transfer is made

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_getLogs_Transfer",
  "params": {
    "args": [
      null,
      null,
      null
    ],
    "fromBlock": "latest",
    "toBlock": "latest",
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Event arguments
NameTypeIndexed
fromaddressyes
toaddressyes
tokenIduint256yes
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.
EventApprovalspectrum_erc721api_erc721_getLogs_Approval

Event emitted when an approval is made

curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
  -H "Content-Type: application/json" \
{
  "jsonrpc": "2.0",
  "method": "spectrum_erc721api_erc721_getLogs_Approval",
  "params": {
    "args": [
      null,
      null,
      null
    ],
    "fromBlock": "latest",
    "toBlock": "latest",
    "chain": "ethereum",
    "address": "0x0000000000000000000000000000000000000001"
  },
  "id": 1
}
Event arguments
NameTypeIndexed
owneraddressyes
approvedaddressyes
tokenIduint256yes
Try It
Demo endpoint: one request per second. Get your own endpoint for higher limits.