Verify Proxy Contract

Submits a proxy contract source code to opBNBScan for verification.

📘

Supported on both BSC and opBNB, across mainnet & testnet.

  1. Current daily limit of 100 submissions per day per user (subject to change)
  2. Only supports HTTP post
  3. Upon successful submission you will receive a GUID (50 characters) as a receipt
  4. You may use this GUID to track the status of your submission
  5. Verified proxy contracts will display the "Read/Write as Proxy" of the implementation contract under the contract address's contract tab

BSC

https://open-platform.nodereal.io/{APIkey}/bsc-testnet/contract/
https://open-platform.nodereal.io/{APIkey}/bsc-mainnet/contract/
?action=verifyproxycontract
?action=checkproxyverification

Verifying Proxy Contract using cURL

Request

// example with only the mandatory contract address parameter
curl -d "address=0xcbdcd3815b5f975e1a2c944a9b2cd1c985a1cb7f" "https://open-platform.nodereal.io/{{apiKey}}/bsc-mainnet/contract?action=verifyproxycontract"

// example using the expectedimplementation optional parameter
// the expectedimplementation enforces a check to ensure the returned implementation contract address == address picked up by the verifier
curl -d "address=0xbc46363a7669f6e12353fa95bb067aead3675c29&expectedimplementation=0xe45a5176bc0f2c1198e2451c4e4501d4ed9b65a6" "https://open-platform.nodereal.io/{{apiKey}}/bsc-mainnet/contract/?action=verifyproxycontract"

Response

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

// NOTOK
{"status":"0","message":"NOTOK","result":"Invalid API Key"}

Checking Proxy Contract Verification Submission Status using cURL

Request

curl "https://open-platform.nodereal.io/{{apiKey}}/bsc-mainnet/contract?action=checkproxyverification&guid=gwgrrnfy56zf6vc1fljuejwg6pelnc5yns6fg6y2i6zfpgzquz"

Response

// OK
{"status":"1","message":"OK","result":"The proxy's (0xbc46363a7669f6e12353fa95bb067aead3675c29) implementation contract is found at 0xe45a5176bc0f2c1198e2451c4e4501d4ed9b65a6 and is successfully updated."}
                                    
// NOTOK
{"status":"0","message":"NOTOK","result":"A corresponding implementation contract was unfortunately not detected for the proxy address."}

opBNB

https://open-platform.nodereal.io/{APIkey}/op-bnb-testnet/contract/
https://open-platform.nodereal.io/{APIkey}/op-bnb-mainnet/contract/
?action=verifyproxycontract
?action=checkproxyverification

Verifying Proxy Contract using cURL

Request

// example with only the mandatory contract address parameter
curl -d "address=0xcbdcd3815b5f975e1a2c944a9b2cd1c985a1cb7f" "https://open-platform.nodereal.io/{{apiKey}}/op-bnb-mainnet/contract?action=verifyproxycontract"

// example using the expectedimplementation optional parameter
// the expectedimplementation enforces a check to ensure the returned implementation contract address == address picked up by the verifier
curl -d "address=0xbc46363a7669f6e12353fa95bb067aead3675c29&expectedimplementation=0xe45a5176bc0f2c1198e2451c4e4501d4ed9b65a6" "https://open-platform.nodereal.io/{{apiKey}}/op-bnb-mainnet/contract/?action=verifyproxycontract"

Response

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

// NOTOK
{"status":"0","message":"NOTOK","result":"Invalid API Key"}

Checking Proxy Contract Verification Submission Status using cURL

Request

curl "https://open-platform.nodereal.io/{{apiKey}}/op-bnb-mainnet/contract?action=checkproxyverification&guid=gwgrrnfy56zf6vc1fljuejwg6pelnc5yns6fg6y2i6zfpgzquz"

Response

// OK
{"status":"1","message":"OK","result":"The proxy's (0xbc46363a7669f6e12353fa95bb067aead3675c29) implementation contract is found at 0xe45a5176bc0f2c1198e2451c4e4501d4ed9b65a6 and is successfully updated."}
                                    
// NOTOK
{"status":"0","message":"NOTOK","result":"A corresponding implementation contract was unfortunately not detected for the proxy address."}