api.chain.metadap.io Open in urlscan Pro
103.252.72.217  Public Scan

URL: https://api.chain.metadap.io/
Submission: On January 26 via api from US — Scanned from US

Form analysis 0 forms found in the DOM

Text Content

false
false

92% Blocks Indexed - We're indexing this chain right now. Some of the counts may
be inaccurate.
 * APIs
   GraphQL RPC Eth RPC
 * MetaDAP Enterprise Mainnet
   Testnets MetaDAP Testnet Other Networks MetaDAP Devnet
   
   

/
Search
/
Search






API DOCUMENTATION

[ Base URL: ://api ]

This API is provided for developers transitioning their applications from
Etherscan to BlockScout. It supports GET and POST requests.

Account ?module=account Logs ?module=logs Token ?module=token Stats
?module=stats Block ?module=block Contract ?module=contract Transaction
?module=transaction


ACCOUNT ?MODULE=ACCOUNT


MIMICS ETHEREUM JSON RPC'S ETH_GETBALANCE. RETURNS THE BALANCE AS OF THE
PROVIDED BLOCK (DEFAULTS TO LATEST)

?module=account&action=eth_get_balance&address={addressHash}

eth_get_balance

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: eth_get_balance

ADDRESS *REQUIRED

string (query)

The address of the account.



BLOCK

string (query)

Either the block number as a string, or one of latest, earliest or pending
latest will be the latest balance in a *consensus* block. earliest will be the
first recorded balance for the address. pending will be the latest balance in
consensus *or* nonconsensus blocks.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

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


RESULT {

id string
example: "1"
jsonrpc string
example: "2.0"
result string
example: "767969"


}


GET BALANCE FOR ADDRESS. ALSO AVAILABLE THROUGH A GRAPHQL 'ADDRESSES' QUERY. IF
THE BALANCE HASN'T BEEN UPDATED IN A LONG TIME, WE WILL DOUBLE CHECK WITH THE
NODE TO FETCH THE ABSOLUTE LATEST BALANCE. THIS WILL NOT BE REFLECTED IN THE
CURRENT REQUEST, BUT ONCE IT IS UPDATED, SUBSEQUENT REQUESTS WILL SHOW THE
UPDATED BALANCE. IF YOU WANT TO KNOW WHETHER OR NOT WE ARE CHECKING FOR ANOTHER
BALANCE, USE THE `BALANCEMULTI` ACTION. THAT CONTAINS A PROPERTY CALLED `STALE`
THAT WILL LET YOU KNOW TO RECHECK THAT BALANCE IN THE NEAR FUTURE.

?module=account&action=balance&address={addressHash}

balance

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: balance

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying Accounts.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "663046792267785498951364",
  "status": "1"
}


RESULT {

message string
example: "OK"
result wei
example: "663046792267785498951364"
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}

200

error

 * Example Value

{
  "message": "Invalid address hash",
  "result": null,
  "status": "0"
}


GET BALANCE FOR MULTIPLE ADDRESSES. ALSO AVAILABLE THROUGH A GRAPHQL 'ADDRESSES'
QUERY. IF THE BALANCE HASN'T BEEN UPDATED IN A LONG TIME, WE WILL DOUBLE CHECK
WITH THE NODE TO FETCH THE ABSOLUTE LATEST BALANCE. THIS WILL NOT BE REFLECTED
IN THE CURRENT REQUEST, BUT ONCE IT IS UPDATED, SUBSEQUENT REQUESTS WILL SHOW
THE UPDATED BALANCE. YOU CAN KNOW THAT THIS IS TAKING PLACE VIA THE `STALE`
ATTRIBUTE, WHICH IS SET TO `TRUE` IF A NEW BALANCE IS BEING FETCHED.

?module=account&action=balancemulti&address={addressHash1,addressHash2,addressHash3}

balancemulti

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: balancemulti

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying Accounts. Separate addresses by comma.
Maximum of 20 addresses.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "account": "0xddbd2b932c763ba5b1b7ae3b362eac3e8d40121a",
      "balance": "40807168566070000000000",
      "stale": true
    },
    {
      "account": "0x63a9975ba31b0b9626b34300f7f627147df1f526",
      "balance": "332567136222827062478",
      "stale": false
    },
    {
      "account": "0x198ef1ec325a96cc354c7266a038be8b5c558f67",
      "balance": "185178830000000000",
      "stale": false
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[AddressBalance]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


ADDRESSBALANCE {

address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
balance wei
example: "663046792267785498951364"
stale boolean
example: true


}

200

error

 * Example Value

{
  "message": "Invalid address hash",
  "result": null,
  "status": "0"
}


GET PENDING TRANSACTIONS BY ADDRESS.

?module=account&action=pendingtxlist&address={addressHash}

pendingtxlist

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: pendingtxlist

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying Accounts.



PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "contractAddress": "",
      "cumulativeGasUsed": "122207",
      "from": "0x3fb1cd2cd96c6d5c0b5eb3322d807b34482481d4",
      "gas": "122261",
      "gasPrice": "50000000000",
      "gasUsed": "122207",
      "hash": "0x98beb27135aa0a25650557005ad962919d6a278c4b3dde7f4f6a3a1e65aa746c",
      "input": "0xf00d4b5d000000000000000000000000036c8cecce8d8bbf0831d840d7f29c9e3ddefa63000000000000000000000000c5a96db085dda36ffbe390f455315d30d6d3dc52",
      "nonce": "0",
      "to": "0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae",
      "value": "0"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Transaction]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TRANSACTION {

blockHash block hash
example: "0xd3cabad6adab0b52eb632c386ea194036805713682c62cb589b5abcd76de2159"
blockNumber block number
example: "34092"
confirmations confirmations
example: "6005998"
contractAddress address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
cumulativeGasUsed gas
example: "122261"
from address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
gas gas
example: "122261"
gasPrice wei
example: "663046792267785498951364"
gasUsed gas
example: "122261"
hash transaction hash
example: "0x9c81f44c29ff0226f835cd0a8a2f2a7eca6db52a711f8211b566fd15d3e0e8d4"
input input
example:
"0x797af627d02e23b68e085092cd0d47d6cfb54be025f37b5989c0264398f534c08af7dea9"
isError error
enum: ["0", "1"]
enum interpretation "0" ok "1" error nonce nonce
example: "0"
timeStamp timestamp
example: "1439232889"
to address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
transactionIndex transaction index
example: "0"
txreceipt_status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok value wei
example: "663046792267785498951364"


}

