v1
latestOpenAPI 3.1.02026-07-26360335.7 KBRetrieve Contract Source Code
Returns the contract source code verification status and source code.
get/monad/contract/source/code
Query parameters
addressstring required
contract address
Response
200
Example response
{
"message": "OK",
"result": {
"contractAddress": "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
"contractName": "WrappedMonad",
"abi": "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]",
"creationByteCode": "0x60c0604052600d60808190526c15dc985c1c195908135bdb9859609a1b60a090815261002e916000919061007a565b50604080518082019091526004808252632ba6a7a760e11b602090920191825261005a9160019161007a565b506002805460ff1916601217905534801561007457600080fd5b5061014d565b82805461008690610113565b90600052602060002090601f0160209004810192826100a857600085556100ee565b82601f106100c157805160ff19168380011785556100ee565b828001600101855582156100ee579182015b828111156100ee5782518255916020019190600101906100d3565b506100fa9291506100fe565b5090565b5b808211156100fa57600081556001016100ff565b600181811c9082168061012757607f821691505b60208210810361014757634e487b7160e01b600052602260045260246000fd5b50919050565b6107b78061015c6000396000f3fe60806040526004361061009c5760003560e01c8063313ce56711610064578063313ce5671461015e57806370a082311461018a57806395d89b41146101b7578063a9059cbb146101cc578063d0e30db01461009c578063dd62ed3e146101ec5761009c565b806306fdde03146100a6578063095ea7b3146100d157806318160ddd1461010157806323b872dd1461011e5780632e1a7d4d1461013e575b6100a4610224565b005b3480156100b257600080fd5b506100bb61027f565b6040516100c891906105c4565b60405180910390f35b3480156100dd57600080fd5b506100f16100ec366004610635565b61030d565b60405190151581526020016100c8565b34801561010d57600080fd5b50475b6040519081526020016100c8565b34801561012a57600080fd5b506100f161013936600461065f565b610379565b34801561014a57600080fd5b506100a461015936600461069b565b6104fd565b34801561016a57600080fd5b506002546101789060ff1681565b60405160ff90911681526020016100c8565b34801561019657600080fd5b506101106101a53660046106b4565b60036020526000908152604090205481565b3480156101c357600080fd5b506100bb6105a3565b3480156101d857600080fd5b506100f16101e7366004610635565b6105b0565b3480156101f857600080fd5b506101106102073660046106cf565b600460209081526000928352604080842090915290825290205481565b3360009081526003602052604081208054349290610243908490610718565b909155505060405134815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c9060200160405180910390a2565b6000805461028c90610730565b80601f01602080910402602001604051908101604052809291908181526020018280546102b890610730565b80156103055780601f106102da57610100808354040283529160200191610305565b820191906000526020600020905b8154815290600101906020018083116102e857829003601f168201915b505050505081565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103689086815260200190565b60405180910390a350600192915050565b6001600160a01b03831660009081526003602052604081205482111561039e57600080fd5b6001600160a01b03841633148015906103dc57506001600160a01b038416600090815260046020908152604080832033845290915290205460001914155b1561044a576001600160a01b038416600090815260046020908152604080832033845290915290205482111561041157600080fd5b6001600160a01b03841660009081526004602090815260408083203384529091528120805484929061044490849061076a565b90915550505b6001600160a01b0384166000908152600360205260408120805484929061047290849061076a565b90915550506001600160a01b0383166000908152600360205260408120805484929061049f908490610718565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516104eb91815260200190565b60405180910390a35060019392505050565b3360009081526003602052604090205481111561051957600080fd5b336000908152600360205260408120805483929061053890849061076a565b9091555050604051339082156108fc029083906000818181858888f1935050505015801561056a573d6000803e3d6000fd5b5060405181815233907f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b659060200160405180910390a250565b6001805461028c90610730565b60006105bd338484610379565b9392505050565b600060208083528351808285015260005b818110156105f1578581018301518582016040015282016105d5565b81811115610603576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461063057600080fd5b919050565b6000806040838503121561064857600080fd5b61065183610619565b946020939093013593505050565b60008060006060848603121561067457600080fd5b61067d84610619565b925061068b60208501610619565b9150604084013590509250925092565b6000602082840312156106ad57600080fd5b5035919050565b6000602082840312156106c657600080fd5b6105bd82610619565b600080604083850312156106e257600080fd5b6106eb83610619565b91506106f960208401610619565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000821982111561072b5761072b610702565b500190565b600181811c9082168061074457607f821691505b60208210810361076457634e487b7160e01b600052602260045260246000fd5b50919050565b60008282101561077c5761077c610702565b50039056fea26469706673582212205c24d8a3eef7a1da1bc1a94176592008291a40aa8f22e64ec05658dfaa71d87364736f6c634300080d0033",
"sourceCode": [
{
"content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.13;\n\ncontract WrappedMonad {\n string public name = \"Wrapped Monad\";\n string public symbol = \"WMON\";\n uint8 public decimals = 18;\n\n event Approval(address indexed src, address indexed guy, uint256 wad);\n event Transfer(address indexed src, address indexed dst, uint256 wad);\n event Deposit(address indexed dst, uint256 wad);\n event Withdrawal(address indexed src, uint256 wad);\n\n mapping(address => uint256) public balanceOf;\n mapping(address => mapping(address => uint256)) public allowance;\n\n fallback() external payable {\n deposit();\n }\n\n function deposit() public payable {\n balanceOf[msg.sender] += msg.value;\n emit Deposit(msg.sender, msg.value);\n }\n\n function withdraw(uint256 wad) public {\n require(balanceOf[msg.sender] >= wad);\n balanceOf[msg.sender] -= wad;\n payable(msg.sender).transfer(wad);\n emit Withdrawal(msg.sender, wad);\n }\n\n function totalSupply() public view returns (uint256) {\n return address(this).balance;\n }\n\n function approve(address guy, uint256 wad) public returns (bool) {\n allowance[msg.sender][guy] = wad;\n emit Approval(msg.sender, guy, wad);\n return true;\n }\n\n function transfer(address dst, uint256 wad) public returns (bool) {\n return transferFrom(msg.sender, dst, wad);\n }\n\n function transferFrom(address src, address dst, uint256 wad) public returns (bool) {\n require(balanceOf[src] >= wad);\n\n if (src != msg.sender && allowance[src][msg.sender] != type(uint256).max) {\n require(allowance[src][msg.sender] >= wad);\n allowance[src][msg.sender] -= wad;\n }\n\n balanceOf[src] -= wad;\n balanceOf[dst] += wad;\n\n emit Transfer(src, dst, wad);\n\n return true;\n }\n}\n",
"name": "WrappedMonad.sol"
}
],
"status": "full"
}
}