Omni Core是比特币核心的一個分支,它在比特币協定之上實作了一個 新的Omni協定層。是以Omni Core的API互動的方式和比特币核心的 方式一樣,隻是添加了一些額外的Omni協定特性相關的RPC調用。本文提供omni api的速查表。
如果要快速掌握比特币的對接與應用開發,推薦彙智網的線上互動課程:
在Omni Core中保留了所有比特币核心的功能,預設的PRC端口依然是8332。 如果你希望同時運作Omni Core和比特币核心(例如使用不同的資料目錄), 那麼需要使用
-rpcport <port>
選項來指定一個不同的監聽端口。
所有指令都可以使用help顯示出來,特定指令的幫助資訊可以使用
help <command>
檢視。
Omni Core擴充的JSON-RPC API分為不同的組:
- 交易建立:建立、廣播omni交易相關api
- 資料查詢:查詢omni生态資訊相關api
- 裸交易管理:omni裸交易的建立或解碼相關api
- 手續費管理:擷取omni手續費資訊相關api
- 配置管理:設定omni核心參數相關api
1、Omni api - 交易建立
交易建立API用來建立并廣播Omni協定的交易,并傳回廣播交易的哈希。
- omni_send :建立并廣播發送一個簡單交易。
- omni_senddexsell :在傳統的分布式OMNI/BTC交易所挂售出單或更新賣單。
- omni_senddexaccept :建立并廣播一個成交單。
- omni_sendissuancecrowdsale :建立一個新的衆售代币
- omni_sendissuancefixed :建立一個固定供應量的代币
- omni_sendissuancemanaged :建立一個具有可調節供應量的新代币
- omni_sendsto :建立并廣播一個發送給屬主的交易
- omni_sendgrant :發行或授權代币
- omni_sendrevoke :回收受管代币
- omni_sendclosecrowdsale :手動關閉一個衆售
- omni_sendtrade :在分布式代币交易所挂交易單
- omni_sendcanceltradesbyprice :取消在分布式代币交易所上 的固定價格賣單
- omni_sendcanceltradesbypair :取消分布式代币交易所上的 指定交易對的所有挂單
- omni_sendcancelalltrades :取消分布式代币交易所上的所有挂單
- omni_sendchangeissuer :修改指定代币的發行人
- omni_sendall :将指定生态系統中的所有可用代币發送給接收方
- omni_sendenablefreezing :為一個集中管理的資産啟用位址當機
- omni_senddisablefreezing :禁用一個集中管理的資産的 位址當機
- omni_sendfreeze :當機指定集中化管理代币的特定位址
- omni_sendunfreeze :解凍一個集中管理的代币的指定位址
- omni_sendrawtx :廣播一個Omni層的裸交易
- omni_funded_send :建立并發送一個簡單充值交易
- omni_funded_sendall :建立并廣播一個交易,将所有可用 代表轉入指定生态系統中的接收位址
2、omni api - 資料查詢
資料查詢API用來擷取Omni生态系統的狀态資訊。
- omni_getinfo :傳回節點和協定的各種狀态資訊
- omni_getbalance :傳回指定位址和資産的代币餘額
- omni_getallbalancesforid :傳回指定現金或資産的代币餘額
- omni_getallbalancesforaddress :傳回指定位址的所有代币餘額
- omni_getwalletbalances :傳回整個錢包的所有代币的餘額資訊
- omni_getwalletaddressbalances :傳回每個錢包位址的所有代币餘額資訊
- omni_gettransaction :擷取指定Omni交易的詳細資訊
- omni_listtransactions :傳回錢包交易清單,可以使用位址或區塊進行過濾
- omni_listblocktransactions :列出指定區塊内的所有omni交易
- omni_listpendingtransactions :傳回記憶體池中等待确認的omni交易清單
- omni_getactivedexsells :傳回目前在分布式交易所中的活躍出價
- omni_listproperties :列出所有代币或智能資産的清單
- omni_getproperty :傳回指定的代币或智能資産的詳情
- omni_getactivecrowdsales :列出目前活動的衆售(crowdsale)
- omni_getcrowdsale :傳回指定衆售活動的資訊
- omni_getgrants :傳回授予及回收的可管理代币資訊
- omni_getsto :傳回指定的發送給屬主交易的詳情和接收方資訊
- omni_gettrade :擷取分布式代币交易所中指定訂單對應的交易詳情
- omni_getorderbook :傳回分布式代币交易所中的活躍委托清單
- omni_gettradehistoryforpair :擷取分布式代币交易所上指定市場的 交易曆史
- omni_gettradehistoryforaddress :傳回在分布式交易所中指定位址的 委托單曆史資訊
- omni_getactivations :傳回待定及完成的特性激活
- omni_getpayload :擷取一個Omni交易的載荷内容
- omni_getseedblocks :傳回包含Omni交易的區塊清單,以便用于種子區塊過濾
- omni_getcurrentconsensushash :傳回目前區塊的共識哈希
3、omni api - 裸交易管理
裸交易API用來解碼或建立Omni裸交易。
需要使用
signrawtransaction
簽名裸交易,然後使用
sendrawtransaction
廣播裸交易。
- omni_decodetransaction :解碼指定的Omni交易
- omni_createrawtx_opreturn :将一個op-return操作載荷添加到交易中
- omni_createrawtx_multisig :将bare-multisig操作載荷添加到交易中
- omni_createrawtx_input :為交易添加一個輸入
- omni_createrawtx_reference :将一個參考輸出添加到交易中
- omni_createrawtx_change :為交易添加一個找零輸出
- omni_createpayload_simplesend :建立一個用于簡單發送交易的載荷
- omni_createpayload_sendall :建立一個用于發送完全交易的載荷
- omni_createpayload_dexsell :建立一個用于在傳統的 分布式OMNI/BTC交易所送出、更新或取消委托單的載荷
- omni_createpayload_dexaccept :建立一個用于接受委托單的載荷
- omni_createpayload_sto :建立一個用于發送給屬主交易的載荷
- omni_createpayload_issuancefixed :建立一個用于發行 新的固定供應量代币的載荷
- omni_createpayload_issuancecrowdsale :建立一個用于衆售發行的新代币
- omni_createpayload_issuancemanaged :建立一個用于 定量可管理代币發行的載荷
- omni_createpayload_closecrowdsale :建立一個用于手動 關閉衆售的載荷
- omni_createpayload_grant :建立一個用于發行或授予可管理代币的載荷
- omni_createpayload_revoke :建立一個用于回收可管理代币的載荷
- omni_createpayload_changeissuer :建立一個用于修改代币發行方的載荷
- omni_createpayload_trade :建立一個用于在分布式代币交易所 釋出委托單的載荷
- omni_createpayload_canceltradesbyprice :建立一個用于在分布式代币 交易所取消指定價格委托單的載荷
- omni_createpayload_canceltradesbypair :建立一個用于在 分布式代币交易所取消指定交易對的委托單載荷
- omni_createpayload_cancelalltrades :建立一個用于在 分布式代币交易所取消所有指定交易對的委托單載荷
- omni_createpayload_enablefreezing :建立一個用于 在中心化管理的資産上啟用位址當機的載荷
- omni_createpayload_disablefreezing :建立一個用于集中管理式資産的 禁用位址當機的載荷
- omni_createpayload_freeze :建立一個用于當機集中管理式資産位址 的載荷
- omni_createpayload_unfreeze :建立一個用于解凍集中管理式資産位址 的載荷
4、omni api - 手續費管理
手續費相關API用來擷取手續費系統以及手續費分發的相關資料。
- omni_getfeecache :擷取目前緩存的手續費總額
- omni_getfeetrigger :傳回緩存手續費分發的觸發數量
- omni_getfeeshare :傳回分發觸發時的手續費位址占比
- omni_getfeedistribution :傳回指定的曆史分發的資料
- omni_getfeedistributions :傳回指定資産的曆史分發資料
5、omni api - 配置管理
配置管理API用來修改Omni核心設定。
- omni_setautocommit :設定是否自動送出及廣播交易的标志