200

error

 * Example Value

{
  "message": "No transactions found",
  "result": [],
  "status": "0"
}


GET TRANSACTIONS BY ADDRESS. UP TO A MAXIMUM OF 10,000 TRANSACTIONS. ALSO
AVAILABLE THROUGH A GRAPHQL 'ADDRESS' QUERY.

?module=account&action=txlist&address={addressHash}

txlist

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: txlist

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying Accounts.



SORT

string (query)

A string representing the order by block number direction. Defaults to
descending order. Available values: asc, desc

START_BLOCK

integer (query)

A nonnegative integer that represents the starting block number.

END_BLOCK

integer (query)

A nonnegative integer that represents the ending block number.

PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction.

FILTER_BY

string (query)

A string representing the field to filter by. If none is given it returns
transactions that match to, from, or contract address. Available values: to,
from

START_TIMESTAMP

unix timestamp (query)

Represents the starting block timestamp.

END_TIMESTAMP

unix timestamp (query)

Represents the ending block timestamp.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "blockHash": "0x373d339e45a701447367d7b9c7cef84aab79c2b2714271b908cda0ab3ad0849b",
      "blockNumber": "65204",
      "confirmations": "5994246",
      "contractAddress": "",
      "cumulativeGasUsed": "122207",
      "from": "0x3fb1cd2cd96c6d5c0b5eb3322d807b34482481d4",
      "gas": "122261",
      "gasPrice": "50000000000",
      "gasUsed": "122207",
      "hash": "0x98beb27135aa0a25650557005ad962919d6a278c4b3dde7f4f6a3a1e65aa746c",
      "input": "0xf00d4b5d000000000000000000000000036c8cecce8d8bbf0831d840d7f29c9e3ddefa63000000000000000000000000c5a96db085dda36ffbe390f455315d30d6d3dc52",
      "isError": "0",
      "nonce": "0",
      "timeStamp": "1439232889",
      "to": "0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae",
      "transactionIndex": "0",
      "txreceipt_status": "1",
      "value": "0"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Transaction]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TRANSACTION {

blockHash block hash
example: "0xd3cabad6adab0b52eb632c386ea194036805713682c62cb589b5abcd76de2159"
blockNumber block number
example: "34092"
confirmations confirmations
example: "6005998"
contractAddress address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
cumulativeGasUsed gas
example: "122261"
from address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
gas gas
example: "122261"
gasPrice wei
example: "663046792267785498951364"
gasUsed gas
example: "122261"
hash transaction hash
example: "0x9c81f44c29ff0226f835cd0a8a2f2a7eca6db52a711f8211b566fd15d3e0e8d4"
input input
example:
"0x797af627d02e23b68e085092cd0d47d6cfb54be025f37b5989c0264398f534c08af7dea9"
isError error
enum: ["0", "1"]
enum interpretation "0" ok "1" error nonce nonce
example: "0"
timeStamp timestamp
example: "1439232889"
to address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
transactionIndex transaction index
example: "0"
txreceipt_status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok value wei
example: "663046792267785498951364"


}

200

error

 * Example Value

{
  "message": "No transactions found",
  "result": [],
  "status": "0"
}


GET INTERNAL TRANSACTIONS BY TRANSACTION OR ADDRESS HASH. UP TO A MAXIMUM OF
10,000 INTERNAL TRANSACTIONS. ALSO AVAILABLE THROUGH A GRAPHQL 'TRANSACTION'
QUERY.

?module=account&action=txlistinternal&txhash={transactionHash}

txlistinternal

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: txlistinternal

TXHASH *REQUIRED

string (query)

Transaction hash. Hash of contents of the transaction. A transaction hash or
address hash is required.



ADDRESS

string (query)

A 160-bit code used for identifying accounts. An address hash or transaction
hash is required.

SORT

string (query)

A string representing the order by block number direction. Defaults to ascending
order. Available values: asc, desc. WARNING: Only available if 'address' is
provided.

START_BLOCK

integer (query)

A nonnegative integer that represents the starting block number. WARNING: Only
available if 'address' is provided.

END_BLOCK

integer (query)

A nonnegative integer that represents the ending block number. WARNING: Only
available if 'address' is provided.

PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction. WARNING: Only available if 'address'
is provided.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction. WARNING: Only available
if 'address' is provided.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "blockNumber": "6153702",
      "callType": "delegatecall",
      "contractAddress": "0x883103875d905c11f9ac7dacbfc16deb39655361",
      "errCode": "",
      "from": "0x2ca1e3f250f56f1761b9a52bc42db53986085eff",
      "gas": "814937",
      "gasUsed": "536262",
      "index": "0",
      "input": "",
      "isError": "0",
      "timeStamp": "1534362606",
      "to": "",
      "transactionHash": "0xd65b788c610949704a5f9aac2228c7c777434dfe11c863a12306f57fcbd8cdbb",
      "type": "call",
      "value": "5488334153118633"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[InternalTransaction]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


INTERNALTRANSACTION {

blockNumber block number
example: "34092"
callType type
example: "delegatecall"
contractAddress address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
errCode string
example: "Out of gas"
from address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
gas gas
example: "122261"
gasUsed gas
example: "122261"
input input
example:
"0x797af627d02e23b68e085092cd0d47d6cfb54be025f37b5989c0264398f534c08af7dea9"
isError error
enum: ["0", "1"]
enum interpretation "0" ok "1" rejected/cancelled timeStamp timestamp
example: "1439232889"
to address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
type type
example: "create"
value wei
example: "663046792267785498951364"


}

200

error

 * Example Value

{
  "message": "No internal transactions found",
  "result": [],
  "status": "0"
}


GET TOKEN TRANSFER EVENTS BY ADDRESS. UP TO A MAXIMUM OF 10,000 TOKEN TRANSFER
EVENTS. ALSO AVAILABLE THROUGH A GRAPHQL 'TOKEN_TRANSFERS' QUERY.

