Contracts
Active Contract Set
[
{
"contractHash": "55be2edd1e537869cce832bd014aa1e3251aba651c5c3f38f70db86417faa9c4",
"address": "tc1q2klzahg72duxnn8gx27szj4puvj34wn9r3wr7w8hpkuxg9l648zqhc76xa",
"expire": 19375,
"code": "(* NAME_START: Example Token :NAME_END *)\nopen Zen.Types\nopen Zen.Vector\nopen Zen.Base\nopen Zen.Cost\nopen Zen.Asset\nopen Zen.Data\n\nmodule ET = Zen.ErrorT\nmodule OT = Zen.OptionT\nmodule Tx = Zen.TxSkeleton\nmodule CR = Zen.ContractResult.NoMessage\n\nlet buy txSkeleton contractHash returnAddress =\n let! tokens = Tx.getAvailableTokens zenAsset txSkeleton in\n\n let! contractAsset = getDefault contractHash in\n\n let! txSkeleton =\n Tx.lockToContract zenAsset tokens contractHash txSkeleton\n >>= Tx.mint tokens contractAsset\n >>= Tx.lockToAddress contractAsset tokens returnAddress in\n\n CR.ret txSkeleton\n\nlet redeem txSkeleton contractHash returnAddress wallet =\n let! contractAsset = getDefault contractHash in\n let! tokens = Tx.getAvailableTokens contractAsset txSkeleton in\n\n let! txSkeleton =\n Tx.destroy tokens contractAsset txSkeleton\n >>= Tx.lockToAddress zenAsset tokens returnAddress\n >>= Tx.fromWallet zenAsset tokens contractHash wallet in\n\n CR.ofOption \"contract doesn't have enough zens to pay you\" txSkeleton\n\nval main: txSkeleton -> hash -> string -> option data -> wallet:wallet -> cost (result (txSkeleton ** option message)) (2 + 66 + (64 + (64 + (64 + 64 + (Zen.Wallet.size wallet * 128 + 192) + 0)) + 25) + 29)\nlet main txSkeleton contractHash command data wallet =\n let! returnAddress = data >!> tryDict >?> tryFindLock \"returnAddress\" in\n\n match returnAddress with\n | Some returnAddress ->\n if command = \"redeem\" then\n redeem txSkeleton contractHash returnAddress wallet\n else if command = \"\" || command = \"buy\" then\n buy txSkeleton contractHash returnAddress\n |> autoInc\n else\n ET.autoFailw \"unsupported command\"\n | None ->\n ET.autoFailw \"returnAddress is required\"\n\nval cf: txSkeleton -> string -> option data -> wallet -> cost nat 24\nlet cf _ _ _ wallet = ret (2 + 66 + (64 + (64 + (64 + 64 + (Zen.Wallet.size wallet * 128 + 192) + 0)) + 25) + 29)"
},
{
"contractHash": "55be2edd1e537869cce832bd014aa1e3251aba651c5c3f38f70db86417faa9c4",
"address": "tc1q2klzahg72duxnn8gx27szj4puvj34wn9r3wr7w8hpkuxg9l648zqhc76xa",
"expire": 19375,
"code": "(* NAME_START: Example Token :NAME_END *)\nopen Zen.Types\nopen Zen.Vector\nopen Zen.Base\nopen Zen.Cost\nopen Zen.Asset\nopen Zen.Data\n\nmodule ET = Zen.ErrorT\nmodule OT = Zen.OptionT\nmodule Tx = Zen.TxSkeleton\nmodule CR = Zen.ContractResult.NoMessage\n\nlet buy txSkeleton contractHash returnAddress =\n let! tokens = Tx.getAvailableTokens zenAsset txSkeleton in\n\n let! contractAsset = getDefault contractHash in\n\n let! txSkeleton =\n Tx.lockToContract zenAsset tokens contractHash txSkeleton\n >>= Tx.mint tokens contractAsset\n >>= Tx.lockToAddress contractAsset tokens returnAddress in\n\n CR.ret txSkeleton\n\nlet redeem txSkeleton contractHash returnAddress wallet =\n let! contractAsset = getDefault contractHash in\n let! tokens = Tx.getAvailableTokens contractAsset txSkeleton in\n\n let! txSkeleton =\n Tx.destroy tokens contractAsset txSkeleton\n >>= Tx.lockToAddress zenAsset tokens returnAddress\n >>= Tx.fromWallet zenAsset tokens contractHash wallet in\n\n CR.ofOption \"contract doesn't have enough zens to pay you\" txSkeleton\n\nval main: txSkeleton -> hash -> string -> option data -> wallet:wallet -> cost (result (txSkeleton ** option message)) (2 + 66 + (64 + (64 + (64 + 64 + (Zen.Wallet.size wallet * 128 + 192) + 0)) + 25) + 29)\nlet main txSkeleton contractHash command data wallet =\n let! returnAddress = data >!> tryDict >?> tryFindLock \"returnAddress\" in\n\n match returnAddress with\n | Some returnAddress ->\n if command = \"redeem\" then\n redeem txSkeleton contractHash returnAddress wallet\n else if command = \"\" || command = \"buy\" then\n buy txSkeleton contractHash returnAddress\n |> autoInc\n else\n ET.autoFailw \"unsupported command\"\n | None ->\n ET.autoFailw \"returnAddress is required\"\n\nval cf: txSkeleton -> string -> option data -> wallet -> cost nat 24\nlet cf _ _ _ wallet = ret (2 + 66 + (64 + (64 + (64 + 64 + (Zen.Wallet.size wallet * 128 + 192) + 0)) + 25) + 29)"
}
]Contract ID
Path Parameters
Name
Type
Description
Activate Contract
Request Body
Name
Type
Description
Execute Contract
Request Body
Name
Type
Description
Extend Contract
Request Body
Name
Type
Description
Last updated