穩固智能合約 API
Oracle Blockchain Platform Enterprise Edition for Hyperledger Besu 提供 Solidity 方法,讓您能夠與 Solidity 智能合約搭配使用。
此 API 支援以 ERC-20 標準和 ERC-1155 標準為基礎的權杖。ERC-20 和 ERC-1155 實作包含帳戶智慧合約和權杖智慧合約。帳戶智慧合約提供識別和存取控制方法。變數替代字智慧合約提供與變數替代字特別相關的功能。
ERC-20 帳戶合約方式
帳戶管理方法
-
createAccount - 此方法會為指定的使用者建立帳戶。帳戶會追蹤使用者的權杖餘額和保留餘額,而且必須針對任何時間點都要有權杖的所有使用者建立。只有指定的組織之
Token Admin或Org Admin才能呼叫此方法。 -
deleteAccount - 此方法會刪除指定使用者的帳戶。只有在權杖餘額為零時,才能刪除帳戶。只有指定的組織之
Token Admin或Org Admin才能呼叫此方法。 -
getAccountStatus - 此方法會取得指定帳戶的目前狀態。此方法只能由指定組織的
Token Admin、Token Auditor、Org Admin或指定的使用者呼叫。 -
getAccountByAddress - 此方法會取得指定使用者的帳戶資訊。此方法只能由指定組織的
Token Admin、Token Auditor、Org Admin或指定的使用者呼叫。 -
getAllAccounts - 此方法會取得所有在指定範圍內之帳戶的帳戶資訊。只有
Token Admin或Token Auditor才能呼叫此方法。 -
activateAccount - 這個方法會啟動使用者帳號。只有指定的組織之
Token Admin或Org Admin才能呼叫此方法。 -
suspendAccount - 此方法會暫停使用者帳戶。若要刪除科目,科目餘額必須為零。只有指定的組織之
Token Admin或Org Admin才能呼叫此方法。 -
setMaxDailyAmount - 此方法會設定每日交易中可使用的記號數量上限。只有指定的組織之
Token Admin或Org Admin才能呼叫此方法。 -
setMaxDailyTransactionCount - 此方法會設定每日可完成的交易數上限。只有指定的組織之
Token Admin或Org Admin才能呼叫此方法。
管理員管理方法
-
addTokenAdmin - 此方法會將使用者新增為
Token Admin。只有Token Admin才能呼叫此方法。 -
removeTokenAdmin - 此方法會移除使用者作為
Token Admin。只有Token Admin才能呼叫此方法。 -
getAllTokenAdmins - 此方法會傳回所有
Token Admin使用者的清單。只有Token Admin或Token Auditor才能呼叫此方法。 -
isTokenAdmin - 此方法會檢查指定的使用者是否為
Token Admin。只有Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。 -
addOrgAdmin - 此方法會將使用者新增為
Org Admin。只有指定的組織之Token Admin或Org Admin才能呼叫此方法。 -
removeOrgAdmin - 此方法會移除使用者作為
Org Admin。只有指定的組織之Token Admin或Org Admin才能呼叫此方法。 -
getAllOrgAdmins - 此方法會傳回所有
Org Admin使用者的清單。只有Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。 -
isOrgAdmin - 此方法會檢查指定的使用者是否為
Org Admin。只有Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。
稽核者管理方法
-
addTokenAuditor - 此方法會將使用者新增為
Token Auditor。只有Token Admin才能呼叫此方法。 -
removeTokenAuditor - 此方法會移除使用者作為
Token Auditor。只有Token Admin才能呼叫此方法。 -
getAllTokenAuditors - 此方法會傳回所有
Token Auditor使用者的清單。只有Token Admin或Token Auditor才能呼叫此方法。 -
isTokenAuditor - 此方法會檢查指定的使用者是否為
Token Auditor。任何使用者都可以呼叫這個方法。 -
addOrgAuditor - 此方法會將使用者新增為
Org Auditor。只有指定的組織之Token Admin或Org Admin才能呼叫此方法。 -
removeOrgAuditor - 此方法會移除使用者作為
Org Auditor。只有指定的組織之Token Admin或Org Admin才能呼叫此方法。 -
getAllOrgAuditors - 此方法會傳回所有
Org Auditor使用者的清單。只有Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。 -
isOrgAuditor - 此方法會檢查指定的使用者是否為
Org Auditor。任何使用者都可以呼叫這個方法。
角色管理方法
ERC-20 權杖合約方式
權杖組態管理方法
-
__ERC20Token_init - 建置記號合約時,會呼叫此方法。只有
Token Admin才能呼叫此方法。 -
initializeERC20Token - 這個方法會初始化 ERC-20 token。只有
Token Admin才能呼叫此方法。 -
getToken - 此方法會取得記號的詳細資訊。只有
Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。 -
decimals - 這個方法會取得記號的小數值。只有
Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。
-
__ERC20Token_init - 建置權杖合約時會呼叫此方法。只有
Token Admin才能呼叫此方法。 -
initializeERC20Token - 這個方法會初始化 ERC-20 token。只有
Token Admin才能呼叫此方法。 -
getToken - 此方法會取得記號的詳細資訊。只有
Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。 -
cap - 此方法會取得權杖供應上限 (cap)。只有
Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。 -
balanceOf - 此方法會取得指定使用者的記號餘額。只有
Token Admin、Token Auditor、Org Admin、Org Auditor或指定的使用者才能呼叫此方法。
權杖行為管理 - 可變行為
權杖行為管理 - 可燒錄行為
-
burn - 此方法會停用 (燒錄) 記號。具有燒錄機角色的任何使用者都可以呼叫此方法。
-
batchBurn - 此方法一次會燒錄一個以上的使用者記號。具有燒錄機角色的任何使用者都可以呼叫此方法。
-
requestBurn - 燒錄機可以呼叫此方法,以傳送要求給公證人以燒錄指定數量的記號。
-
approveBurn - 公證人可以呼叫此方法來核准燒錄要求。
-
rejectBurn - 公證人可呼叫此方法以拒絕燒錄要求。
權杖行為管理 - 可傳輸行為
權杖行為管理 - 可委派行為
-
allowance - 此方法會將記號支出委派給指定的使用者。任何有記號的使用者都可以呼叫此方法。
-
approve - 此方法會核准指定委派之轉譯的記號數量。任何有記號的使用者都可以呼叫此方法。
-
transferFrom - 委派的支出者使用此方法來轉移權杖。
權杖行為管理 - 暫停的行為
-
isPaused - 此方法會檢查合約是否已暫停。只有
Token Admin、Token Auditor、Org Admin或Org Auditor才能呼叫此方法。 -
pause - 此方法會暫停合約。只有
Token Admin才能呼叫此方法。 -
unpause - 此方法會恢復合約。只有
Token Admin才能呼叫此方法。
權杖行為管理 - 可保留行為
-
hold - 此方法會代表記號擁有者建立保留。任何有記號的使用者都可以呼叫此方法。
-
executeHold - 此方法會核准保留要求。只有先前指定的公證人才能呼叫此方法。
-
releaseHold - 此方法會拒絕保留要求。只有先前指定的公證人才能呼叫此方法。
-
getOnHoldBalanceWithOperationId - 此方法會傳回指定作業 ID 的保留結餘。此方法可由指定組織的
Token Admin或Token Auditor、Org Admin或Org Auditor呼叫,或由交易參與者 (寄件者、收件者、公證人) 呼叫。 -
getAccountOnHoldBalance - 此方法會傳回指定帳戶的保留結餘。此方法可由指定組織的
Token Admin或Token Auditor、Org Admin或Org Auditor呼叫,或由交易參與者 (寄件者、收件者、公證人) 呼叫。
ERC-1155 帳戶合約方式
帳戶管理方法
-
createAccount - 此方法會為指定的使用者建立帳戶。帳戶會追蹤使用者的權杖餘額,而且必須針對任何時間點都必須有權杖的所有使用者建立。只有
Token Admin才能呼叫此方法。 -
deleteAccount - 此方法會刪除指定使用者的帳戶。只有在權杖餘額為零時,才能刪除帳戶。只有
Token Admin才能呼叫此方法。 -
getAccountStatus - 此方法會取得指定帳戶的目前狀態。只有
Token Admin或指定的使用者才能呼叫此方法。 -
getAccountByAddress - 此方法會取得指定使用者的帳戶資訊。只有
Token Admin或指定的使用者才能呼叫此方法。 -
getAllAccounts - 此方法會取得所有在指定範圍內之帳戶的帳戶資訊。只有
Token Admin才能呼叫此方法。 -
activateAccount - 這個方法會啟動使用者帳號。只有
Token Admin才能呼叫此方法。 -
suspendAccount - 此方法會暫停使用者帳戶。若要刪除科目,科目餘額必須為零。只有
Token Admin才能呼叫此方法。
管理員管理方法
-
addTokenAdmin - 此方法會將使用者新增為
Token Admin。只有Token Admin才能呼叫此方法。 -
removeTokenAdmin - 此方法會移除使用者作為
Token Admin。只有Token Admin才能呼叫此方法。 -
getAllTokenAdmins - 此方法會傳回所有
Token Admin使用者的清單。只有Token Admin才能呼叫此方法。 -
isTokenAdmin - 此方法會檢查指定的使用者是否為
Token Admin。只有Token Admin才能呼叫此方法。
角色管理方法
-
addRole - 此方法會將角色新增至指定的使用者。只有
Token Admin才能呼叫此方法。 -
removeRole - 此方法會從指定的使用者移除角色。只有指定的組織之
Token Admin或Org Admin才能呼叫此方法。 -
accountHasRole - 此方法會檢查使用者是否具有指定的角色。任何使用者都可以呼叫這個方法。
-
addTokenSysRole - 此方法會將
TOKEN_SYS_VAULT_ROLE角色新增至指定的使用者。只有Token Admin才能呼叫此方法。 -
removeTokenSysRole - 此方法會從指定的使用者移除
TOKEN_SYS_VAULT_ROLE角色。只有Token Admin才能呼叫此方法。 -
transferTokenSysRole - 此方法會將
TOKEN_SYS_VAULT_ROLE角色從某個使用者傳輸到另一個使用者。只有Token Admin才能呼叫此方法。
ERC-1155 權杖合約方式
權杖組態管理方法
-
__ERC1155Token_init - 建置記號合約時,會呼叫此方法。只有
Token Admin才能呼叫此方法。 -
saveNFTClass - 此方法會將 NFT 類別資訊儲存至分類帳。只有
Token Admin才能呼叫此方法。 -
createNonFungibleToken - 此方法會提示 NFT。只有具備 minter 角色的使用者才能呼叫此方法。
-
createFungibleToken - 建置記號合約時,會呼叫此方法。只有
Token Admin才能呼叫此方法。 -
getTokenById - 此方法會取得記號的詳細資訊。只有
Token Admin或記號擁有者才能呼叫此方法。 -
geTokenDecimals - 這個方法會取得記號的小數值。只有
Token Admin才能呼叫此方法。
-
tokenIdOf - 這個方法會取得記號的 ID。只有
Token Admin才能呼叫此方法。 -
balanceOf - 此方法會取得指定使用者的記號餘額。只有
Token Admin或記號擁有者才能呼叫此方法。 -
balanceOfBatch - 此方法會取得使用者清單的變數替代字餘額。只有
Token Admin或記號擁有者才能呼叫此方法。 -
exists - 此方法會檢查指定的記號是否存在。只有
Token Admin才能呼叫此方法。 -
totalSupply - 此方法檢查會取得合約中所有記號的供給總計。只有
Token Admin才能呼叫此方法。 -
totalSupply - 此方法檢查會取得合約中指定記號的供給總計。只有
Token Admin才能呼叫此方法。
權杖行為管理 - 可燒錄行為
-
burnBatch - 此方法會銷毀批次模式中的 ERC-1155 記號。記號必須初始化。具有燒錄機角色的任何使用者都可以呼叫此方法。
-
burnNFT - 這個方法會銷毀一個不可見的記號 (burns)。記號必須初始化。具有燒錄機角色的任何使用者都可以呼叫此方法。
權杖行為管理 - 可傳輸行為
-
safeTransferFrom - 此方法會將記號從寄件者傳輸給接收者。擁有記號的任何使用者都可以呼叫此方法。
-
safeBatchTransferFrom - 此方法會將記號從寄件者傳輸給接收者。擁有記號的任何使用者都可以呼叫此方法。
權杖行為管理 - 可委派行為
-
setApprovalForAll - 此方法會授予或撤銷權限,讓運算子根據
approved參數傳輸呼叫者的記號。擁有記號的任何使用者都可以呼叫此方法。 -
isApprovedForAll - 此方法會檢查是否已核准操作員移轉指定帳戶的權杖。擁有記號的任何使用者都可以呼叫此方法。
權杖行為管理 - 暫停的行為
-
paused - 此方法會檢查合約是否已暫停。任何使用者都可以呼叫這個方法。
-
pause - 此方法會暫停合約。只有
Token Admin才能呼叫此方法。 -
unpause - 此方法會恢復已暫停的合約。只有
Token Admin才能呼叫此方法。
權杖行為管理 - 可鎖定行為