?module=account&action=tokentx&address={addressHash}

tokentx

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: tokentx

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying accounts.



CONTRACTADDRESS

string (query)

A 160-bit code used for identifying contracts.

SORT

string (query)

A string representing the order by block number direction. Defaults to ascending
order. Available values: asc, desc

START_BLOCK

integer (query)

A nonnegative integer that represents the starting block number.

END_BLOCK

integer (query)

A nonnegative integer that represents the ending block number.

PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "blockHash": "0x6169c5dc05d0051564ba3eae8ebfbdefda640c5f5ffc095846b8aed0b44f64ea",
      "blockNumber": "5997843",
      "confirmations": "199384",
      "contractAddress": "0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2",
      "cumulativeGasUsed": "1043649",
      "from": "0x4e83362442b8d1bec281594cea3050c8eb01311c",
      "gas": "44758",
      "gasPrice": "7000000000",
      "gasUsed": "37298",
      "hash": "0xd65b788c610949704a5f9aac2228c7c777434dfe11c863a12306f57fcbd8cdbb",
      "input": "0xa9059cbb00000000000000000000000021e21ba085289f81a86921de890eed30f1ad23750000000000000000000000000000000000000000000000008ac7230489e80000",
      "logIndex": "0",
      "nonce": "765",
      "timeStamp": "1532086946",
      "to": "0x21e21ba085289f81a86921de890eed30f1ad2375",
      "tokenDecimal": "18",
      "tokenName": "Maker",
      "tokenSymbol": "MKR",
      "transactionIndex": "27",
      "value": "10000000000000000000"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[TokenTransfer]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TOKENTRANSFER {

blockHash block hash
example: "0xd3cabad6adab0b52eb632c386ea194036805713682c62cb589b5abcd76de2159"
blockNumber block number
example: "34092"
confirmations confirmations
example: "6005998"
contractAddress address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
cumulativeGasUsed gas
example: "122261"
from address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
gas gas
example: "122261"
gasPrice wei
example: "663046792267785498951364"
gasUsed gas
example: "122261"
hash transaction hash
example: "0x9c81f44c29ff0226f835cd0a8a2f2a7eca6db52a711f8211b566fd15d3e0e8d4"
input input
example:
"0x797af627d02e23b68e085092cd0d47d6cfb54be025f37b5989c0264398f534c08af7dea9"
nonce nonce
example: "0"
timeStamp timestamp
example: "1439232889"
to address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
tokenDecimal integer
example: "18"
tokenID integer
example: "0"
tokenIDs array
[Token ID]
tokenName string
example: "Some Token Name"
tokenSymbol string
example: "SYMBOL"
transactionIndex transaction index
example: "0"
value integer
example: "663046792267785498951364"
values array
[Transferred amount]


}

200

error

 * Example Value

{
  "message": "No token transfers found",
  "result": [],
  "status": "0"
}


GET TOKEN ACCOUNT BALANCE FOR TOKEN CONTRACT ADDRESS.

?module=account&action=tokenbalance&contractaddress={contractAddressHash}&address={addressHash}

tokenbalance

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: tokenbalance

CONTRACTADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying contracts.



ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying accounts.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "135499",
  "status": "1"
}


RESULT {

message string
example: "OK"
result integer
example: "135499"
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}

200

error

 * Example Value

{
  "message": "Invalid address format",
  "result": null,
  "status": "0"
}


GET LIST OF TOKENS OWNED BY ADDRESS.

?module=account&action=tokenlist&address={addressHash}

tokenlist

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: tokenlist

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying accounts.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "balance": "135499",
      "contractAddress": "0x0000000000000000000000000000000000000000",
      "decimals": "18",
      "name": "Example Token",
      "symbol": "ET",
      "type": "ERC-20"
    },
    {
      "balance": "1",
      "contractAddress": "0x0000000000000000000000000000000000000001",
      "decimals": "18",
      "name": "Example ERC-721 Token",
      "symbol": "ET7",
      "type": "ERC-721"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[TokenBalance]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TOKENBALANCE {

balance integer
example: "135499"
contractAddress address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
decimals integer
example: "18"
name string
example: "Some Token Name"
symbol string
example: "SYMBOL"


}

200

error

 * Example Value

{
  "message": "Invalid address format",
  "result": null,
  "status": "0"
}


GET LIST OF BLOCKS MINED BY ADDRESS.

?module=account&action=getminedblocks&address={addressHash}

getminedblocks

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getminedblocks

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying accounts.



PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "blockNumber": "3462296",
      "blockReward": "5194770940000000000",
      "timeStamp": "1491118514"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Block]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


BLOCK {

blockNumber block number
example: "34092"
timeStamp timestamp
example: "1480072029"


}

200

error

 * Example Value

{
  "message": "No blocks found",
  "result": [],
  "status": "0"
}


GET A LIST OF ACCOUNTS AND THEIR BALANCES, SORTED ASCENDING BY THE TIME THEY
WERE FIRST SEEN BY THE EXPLORER.

?module=account&action=listaccounts

listaccounts

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: account

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: listaccounts

PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "address": "0x0000000000000000000000000000000000000000",
      "balance": "135499"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Account]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


ACCOUNT {

address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
balance wei
example: "663046792267785498951364"


}


LOGS ?MODULE=LOGS


GET EVENT LOGS FOR AN ADDRESS AND/OR TOPICS. UP TO A MAXIMUM OF 1,000 EVENT
LOGS.

?module=logs&action=getLogs&fromBlock={blockNumber}&toBlock={blockNumber}&address={addressHash}&topic0={firstTopic}

getLogs

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: logs

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getLogs

FROMBLOCK *REQUIRED

integer (query)

A nonnegative integer that represents the starting block number. The use of
'latest' is also supported.



TOBLOCK *REQUIRED

integer (query)

A nonnegative integer that represents the ending block number. The use of
'latest' is also supported.



ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying contracts. An address and/or topic{x} is
required.



TOPIC0 *REQUIRED

string (query)

A string equal to the first topic. A topic{x} and/or address is required.



TOPIC1

string (query)

A string equal to the second topic. A topic{x} and/or address is required.

TOPIC2

string (query)

A string equal to the third topic. A topic{x} and/or address is required.

TOPIC3

string (query)

A string equal to the fourth topic. A topic{x} and/or address is required.

TOPIC0_1_OPR

string (query)

A string representing the and|or operator for topic0 and topic1. Required if
topic0 and topic1 is used. Available values: and, or

TOPIC0_2_OPR

string (query)

A string representing the and|or operator for topic0 and topic2. Required if
topic0 and topic2 is used. Available values: and, or

TOPIC0_3_OPR

string (query)

A string representing the and|or operator for topic0 and topic3. Required if
topic0 and topic3 is used. Available values: and, or

TOPIC1_2_OPR

string (query)

A string representing the and|or operator for topic1 and topic2. Required if
topic1 and topic2 is used. Available values: and, or

TOPIC1_3_OPR

string (query)

A string representing the and|or operator for topic1 and topic3. Required if
topic1 and topic3 is used. Available values: and, or

TOPIC2_3_OPR

string (query)

A string representing the and|or operator for topic2 and topic3. Required if
topic2 and topic3 is used. Available values: and, or

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "address": "0x33990122638b9132ca29c723bdf037f1a891a70c",
      "blockNumber": "0x5c958",
      "data": "0x",
      "gasPrice": "0xba43b7400",
      "gasUsed": "0x10682",
      "logIndex": "0x",
      "timeStamp": "0x561d688c",
      "topics": [
        "0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
        "0x72657075746174696f6e00000000000000000000000000000000000000000000",
        "0x000000000000000000000000d9b2f59f3b5c7b3c67047d2f03c3e8052470be92"
      ],
      "transactionHash": "0x0b03498648ae2da924f961dda00dc6bb0a8df15519262b7e012b7d67f4bb7e83",
      "transactionIndex": "0x"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Log]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


LOG {

address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
blockNumber block number
example: "0x5c958"
data data
example: "0x"
gasPrice wei
example: "0xba43b7400"
gasUsed gas
example: "0x10682"
logIndex hexadecimal
example: "0x"
timeStamp timestamp
example: "0x561d688c"
topics topics
example: ["0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545"]
transactionHash transaction hash
example: "0x9c81f44c29ff0226f835cd0a8a2f2a7eca6db52a711f8211b566fd15d3e0e8d4"
transactionIndex hexadecimal
example: "0x"


}

200

error

 * Example Value

{
  "message": "Invalid address format",
  "result": null,
  "status": "0"
}


TOKEN ?MODULE=TOKEN


GET ERC-20 OR ERC-721 TOKEN BY CONTRACT ADDRESS.

?module=token&action=getToken&contractaddress={contractAddressHash}

getToken

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: token

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getToken

CONTRACTADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying contracts.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "cataloged": true,
    "contractAddress": "0x0000000000000000000000000000000000000000",
    "decimals": "18",
    "name": "Example Token",
    "symbol": "ET",
    "totalSupply": "1000000000",
    "type": "ERC-20"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result Token status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TOKEN {

cataloged boolean
example: true
contractAddress address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
decimals integer
example: "18"
name string
example: "Some Token Name"
symbol string
example: "SYMBOL"
totalSupply integer
example: "1000000000"
type token type
enum: ["ERC-20", "ERC-721"]
enum interpretation "ERC-20" ERC-20 token standard "ERC-721" ERC-721 token
standard


}

200

error

 * Example Value

{
  "message": "Invalid contract address format",
  "result": null,
  "status": "0"
}


GET TOKEN HOLDERS BY CONTRACT ADDRESS.

?module=token&action=getTokenHolders&contractaddress={contractAddressHash}

getTokenHolders

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: token

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getTokenHolders

CONTRACTADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying contracts.



PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "address": "0x0000000000000000000000000000000000000000",
      "value": "965208500001258757122850"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Token holder Detail]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TOKEN HOLDER DETAIL {

address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
value value
example: "1000000000000000000"


}

200

error

 * Example Value

{
  "message": "Invalid contract address format",
  "result": null,
  "status": "0"
}


STATS ?MODULE=STATS


GET ERC-20 OR ERC-721 TOKEN TOTAL SUPPLY BY CONTRACT ADDRESS.

?module=stats&action=tokensupply&contractaddress={contractAddressHash}

tokensupply

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: stats

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: tokensupply

CONTRACTADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying contracts.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "21265524714464",
  "status": "1"
}


RESULT {

message string
example: "OK"
result integer
example: "1000000000"
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}

200

error

 * Example Value

{
  "message": "Invalid contract address format",
  "result": null,
  "status": "0"
}


GET TOTAL SUPPLY IN WEI FROM EXCHANGE.

?module=stats&action=ethsupplyexchange

ethsupplyexchange

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: stats

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: ethsupplyexchange

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "101959776311500000000000000",
  "status": "1"
}


RESULT {

message string
example: "OK"
result integer
example: "101959776311500000000000000"
description: The total supply.
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


GET TOTAL SUPPLY IN WEI FROM DB.

?module=stats&action=ethsupply

ethsupply

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: stats

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: ethsupply

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "101959776311500000000000000",
  "status": "1"
}


RESULT {

message string
example: "OK"
result integer
example: "101959776311500000000000000"
description: The total supply in Wei from DB.
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


GET TOTAL COIN SUPPLY FROM DB MINUS BURNT NUMBER.

?module=stats&action=coinsupply

coinsupply

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: stats

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: coinsupply

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

101959776.3115


RESULT {

result integer
example: 101959776.3115
description: The total supply from DB minus burnt number in coin dimension.


}


GET LATEST PRICE OF NATIVE COIN IN USD AND BTC.

?module=stats&action=coinprice

coinprice

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: stats

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: coinprice

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "coin_btc": "0.03246",
    "coin_btc_timestamp": "1537212510",
    "coin_usd": "204",
    "coin_usd_timestamp": "1537212513"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result CoinPrice status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


COINPRICE {

coin_btc coin_btc
example: "0.03161"
coin_btc_timestamp timestamp
example: "1537234460"
coin_usd coin_usd
example: "197.57"
coin_usd_timestamp timestamp
example: "1537234460"


}


GETS TOTAL TRANSACTION FEES IN WEI ARE PAID BY USERS TO VALIDATORS PER DAY.

?module=stats&action=totalfees&date={date}

totalfees

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: stats

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: totalfees

DATE *REQUIRED

string (query)

day in ISO 8601 format (yyyy-mm-dd)


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "total_fees": "75411956011480008034"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result TotalFees status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TOTALFEES {

total_fees total_fees
example: "75411956011480008034"


}

200

error

 * Example Value

{
  "message": "An incorrect input date provided. It should be in ISO 8601 format (yyyy-mm-dd).",
  "result": null,
  "status": "0"
}


BLOCK ?MODULE=BLOCK


GET BLOCK REWARD BY BLOCK NUMBER.

?module=block&action=getblockreward&blockno={blockNumber}

getblockreward

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: block

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getblockreward

BLOCKNO *REQUIRED

integer (query)

A nonnegative integer that represents the block number.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "blockMiner": "0x13a06d3dfe21e0db5c016c03ea7d2509f7f8d1e3",
    "blockNumber": "2165403",
    "blockReward": "5314181600000000000",
    "timeStamp": "1472533979",
    "uncleInclusionReward": null,
    "uncles": null
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result BlockReward status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


BLOCKREWARD {

blockMiner address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
blockNumber block number
example: "34092"
blockReward block reward
example: "5003251945421042780"
timeStamp timestamp
example: "1480072029"
uncleInclusionReward null uncles null


}

200

error

 * Example Value

{
  "message": "Invalid block number",
  "result": null,
  "status": "0"
}


GET BLOCK NUMBER BY TIMESTAMP.

?module=block&action=getblocknobytime×tamp={blockTimestamp}&closest={before/after}

getblocknobytime

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: block

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getblocknobytime

TIMESTAMP *REQUIRED

integer (query)

A nonnegative integer that represents the block timestamp (Unix timestamp in
seconds).



CLOSEST *REQUIRED

string (query)

Direction to find the closest block number to given timestamp. Available values:
before/after.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "blockNumber": "2165403"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result BlockNo status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


BLOCKNO {

blockNumber block number
example: "34092"


}

200

error

 * Example Value

{
  "message": "Invalid params",
  "result": null,
  "status": "0"
}


MIMICS ETHEREUM JSON RPC'S ETH_BLOCKNUMBER. RETURNS THE LATEST BLOCK NUMBER

?module=block&action=eth_block_number

eth_block_number

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: block

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: eth_block_number

ID

integer (query)

A nonnegative integer that represents the json rpc request id.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful request

 * Example Value
 * Model

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


RESULT {

id string
example: "1"
jsonrpc string
example: "2.0"
result string
example: "767969"


}


CONTRACT ?MODULE=CONTRACT


GET A LIST OF CONTRACTS, SORTED ASCENDING BY THE TIME THEY WERE FIRST SEEN BY
THE EXPLORER. IF YOU PROVIDE THE FILTERS `NOT_DECOMPILED`(`4`) OR
`NOT_VERIFIED(4)` THE RESULTS WILL NOT BE SORTED FOR PERFORMANCE REASONS.

?module=contract&action=listcontracts

listcontracts

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: listcontracts

PAGE

integer (query)

A nonnegative integer that represents the page number to be used for pagination.
'offset' must be provided in conjunction.

OFFSET

integer (query)

A nonnegative integer that represents the maximum number of records to return
when paginating. 'page' must be provided in conjunction.

FILTER

string (query)

verified|decompiled|unverified|not_decompiled|empty, or 1|2|3|4|5 respectively.
This requests only contracts with that status.

NOT_DECOMPILED_WITH_VERSION

string (query)

Ensures that none of the returned contracts were decompiled with the provided
version. Ignored unless filtering for decompiled contracts.

VERIFIED_AT_START_TIMESTAMP

unix timestamp (query)

Represents the starting timestamp when contracts verified. Taking into account
only with `verified` filter.

VERIFIED_AT_END_TIMESTAMP

unix timestamp (query)

Represents the ending timestamp when contracts verified. Taking into account
only with `verified` filter.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": [
    {
      "ABI": "[{\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event\"\n}, {\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event2\"\n}, {\n\"type\":\"function\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\"}],\n\"name\":\"foo\",\n\"outputs\": []\n}]\n",
      "CompilerVersion": "v0.2.1-2016-01-30-91a6b35",
      "ContractName": "Test",
      "OptimizationUsed": "1",
      "SourceCode": "pragma solidity >0.4.24;\n\ncontract Test {\nconstructor() public { b = hex\"12345678901234567890123456789012\"; }\nevent Event(uint indexed a, bytes32 b);\nevent Event2(uint indexed a, bytes32 b);\nfunction foo(uint a) public { emit Event(a, b); }\nbytes32 b;\n}\n"
    }
  ],
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Contract]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


CONTRACT {

ABI ABI
example: "[{ \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event\" }, { \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event2\" }, { \"type\":\"function\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\"}], \"name\":\"foo\", \"outputs\": [] }]"
Address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
ContractName string
example: "Some name"
OptimizationUsed optimization used
enum: ["0", "1"]
enum interpretation "0" false "1" true


}


GET ABI FOR VERIFIED CONTRACT. ALSO AVAILABLE THROUGH A GRAPHQL 'ADDRESSES'
QUERY.

?module=contract&action=getabi&address={addressHash}

getabi

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getabi

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying contracts.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "[{\"constant\":false,\"inputs\":[{\"name\":\"voucher_token\",\"type\":\"bytes32\"}],\"name\":\"burn\",\"outputs\":[{\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"voucher_token\",\"type\":\"bytes32\"}],\"name\":\"is_expired\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"voucher_token\",\"type\":\"bytes32\"}],\"name\":\"is_burnt\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"voucher_token\",\"type\":\"bytes32\"},{\"name\":\"_lifetime\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}]",
  "status": "1"
}


RESULT {

message string
example: "OK"
result abi status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}

200

error

 * Example Value

{
  "message": "Contract source code not verified",
  "result": null,
  "status": "0"
}


GET CONTRACT SOURCE CODE FOR VERIFIED CONTRACT. ALSO AVAILABLE THROUGH A GRAPHQL
'ADDRESSES' QUERY.

?module=contract&action=getsourcecode&address={addressHash}

getsourcecode

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getsourcecode

ADDRESS *REQUIRED

string (query)

A 160-bit code used for identifying contracts.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "ABI": "[{\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event\"\n}, {\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event2\"\n}, {\n\"type\":\"function\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\"}],\n\"name\":\"foo\",\n\"outputs\": []\n}]\n",
    "CompilerVersion": "v0.2.1-2016-01-30-91a6b35",
    "ContractName": "Test",
    "FileName": "{sourcify path or empty}",
    "ImplementationAddress": "0x000000000000000000000000000000000000000e",
    "IsProxy": "true",
    "OptimizationUsed": "1",
    "SourceCode": "pragma solidity >0.4.24;\n\ncontract Test {\nconstructor() public { b = hex\"12345678901234567890123456789012\"; }\nevent Event(uint indexed a, bytes32 b);\nevent Event2(uint indexed a, bytes32 b);\nfunction foo(uint a) public { emit Event(a, b); }\nbytes32 b;\n}\n"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result array
[Contract]
status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


CONTRACT {

ABI ABI
example: "[{ \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event\" }, { \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event2\" }, { \"type\":\"function\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\"}], \"name\":\"foo\", \"outputs\": [] }]"
Address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
ContractName string
example: "Some name"
DecompiledSourceCode contract decompiled source code
example: const name() = 'CryptoKitties' const GEN0_STARTING_PRICE() = 10^16
const GEN0_AUCTION_DURATION() = 86400 const GEN0_CREATION_LIMIT() = 45000 const
symbol() = 'CK' const PROMO_CREATION_LIMIT() = 5000 def storage: ceoAddress is
addr # mask(160, 0) at storage #0 cfoAddress is addr # mask(160, 0) at storage
#1 stor1.768 is uint16 => uint256 # mask(256, 768) at storage #1 cooAddress is
addr # mask(160, 0) at storage #2 stor2.0 is uint256 => uint256 # mask(256, 0)
at storage #2 paused is uint8 # mask(8, 160) at storage #2 stor2.256 is uint256
=> uint256 # mask(256, 256) at storage #2 stor3 is uint32 # ...<continues>
DecompilerVersion decompiler version
example: decompiler.version
OptimizationUsed optimization used
enum: ["0", "1"]
enum interpretation "0" false "1" true SourceCode contract source code
example: "pragma solidity >0.4.24; contract Test { constructor() public { b =
hex"12345678901234567890123456789012"; } event Event(uint indexed a, bytes32 b);
event Event2(uint indexed a, bytes32 b); function foo(uint a) public { emit
Event(a, b); } bytes32 b; }"


}

200

error

 * Example Value

{
  "message": "Invalid address hash",
  "result": null,
  "status": "0"
}


VERIFY A CONTRACT WITH ITS SOURCE CODE AND CONTRACT CREATION INFORMATION.



CURL POST EXAMPLE:


CURL -D
'{"ADDRESSHASH":"0XC63BB6555C90846AFACAC08A0F0AA5CAFCB382A1","COMPILERVERSION":"V0.5.4+COMMIT.9549D8FF",
"CONTRACTSOURCECODE":"PRAGMA SOLIDITY ^0.5.4; CONTRACT TEST {
}","NAME":"TEST","OPTIMIZATION":FALSE}' -H "CONTENT-TYPE: APPLICATION/JSON" -X
POST "HTTPS://BLOCKSCOUT.COM/POA/SOKOL/API?MODULE=CONTRACT&ACTION=VERIFY"

?module=contract&action=verify&addressHash={addressHash}&name={name}&compilerVersion={compilerVersion}&optimization={false}&contractSourceCode={contractSourceCode}

verify

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: verify

ADDRESSHASH *REQUIRED

string (query)

The address of the contract.



NAME *REQUIRED

string (query)

The name of the contract.



COMPILERVERSION *REQUIRED

string (query)

The compiler version for the contract.



OPTIMIZATION *REQUIRED

boolean (query)

Whether or not compiler optimizations were enabled.



CONTRACTSOURCECODE *REQUIRED

string (query)

The source code of the contract.



CONSTRUCTORARGUMENTS

string (query)

The constructor argument data provided.

AUTODETECTCONSTRUCTORARGUMENTS

boolean (query)

Whether or not automatically detect constructor argument.

EVMVERSION

string (query)

The EVM version for the contract.

OPTIMIZATIONRUNS

integer (query)

The number of optimization runs used during compilation

LIBRARY1NAME

string (query)

The name of the first library used.

LIBRARY1ADDRESS

string (query)

The address of the first library used.

LIBRARY2NAME

string (query)

The name of the second library used.

LIBRARY2ADDRESS

string (query)

The address of the second library used.

LIBRARY3NAME

string (query)

The name of the third library used.

LIBRARY3ADDRESS

string (query)

The address of the third library used.

LIBRARY4NAME

string (query)

The name of the fourth library used.

LIBRARY4ADDRESS

string (query)

The address of the fourth library used.

LIBRARY5NAME

string (query)

The name of the fourth library used.

LIBRARY5ADDRESS

string (query)

The address of the fourth library used.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "ABI": "[{\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event\"\n}, {\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event2\"\n}, {\n\"type\":\"function\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\"}],\n\"name\":\"foo\",\n\"outputs\": []\n}]\n",
    "CompilerVersion": "v0.2.1-2016-01-30-91a6b35",
    "ContractName": "Test",
    "ImplementationAddress": "0x000000000000000000000000000000000000000e",
    "IsProxy": "true",
    "OptimizationUsed": "1",
    "SourceCode": "pragma solidity >0.4.24;\n\ncontract Test {\nconstructor() public { b = hex\"12345678901234567890123456789012\"; }\nevent Event(uint indexed a, bytes32 b);\nevent Event2(uint indexed a, bytes32 b);\nfunction foo(uint a) public { emit Event(a, b); }\nbytes32 b;\n}\n"
  },
  "status": "1"
}


CONTRACT {

ABI ABI
example: "[{ \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event\" }, { \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event2\" }, { \"type\":\"function\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\"}], \"name\":\"foo\", \"outputs\": [] }]"
Address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
ContractName string
example: "Some name"
OptimizationUsed optimization used
enum: ["0", "1"]
enum interpretation "0" false "1" true


}

200

error

 * Example Value

{
  "message": "There was an error verifying the contract.",
  "result": null,
  "status": "0"
}


VERIFY A CONTRACT THROUGH SOURCIFY.
A) IF SMART-CONTRACT ALREADY VERIFIED ON SOURCIFY, IT WILL AUTOMATICALLY FETCH
THE DATA FROM THE REPO
B) OTHERWISE YOU HAVE TO UPLOAD SOURCE FILES AND JSON METADATA FILE(S).



POST BODY EXAMPLE:


--6E1E4C11657C62DC1E4349D024DE9E28
CONTENT-DISPOSITION: FORM-DATA; NAME="ADDRESSHASH"

0XB77B7443E0F32F1FEBF0BE0FBD7124D135D0A525

--6E1E4C11657C62DC1E4349D024DE9E28
CONTENT-DISPOSITION: FORM-DATA; NAME="FILES[0]"; FILENAME="CONTRACT.SOL"
CONTENT-TYPE: APPLICATION/JSON

...SOURCE CODE...

--6E1E4C11657C62DC1E4349D024DE9E28
CONTENT-DISPOSITION: FORM-DATA; NAME="FILES[1]"; FILENAME="METADATA.JSON"
CONTENT-TYPE: APPLICATION/JSON

...JSON METADATA...

--6E1E4C11657C62DC1E4349D024DE9E28--


?module=contract&action=verify_via_sourcify&addressHash={addressHash}

verify_via_sourcify

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: verify_via_sourcify

ADDRESSHASH *REQUIRED

string (query)

The address of the contract.



FILES

file[] (query)

Array with sources and metadata files

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "ABI": "[{\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event\"\n}, {\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event2\"\n}, {\n\"type\":\"function\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\"}],\n\"name\":\"foo\",\n\"outputs\": []\n}]\n",
    "CompilerVersion": "v0.2.1-2016-01-30-91a6b35",
    "ContractName": "Test",
    "ImplementationAddress": "0x000000000000000000000000000000000000000e",
    "IsProxy": "true",
    "OptimizationUsed": "1",
    "SourceCode": "pragma solidity >0.4.24;\n\ncontract Test {\nconstructor() public { b = hex\"12345678901234567890123456789012\"; }\nevent Event(uint indexed a, bytes32 b);\nevent Event2(uint indexed a, bytes32 b);\nfunction foo(uint a) public { emit Event(a, b); }\nbytes32 b;\n}\n"
  },
  "status": "1"
}


CONTRACT {

ABI ABI
example: "[{ \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event\" }, { \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event2\" }, { \"type\":\"function\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\"}], \"name\":\"foo\", \"outputs\": [] }]"
Address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
ContractName string
example: "Some name"
OptimizationUsed optimization used
enum: ["0", "1"]
enum interpretation "0" false "1" true


}

200

error

 * Example Value

{
  "message": "There was an error verifying the contract.",
  "result": null,
  "status": "0"
}


VERIFY A VYPER CONTRACT WITH ITS SOURCE CODE AND CONTRACT CREATION INFORMATION.



CURL POST EXAMPLE:


CURL --LOCATION --REQUEST POST
'HTTP://LOCALHOST:4000/API?MODULE=CONTRACT&ACTION=VERIFY_VYPER_CONTRACT' --FORM
'CONTRACTSOURCECODE="SOURCE_CODE"' --FORM 'NAME="VYPER_CONTRACT"' --FORM
'ADDRESSHASH="0XE60B1B8BD493569A3E945BE50A6C89D29A560FA1"' --FORM
'COMPILERVERSION="V0.2.12"'

?module=contract&action=verify_vyper_contract&addressHash={addressHash}&name={name}&compilerVersion={compilerVersion}&contractSourceCode={contractSourceCode}

verify_vyper_contract

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: verify_vyper_contract

ADDRESSHASH *REQUIRED

string (query)

The address of the contract.



NAME *REQUIRED

string (query)

The name of the contract.



COMPILERVERSION *REQUIRED

string (query)

The compiler version for the contract.



CONTRACTSOURCECODE *REQUIRED

string (query)

The source code of the contract.



CONSTRUCTORARGUMENTS

string (query)

The constructor argument data provided.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "ABI": "[{\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event\"\n}, {\n\"type\":\"event\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],\n\"name\":\"Event2\"\n}, {\n\"type\":\"function\",\n\"inputs\": [{\"name\":\"a\",\"type\":\"uint256\"}],\n\"name\":\"foo\",\n\"outputs\": []\n}]\n",
    "CompilerVersion": "v0.2.1-2016-01-30-91a6b35",
    "ContractName": "Test",
    "ImplementationAddress": "0x000000000000000000000000000000000000000e",
    "IsProxy": "true",
    "OptimizationUsed": "1",
    "SourceCode": "pragma solidity >0.4.24;\n\ncontract Test {\nconstructor() public { b = hex\"12345678901234567890123456789012\"; }\nevent Event(uint indexed a, bytes32 b);\nevent Event2(uint indexed a, bytes32 b);\nfunction foo(uint a) public { emit Event(a, b); }\nbytes32 b;\n}\n"
  },
  "status": "1"
}


CONTRACT {

ABI ABI
example: "[{ \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event\" }, { \"type\":\"event\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"b\",\"type\":\"bytes32\",\"indexed\":false}],
\"name\":\"Event2\" }, { \"type\":\"function\", \"inputs\":
[{\"name\":\"a\",\"type\":\"uint256\"}], \"name\":\"foo\", \"outputs\": [] }]"
Address address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
ContractName string
example: "Some name"
OptimizationUsed optimization used
enum: ["0", "1"]
enum interpretation "0" false "1" true


}

200

error

 * Example Value

{
  "message": "There was an error verifying the contract.",
  "result": null,
  "status": "0"
}


VERIFY A CONTRACT WITH STANDARD INPUT JSON FILE. ITS INTERFACE THE SAME AS
ETHERSCAN'S API ENDPOINT



?module=contract&action=verifysourcecode&codeformat={solidity-standard-json-input}&contractaddress={contractaddress}&contractname={contractname}&compilerversion={compilerversion}&sourceCode={sourceCode}

verifysourcecode

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: verifysourcecode

CODEFORMAT *REQUIRED

string (query)

Format of sourceCode(supported only "solidity-standard-json-input")



CONTRACTADDRESS *REQUIRED

string (query)

The address of the contract.



CONTRACTNAME *REQUIRED

string (query)

The name of the contract. It could be empty string(""), just contract
name("ContractName"), or filename and contract
name("contracts/contract_1.sol:ContractName")



COMPILERVERSION *REQUIRED

string (query)

The compiler version for the contract.



SOURCECODE *REQUIRED

string (query)

Standard input json



CONSTRUCTORARGUMENTS

string (query)

The constructor argument data provided.

AUTODETECTCONSTRUCTORARGUMENTS

boolean (query)

Whether or not automatically detect constructor argument.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "b080b96bd06ad1c9341c2afb7e3730311388544961acde94",
  "status": "1"
}


UID {

UID string
example: b080b96bd06ad1c9341c2afb7e3730311388544961acde94


}


RETURN STATUS OF THE VERIFICATION ATTEMPT (WORKS IN ADDITION TO VERIFYSOURCECODE
METHOD)

?module=contract&action=checkverifystatus&guid={identifierString}

checkverifystatus

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: contract

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: checkverifystatus

GUID *REQUIRED

string (query)

A string used for identifying verification attempt


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": "Pending in queue",
  "status": "1"
}


STATUS {

status string
example: `Pending in queue` | `Pass - Verified` | `Fail - Unable to verify` |
`Unknown UID`


}


TRANSACTION ?MODULE=TRANSACTION


GET TRANSACTION INFO.

?module=transaction&action=gettxinfo&txhash={transactionHash}

gettxinfo

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: transaction

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: gettxinfo

TXHASH *REQUIRED

string (query)

Transaction hash. Hash of contents of the transaction.



INDEX

integer (query)

A nonnegative integer that represents the log index to be used for pagination.

Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "result": {
    "revertReason": "No credit of that type",
    "blockNumber": "3",
    "confirmations": "0",
    "from": "0x000000000000000000000000000000000000000c",
    "gasLimit": "91966",
    "gasPrice": "100000",
    "gasUsed": "95123",
    "hash": "0x0000000000000000000000000000000000000000000000000000000000000004",
    "input": "0x04",
    "logs": [
      {
        "address": "0x000000000000000000000000000000000000000e",
        "data": "0x00",
        "topics": [
          "First Topic",
          "Second Topic",
          "Third Topic",
          "Fourth Topic"
        ]
      }
    ],
    "success": true,
    "timeStamp": "1541018182",
    "to": "0x000000000000000000000000000000000000000d",
    "value": "67612"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result TransactionInfo status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TRANSACTIONINFO {

blockNumber block number
example: "34092"
confirmations confirmations
example: "6005998"
from address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
gasLimit wei
example: "663046792267785498951364"
gasPrice wei
example: "663046792267785498951364"
gasUsed gas
example: "122261"
hash transaction hash
example: "0x9c81f44c29ff0226f835cd0a8a2f2a7eca6db52a711f8211b566fd15d3e0e8d4"
input input
example:
"0x797af627d02e23b68e085092cd0d47d6cfb54be025f37b5989c0264398f534c08af7dea9"
logs array
[Log Detail]
revertReason revert_reason
example: "No credit of that type"
success boolean
example: true
timeStamp timestamp
example: "1439232889"
to address hash
example: "0x95426f2bc716022fcf1def006dbc4bb81f5b5164"
value wei
example: "663046792267785498951364"


}

200

error

 * Example Value

{
  "message": "Query parameter txhash is required",
  "result": null,
  "status": "0"
}


GET TRANSACTION RECEIPT STATUS. ALSO AVAILABLE THROUGH A GRAPHQL 'TRANSACTION'
QUERY.

?module=transaction&action=gettxreceiptstatus&txhash={transactionHash}

gettxreceiptstatus

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: transaction

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: gettxreceiptstatus

TXHASH *REQUIRED

string (query)

Transaction hash. Hash of contents of the transaction.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "status": "1"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result TransactionReceiptStatus status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TRANSACTIONRECEIPTSTATUS {

status status
enum: ["0", "1"]
enum interpretation "0" fail "1" pass


}

200

error

 * Example Value

{
  "message": "Query parameter txhash is required",
  "result": null,
  "status": "0"
}


GET ERROR STATUS AND ERROR MESSAGE. ALSO AVAILABLE THROUGH A GRAPHQL
'TRANSACTION' QUERY.

?module=transaction&action=getstatus&txhash={transactionHash}

getstatus

GET POST
More Details Hide Details


PARAMETERS TRY IT OUT CANCEL

NAME


DESCRIPTION

MODULE *REQUIRED

string (query)

A string with the name of the module to be invoked.

Must be set to: transaction

ACTION *REQUIRED

string (query)

A string with the name of the action to be invoked.

Must be set to: getstatus

TXHASH *REQUIRED

string (query)

Transaction hash. Hash of contents of the transaction.


Execute
Clear

CURL



REQUEST URL



SERVER RESPONSE

CODE

DETAILS

Response Body




RESPONSES

CODE

DESCRIPTION

200

successful operation

 * Example Value
 * Model

{
  "message": "OK",
  "result": {
    "errDescription": "Out of gas",
    "isError": "1"
  },
  "status": "1"
}


RESULT {

message string
example: "OK"
result TransactionStatus status status
enum: ["0", "1"]
enum interpretation "0" error "1" ok


}


TRANSACTIONSTATUS {

errDescription string
example: "Out of gas"
isError isError
enum: ["0", "1"]
enum interpretation "0" pass "1" error


}

200

error

 * Example Value

{
  "message": "Query parameter txhash is required",
  "result": null,
  "status": "0"
}

MetaDAP explorer is a tool for inspecting and analyzing EVM based blockchains.
Blockchain explorer for Ethereum Networks.




METADAP EXPLORER

 * RETX
 * Assets
 * News
 * Partner
   
   
 * Add MetaDAP Enterprise Mainnet


MAIN NETWORKS

 * MetaDAP Devnet


TEST NETWORKS

 * MetaDAP Testnet

Version: 5.2.3

Ok

Ok

Ok

No Yes