DOCS

开发者文档

查阅 streamd、账户、交易与 JavaScript API。搜索标题或正文,快速找到所需接口。

开发文档

streamd-apis

开发文档

WEBSOCKET 和 JSON-RPC API

如果你想和streamd服务器直接交流,那可以使用WebSocket API或JSON-RPC API。两种API都使用相同的命令列表,每个命令中参数几乎完全相同。与Ra…

开发文档

API变化

WebSocket和JSON-RPCA API仍在开发中,并且受制于变化。

开发文档

STREAMD

开发文档

streamd-apis

STREAMDWEBSOCKET 和 JSON-RPC APIAPI变化请求格式响应格式连接streamd运行个人streamd的原因JSON-RPC命令行WebSock…

开发文档

STREAMD

运行Stream网络的核心点对点服务器被称为streamd。每个streamd服务器与Stream网络相连,转发加密签名交易,并保存一份完整共享的跨国总账的本地副本。st…

开发文档

WEBSOCKET 和 JSON-RPC API

如果你想和streamd服务器直接通信,那可以使用WebSocket API或JSON-RPC API。两种API都使用相同的命令列表,每个命令参数几乎完全相同。或者,你…

开发文档

API变化

WebSocket和JSON-RPC APIs仍在开发中,并且可能会发生变化。

开发文档

请求格式

WebSocket API 和JSON-RPC都把JSON用作请求和回应。API上的方法和参数通常是相同的,但两者之间具体的格式略有不同。命令行接口支持具有命令行参数的相…

开发文档

响应格式

成功响应样例 { "id": 2, "status": "success", "type": "response", "result": { "account_data"…

开发文档

连接streamd

在运行任何针对streamd服务器的命令之前,你必须知道你正在连接哪个服务器。大多数服务器被配置为不能接受直接来自外部网络的请求。 目前labs.stream提供的一些公…

开发文档

运行个人streamd的原因

有许多运行个人streamd服务器的原因,但大多数可以总结为“你信任自己的服务器,你可以控制它的工作量,而且你不需要别人决定使用服务器的时间和方式”。 相信你使用的str…

开发文档

WebSocket API

开发文档

JSON-RPC

你可以使用任何HTTP客户端(例如Poster for Firefox或Postman for Chrome)提交JSON-RPC访问请求(calls)到streamd服…

开发文档

命令行

命令行和JSON-RPC连接相同的服务,所以公共服务器和服务器配置是相同的。默认情况下,streamd连接本地实例。或者,你可以指定服务器连接配置文件或--rpc-ip命…

开发文档

WebSocket API

如果你正在Stream账本上尝试一些方法,那你可以跳过写自己的WebSocket代码,直接使用Stream WebSocket API Tool里的API。稍后,当你想要…

开发文档

错误响应

列举所有错误可能发生的方式几乎是不可能的。某些可能发生在运输层(例如,丢掉网络数据包),这种情况下,结果将根据你使用的客户端和运输工具而有所不同。然而,如果streamd…

开发文档

错误警告

当你的请求导致错误时,全部请求被后台记录下来作为部分响应,因而你可以试着调试错误。然而,这也包括作为请求一部分的任何机密。当共享错误信息时,一定要非常小心,不要把重要的账…

开发文档

通用错误

所有的方法可能返还以下错误代码值: unknownCmd - 该请求不包含streamd服务器识别的command. jsonInvalid - (只有WebSocket…

开发文档

格式约定

WebSocket和JSON-RPC API通常采用相同的参数,尽管是不同的方式(细节参见Request Formatting)。许多相似的参数出现在API中,而且还有一…

开发文档

唯一的识别码

不同类型的对象可以通过不同的方式识别出来: 可以通过地址base-58-encoded识别账户,例如"rLnR6ruCzsHRvhEAGMsr2kDHWNCMhs2hZc…

开发文档

指定总账实例

许多API方法要求你指定一个总账实例,包括可被检索到的正确数据和共享总账特定版本的最新数据。接受一个总账版本的命令都是按照同样的方式运作。以下有三个你指定想要使用的总账的…

开发文档

指定货币数量

开发文档

指定时间

开发文档

可能的服务器状态

开发文档

标记和页码

开发文档

修改总账

Stream全球共享账本的所有改变都是交易的结果。唯一可改变Stream账本的API方法是提交交易的命令。即便如此,只有交易获得共识认证之后,变更才会永久生效。其他大多数…

开发文档

API方法

WebSocket和JSON-RPC的API方法是根据命令名字来定义的,被分为公共命令和管理命令。公共命令不一定适用于普通公众,但是可以被连接到服务器的任意客户端使用。(…

开发文档

公共命令清单

account_currencies - 获取账户可以发送或接收的货币列表 account_channels - 获取账户是渠道来源的支付渠道列表 account_inf…

开发文档

管理命令

只有在配置文件标识为admin的主机和端口上连接时,streamd管理命令才可用。(默认情况下,命令行客户端使用管理连接。) can_delete - 允许在线删除分类账…

开发文档

命令行访问

您可以将该streamd应用程序(作为单独的实例)用作JSON-RPC客户端。在这种模式下,它具有从命令提示符用单行触发大多数API方法的语法,如每种方法中所述。但是,某…

开发文档

账户信息

Stream分类账中的“账户”代表STM的持有人和交易发送人。账户可以发送和接收STM和已发行资产,参与去中心化交易,并更改自己的设置。创建一个帐户涉及生成密钥,然后从另…

开发文档

account_info

该account_info命令将检索有关帐户,其活动和STM余额的信息。所有检索到的信息都与分类账的特定版本有关。 account_info请求的示例: { "id": …

开发文档

account_lines

该account_lines方法返回有关账户信任额度的信息,包括所有非STM货币和资产的余额。所有检索到的信息都与分类账的特定版本有关。 请求格式的示例: { "id":…

开发文档

account_offers

该account_offers方法检索由特定帐户作为特定分类账版本的优惠清单。 请求格式的示例: { "id": 2, "command": "account_offer…

开发文档

account_tx

该account_tx方法检索涉及指定帐户的交易列表。 请求格式的示例: { "id": 2, "command": "account_tx", "account": "…

开发文档

wallet_propose

使用wallet_propose方法生成新账户需要的密钥。以此种方式创建的账户当接收提供足够STM来达到账户储备金的交易时,只会被官方纳入stream网络。(wallet…

开发文档

基本数据类型

不同类型的对象以不同的方式唯一标识: 账户之间通过各自的地址来区分,比如"vDgSCaGS3iih9iKvfvRULrK7gurJjdDnUV"。地址以字母 v 开头,部…

开发文档

地址

Stream账本中的每个账户由一个base58编码格式的地址来识别,该地址通过改账户的主公钥来导出,而主公钥又通过账户的私钥来导出。一个地址由一个以下字符组成的json格…

开发文档

Hashes

在Stream中,尤其是其中的交易和账本,通过一个256-bit的hash值来唯一确定。此值通常通过“SHA-512 Half”来计算(通过内容来计算SHA-512,然后…

开发文档

账户序列

序列号是一个32位无符号整数,用于标识相对于特定帐户的交易或优惠。在Stream账本中每个账户拥有一个序列号,从1开始。对于一个发送到网络或者包含到验证账本的交易,它必须…

开发文档

总账索引

账本索引是用于识别分类帐的32位无符号整数。总账索引也被叫做账本的序列号。第一个账目的索引是1,并且每个新账目的分类索引都高于其之前的账目索引1. 账本索引表达了账目间的…

开发文档

指定总账实例

许多API方法要求你指定一个总账实例,包括可被检索到的正确数据和共享总账特定版本的最新数据。接受一个总账版本的命令都是按照同样的方式运作。以下有三个能用的你能指定总账的方…

开发文档

货币

Stream里面有两种不同的货币:stm和其他,两种货币之间有很多不同之处: stm 发行货币 没有发行者 通常通过发行商发行 指定为字符串 指定为对象 账户间流转 信任…

开发文档

指定货币金额

一些API方法要求你指定货币金额。指定风格取决于你用网络原生stm货币交易还是用其他货币单元(发行货币)交易。 STM STM数量可以表示为字符串。(stm精度是64位整…

开发文档

货币代码

STM账本中有两种货币代码:三字符货币代码。我们建议使用全大写的ISO 4217货币代码,然而,以下字符的任何组合都是允许的,所有大写和小写字母,数字以及符号?, !, …

开发文档

指定时间

streamd服务器和它的API把时间表示为未签名的整数。自2000年1月1日(00:00 UTC)起,测量到现在的秒数。这和Unix epoch 的工作方式类似,除了在…

开发文档

可能的服务器状态

依据streamd服务器配置方式、运行时间和其他因素,一个服务器可能在不同程度上参与跨国Stream点对点网络。这在对server_info 和server_state命…

开发文档

account_currencies

该account_currencies命令根据其信任线检索帐户可以发送或接收的货币列表。(这不是一个彻底确认的列表,但它可以用来填充用户界面。) 请求格式示例: { "c…

开发文档

account_channels

(需要启用PayChan amendment ) 该account_channels方法返回有关帐户的付款渠道的信息。这仅包括指定帐户是渠道来源的渠道,而不是目的地。(一…

开发文档

总账信息

每台streamd服务器都会保存STM分类帐当前状态的完整副本,其中包含优化树形格式中网络中的所有帐户,交易,优惠和其他数据。由于提出了交易和优惠,每个服务器将它们整合到…

开发文档

ledger

检索关于公共分类帐的信息。 请求格式的示例: { "id": 14, "command": "ledger", "ledger_index": "validated", …

开发文档

ledger_closed

该ledger_closed方法返回最近关闭的分类帐的唯一标识符。(这个分类账不一定是有效的和不可变的。) 请求格式的示例: { "id": 2, "command": …

开发文档

ledger_current

该ledger_current方法返回当前正在进行的分类帐的唯一标识符。该命令对于测试非常有用,因为返回的分类账仍然不断变化。请求格式的示例:{ "id": 2, "co…

开发文档

ledger_data

该ledger_data方法检索指定分类帐的内容。您可以遍历多个调用来检索单个分类帐版本的全部内容。 请求格式的示例: { "id": 2, "ledger_hash":…

开发文档

ledger_entry

该ledger_entry方法以原始格式从STM分类帐返回单个分类帐对象。请参阅分类帐格式了解有关可检索的不同类型对象的信息。 注意:此方法没有命令行版本。您可以使用该j…

开发文档

ledger_request

该ledger_request命令告诉服务器从其连接的对等方获取特定分类账版本。这只有在服务器的一个立即连接的同行拥有该分类账时才有效。您可能需要多次运行该命令才能完全获…

开发文档

ledger_accept

该ledger_accept方法强制服务器关闭当前工作分类帐并转到下一个分类帐号。此方法仅用于测试目的,并且仅在streamd服务器运行独立模式时可用。 该ledger_…

开发文档

交易管理

事务是唯一可以修改STM分类帐的共享状态的事务。StreamLedger上的所有业务都采用交易形式,其中不仅包括付款,还包括货币兑换优惠,账户设置以及对账本本身属性的更改…

开发文档

tx

该tx方法检索单个事务的信息。请求格式的示例:{ "id": 1, "command": "tx", "transaction": "17CF128117A275D1E0…

开发文档

transaction_entry

该transaction_entry方法从特定分类帐版本检索单个事务的信息。(tx相比之下,该命令将搜索指定事务的所有分类帐,我们建议使用该方法。)请求格式的示例:{ "…

开发文档

tx_history

该tx_history方法检索一些最近进行的交易。 警告:此方法已弃用,可能会被删除,恕不另行通知。 请求格式的示例: { "id": 5, "command": "tx…

开发文档

path_find

仅限WebSocket API!该path_find方法搜索可能进行交易的路径,并在路径随时间变化时定期发送更新。对于在STM中严格执行的付款,没有必要找到路径,因为ST…

开发文档

path_find创建

该create子命令path_find会创建一个持续请求,以查找可从一个指定帐户进行支付交易的可能路径,以便另一个帐户接收所需数量的某种货币。初始响应包含两个地址之间建议…

开发文档

path_find关闭

path_find子命令close指示服务器停止发送有关当前打开的寻路请求的信息。 请求格式的示例: { "id": 57, "command": "path_find"…

开发文档

path_find状态

请求立即更新客户端当前打开的寻路请求的path_find子命令status。 请求格式的示例: { "id": 58, "command": "path_find", "…

开发文档

sign

sign方法采用JSON格式的交易和密钥,并返回交易的带符号二进制表示。结果总是不同,即使您提供相同的交易JSON和密钥。要为多签名交易贡献一个签名,请改用该sign_f…

开发文档

自动填充字段

如果您忽略它们,服务器将自动尝试自动填写tx_json(交易对象)中的某些字段。服务器在签名之前提供以下字段,除非请求指定offline为true: Sequence -…

开发文档

vstream_path_find

该vstream_path_find方法是path_find的一个简化版本,可以立即使用以及提供支付路径单一响应。它可以在WebSocket和JSON-RPC API中使…

开发文档

submit

该submit方法应用交易并将其发送到网络以进行确认并包含在未来的分类账中。该命令有两种模式:仅提交模式将已签名的序列化事务作为二进制blob,并将其原样提交给网络。由于…

开发文档

仅提交模式

提交请求包含以下参数:FieldTypeDescriptiontx_blobString提交签名交易的十六进制表示。这可以是多签名的交易。fail_hardBoolean…

开发文档

签署和提交模式

此模式签署交易并立即提交。该模式旨在用于测试。您不能将此模式用于多重签名的交易。 您可以通过以下方式提供用于签署交易的密钥: 提供一个secret值并忽略该key_typ…

开发文档

book_offers

该book_offers方法检索两种货币之间的报价列表,也称为订单簿。如果结果非常大,则使用标记返回部分结果,以便稍后的请求可以从前一个请求的剩余位置恢复。 请求格式的示…

开发文档

订阅

使用订阅时,您可以让服务器在发生各种事件时将更新推送到客户端,以便您可以立即知道并做出反应。订阅仅在WebSocket API中受支持,您可以在同一频道中接收其他响应。 …

开发文档

subscribe

该 subscribe方法在发生某些事件时请求服务器定期发出通知。 请求格式的示例: { "id": "Example watch Bitstamp's hot wall…

开发文档

Ledger Stream

该ledger流只发送ledgerClosed消息时的共识的过程声明了一个新的有效的分类帐。该消息标识分类帐并提供有关其内容的一些信息。{ "type": "ledger…

开发文档

Transaction Streams

许多订阅会导致有关交易的消息,其中包括以下内容:该 transactions流该transactions_proposed流accounts 订阅accounts_pro…

开发文档

Peer Status Stream

管理员专用peer_status流会报告有关streamd此服务器所连接的其他服务器的活动的大量信息,特别是它们在共识流程中的状态。对等状态流消息的示例:{ "actio…

开发文档

unsubscribe

该unsubscribe命令会通知服务器停止发送特定订阅或订阅集的消息。 请求格式的示例: { "id": "Unsubscribe a lot of stuff", "…

开发文档

服务器信息

还有一些命令可以检索有关服务器当前状态的信息。这些可能对监视服务器的健康状况或准备制作其他API方法很有用。例如,您可以在发送交易之前查询当前费用明细表,或者您可以在挖掘…

开发文档

server_info

该server_info命令向服务器请求关于streamd正被查询的服务器的各种信息的人类可读版本。 请求格式的示例: { "id": 1, "command": "se…

开发文档

server_state

该server_state命令向服务器询问有关streamd服务器当前状态的各种机器可读信息。结果几乎相同server_info,但使用易于处理而不易读取的单位。(例如,…

开发文档

can_delete

在启用online_delete和advisory_delete配置选项的情况下,该can_delete方法通知Streamd服务器可能被删除的最新分类帐。 该can_d…

开发文档

consensus_info

该consensus_info命令提供了有关用于调试目的的一致过程的信息。 该consensus_info方法是不能由非特权用户运行的管理员命令。 请求格式的示例: { …

开发文档

fetch_info

该 fetch_info命令返回有关此服务器当前从网络中获取的对象的信息,以及有多少对等端具有该信息。它也可以用来重置当前的提取。 该fetch_info方法是一个管理员…

开发文档

feature

该feature命令返回有关服务器了解的修改的信息,包括它们是否已启用以及服务器是否投票赞成修改过程中的这些修改。 您可以使用该feature命令临时配置服务器投票反对或…

开发文档

get_counts

该get_counts命令提供有关服务器运行状况的各种统计信息,主要是当前在内存中保存的不同类型的对象数量。 该get_counts方法是不能由非特权用户运行的管理员命令…

开发文档

ledger_cleaner

该ledger_cleaner命令控制Ledger Cleaner,这是一个异步维护过程,可以查找和修复streamd分类账数据库中的损坏。该ledger_cleaner…

开发文档

log_level

该log_level命令更改streamd服务器的日志记录详细程度,或者为日志消息的每个类别(称为分区)返回当前日志记录级别。 该log_level方法是不能由非特权用户…

开发文档

logrotate

该logrotate命令关闭并重新打开日志文件。这旨在帮助Linux文件系统上的日志循环。该logrotate方法是不能由非特权用户运行的管理员命令。请求格式的示例:{ …

开发文档

validation_create

使用该validation_create命令生成Streamd校验器的密钥。与wallet_propose命令类似,此命令不会进行实际更改,但只会生成一组具有适当格式的键…

开发文档

validation_seed

该validation_seed命令临时设置streamd用于签署验证的秘密值。重新启动服务器时,此值将根据配置文件进行重置。该validation_seed请求是一个不…

开发文档

peers

该peers命令返回streamd当前连接到该服务器的所有其他服务器的列表,包括有关其连接和同步状态的信息。 该peers请求是一个不能由非特权用户运行的管理命令! 请求…

开发文档

print

该print命令返回各种内部子系统的当前状态,包括同级,分类清理器和资源管理器。 该print请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "id":…

开发文档

便利功能

streamd服务器还提供了一些命令纯粹是为了方便。

开发文档

ping

该ping命令返回一个确认,以便客户端可以测试连接状态和延迟。 请求格式的示例: { "id": 1, "command": "ping" } { "method": "…

开发文档

random

该random命令提供一个随机数,用作客户端产生随机数的熵源。请求格式的示例:{ "id": 1, "command": "random" }{ "method": "r…

开发文档

json

该json方法是运行其他命令的代理,并将该命令的参数作为JSON值接受。它是Commandline客户端专用的,用于指定参数的命令行语法不足或不合需要的情况。请求格式的示…

开发文档

connect

该connect命令强制streamd服务器连接到特定的对等streamd服务器。 该connect请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "c…

开发文档

stop

优雅地关闭服务器。该stop请求是一个不能由非特权用户运行的管理命令!请求格式的示例:{ "id": 0, "command": "stop" }{ "method": …

开发文档

novstream_check

该novstream_check命令提供了一种快速检查帐户的DefaultStream字段以及其信任线的Novstream标志的状态,并与建议的设置进行比较。 请求格式的…

开发文档

STREAMD

运行Stream网络的核心点对点服务器被称为streamd。每个streamd服务器与Stream网络相连,转发加密签名交易,并保存一份完整共享的跨国总账的本地副本。st…

开发文档

API变化

WebSocket和JSON-RPC APIs仍在开发中,并且可能会发生变化。

开发文档

StreamAPI for JavaScript

开发文档

介绍

StreamAPI是STM Ledger的官方客户端库。目前,StreamAPI仅适用于JavaScript。使用StreamAPI,您可以:从STM分类帐历史中查询交易…

开发文档

样板

使用以下样板代码使用StreamAPI封装您的自定义代码。 <script> var remote = new stream.Remote({ trace: …

开发文档

基本类型

开发文档

地址

"vngFb3bKpGyocUfUR3VYjn9osaE6wXaZsr"每个STM分类帐帐户都有一个地址,该地址是该帐户公钥的散列的base58编码。STM分类帐地址始终…

开发文档

账户序列号

每个STM分类帐帐户都有一个序号,用于保持交易顺序。每笔交易都必须有一个序列号。只有在发送它的账户中具有下一个序列号时才能执行交易。这可以防止一次事务执行两次,并且事务执…

开发文档

货币

货币表示为3个字符的货币代码或40个字符的大写十六进制字符串。我们建议仅使用大写的ISO 4217货币代码。信任线上不允许使用字符串“STM”,因为它是为STM分类帐本币…

开发文档

Value

Value是表示为一个十进制字符串的货币的量。注意:JavaScript的原生数字格式没有足够的精度来表示所有值。STM与其他货币的精度不同。STM在小数点后有6位有效数…

开发文档

Amount

示例: { "currency": "USD", "counterparty": "vngFb3bKpGyocUfUR3VYjn9osaE6wXaZsr", "value…

开发文档

交易概览

开发文档

交易相关

开发文档

在Stream网络中转账

示例代码: StreamSimple.send = function(srcAccount,destAddressAndAmount,callback){ var ss …

开发文档

获取STM余额

示例代码: StreamSimple.getBalance = function (address, callback) { if (!stream.UInt160.is…

开发文档

获取非STM资产的信息

示例代码: StreamSimple.getTrustLines = function (address, callback) { if (!stream.UInt160…

开发文档

获取历史记录

示例代码:StreamSimple.getHistory = function (address, callback) { if (!stream.UInt160.is_…

开发文档

获取特定账本好之后的历史记录

示例代码:StreamSimple.getHistoryFromLedger = function (address, ledger_index_min,callback…

开发文档

查询账户账本号区间的记录

示例代码:StreamSimple.getHistoryFromLedgerLimit = function (address, ledger_index_min,led…

开发文档

交易概览

开发文档

交易类型

交易类型由下表第一列中的字符串指定。 Type Description payment 一个payment交易代表的值从一个帐户转移到另一个。根据所采取的路径,可能会自动…

开发文档

交易流程

执行StreamAPI需要以下四个步骤:准备 - 根据规范和说明创建未签名的事务。有一种方法来准备每种类型的交易:preparePaymentprepareTrustli…

开发文档

交易费用

每笔交易都必须销毁少量的STM作为发送交易的费用。这也被称为交易费用。交易成本被设计为随着STM分类帐的负载而增加,这使得故意或无意中过载支持STM分类帐的对等网络非常昂…

开发文档

交易说明

交易指令指示如何执行交易,与交易规范互补。 Name Type Description fee value 可选 精确的费用为交易支付。请参阅交易费用了解更多信息。 ma…

开发文档

交易ID

"F4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF"事务ID是唯一标识事务的64位十六进制…

开发文档

交易Memos

每个事务可以有选择地为用户应用程序提供一个备忘录数组。memos每个事务规范中的字段都是具有以下结构的对象数组:NameTypeDescriptiondatastring…

开发文档

交易规格

一个交易规范指定事务应该做的事情。每种交易类型都有其自己的规格类型。

开发文档

付款

有关说明,请参阅交易类型。 Name Type Description source object 资金的来源将被发送。 source. address address …

开发文档

Trustline

有关说明,请参阅交易类型。NameTypeDescriptioncurrencycurrency此信任线适用的货币。counterpartyaddress此信任线将信任扩…

开发文档

Order

有关说明,请参阅交易类型。NameTypeDescriptiondirectionstring等于购买订单的“买入”和卖出订单的“卖出”。quantityamount买或…

开发文档

Order Cancellation

有关说明,请参阅交易类型。NameTypeDescriptionorderSequencesequence要取消的订单的序列号。memosmemos可选 附加到交易的备忘…

开发文档

Settings

有关说明,请参阅交易类型。 Name Type Description depositAuth boolean 可选 此帐户启用存款授权。如果设置,则交易无法将任何类型的…

开发文档

托管创建

有关说明,请参阅交易类型。NameTypeDescriptionamountvalue发件人托管的STM金额。destinationaddress地址以接收托管的STM。…

开发文档

托管取消

有关说明,请参阅交易类型。NameTypeDescriptionowneraddress要取消的托管所有者的地址。escrowSequencesequence托管创建交易…

开发文档

托管执行

有关说明,请参阅交易类型。NameTypeDescriptionowneraddress要执行的托管所有者的地址。escrowSequencesequence托管执行的托…

开发文档

支票创建

有关说明,请参阅交易类型。NameTypeDescriptiondestinationaddress可以兑现支票的账户地址。sendMaxlaxAmount允许支票支付发…

开发文档

支票取消

有关说明,请参阅交易类型。NameTypeDescriptioncheckIDstring作为一个64个字符的十六进制字符串取消检查分类帐对象的ID。示例:{ "chec…

开发文档

兑现支票

有关说明,请参阅交易类型。NameTypeDescriptioncheckIDstring将支票分类帐对象的ID设置为现金,作为64个字符的十六进制字符串。amountl…

开发文档

支付通道创建

有关说明,请参阅交易类型。NameTypeDescriptionamountvalue发送者在此通道留出的STM数量。destinationaddress收到STM针对此…

开发文档

支付通道基金

有关说明,请参阅交易类型。NameTypeDescriptionamountvalueSTM用于为通道提供资金的数量。channelstring256位十六进制通道标识符…

开发文档

付款通道索赔

有关说明,请参阅交易类型。NameTypeDescriptionchannelstring256位十六进制通道标识符。amountvalue可选 处理索赔后,此通道的 S…

开发文档

API方法

开发文档

connect

connect(): Promise<void> 告诉StreamAPI实例连接到它的服务器。 参数: 此方法没有参数。 返回值: 无返回值,建立一个连接。

开发文档

disconnect

disconnect(): Promise<void> 告诉StreamAPI实例从其Stream的服务器断开连接。 参数: 此方法没有参数。 返回值: 无返…

开发文档

isConnected

isConnected(): boolean 检查StreamAPI实例是否连接到Stream的服务器。 参数: 此方法没有参数。 返回值: true 已成功连接 fal…

开发文档

requestServerInfo

requestServerInfo(): Promise<object>获取有关StreamAPI实例连接到的服务器的状态信息。参数:此方法没有参数。Name…

开发文档

requestAccountCurrencies

该requestAccountCurrencies命令根据其信任线检索帐户可以发送或接收的货币列表。(这不是一个彻底确认的列表,但它可以用来填充用户界面。) 请求格式示例…

开发文档

requestAccountInfo

该requestAccountInfo命令将检索有关帐户,其活动和STM余额的信息。所有检索到的信息都与分类账的特定版本有关。 requestAccountInfo请求的…

开发文档

requestAccountOffers

该requestAccountOffers方法检索由特定帐户作为特定分类账版本的优惠清单。请求格式的示例:remote.connect(function() { remo…

开发文档

requestAccountTx

该requestAccountTx方法检索涉及指定帐户的交易列表。 请求格式的示例: remote.connect(function() { remote.request…

开发文档

requestLedger

检索关于公共分类帐的信息。请求格式的示例:remote.connect(function() { remote.requestLedger({ ledger_index:…

开发文档

requestLedgerHash

该requestLedgerHash方法返回最近关闭的分类帐的唯一标识符。(这个分类账不一定是有效的和不可变的。) 请求格式的示例: remote.connect(fun…

开发文档

requestLedgerCurrent

该requestLedgerCurrent方法返回当前正在进行的分类帐的唯一标识符。该命令对于测试非常有用,因为返回的分类账仍然不断变化。请求格式的示例:remote.c…

开发文档

requestLedgerEntry

开发文档

requestTx

该requestTx方法检索单个事务的信息。 requestTx(hash, callback) 请求格式的示例: remote.connect(function() {…

开发文档

requestTransactionEntry

该requestTransactionEntry方法从特定分类帐版本检索单个事务的信息。(tx相比之下,该命令将搜索指定事务的所有分类帐,我们建议使用该方法。)reque…

开发文档

requestTxHistory

该requestTxHistory方法检索一些最近进行的交易。requestTxHistory(start, callback)请求格式的示例:remote.connec…

开发文档

requestPathFind

该requestPathFind方法搜索可能进行交易的路径,并在路径随时间变化时定期发送更新。对于在STM中严格执行的付款,没有必要找到路径,因为STM可以直接发送到任何…

开发文档

requestPathFindCreate

该create子命令requestPathFindCreate会创建一个持续请求,以查找可从一个指定帐户进行支付交易的可能路径,以便另一个帐户接收所需数量的某种货币。初始…

开发文档

requestPathFindClose

requestPathFindClose指示服务器停止发送有关当前打开的寻路请求的信息。 请求格式的示例: remote.connect(function() { rem…

开发文档

requestStreamPathFind

该requestStreamPathFind方法是requestpathfind的一个简化版本,可以立即使用以及提供支付路径单一响应。然而,随着时间的推移,结果往往会过时…

开发文档

requestSign

requestSign方法采用JSON格式的交易和密钥,并返回交易的带符号二进制表示。结果总是不同,即使您提供相同的交易JSON和密钥。 requestSign(secr…

开发文档

requestSubscribe

该 subscribe方法在发生某些事件时请求服务器定期发出通知。 requestSubscribe(streams, callback) 请求格式的示例: remote…

开发文档

requestUnsubscribe

该requestUnsubscribe命令会通知服务器停止发送特定订阅或订阅集的消息。requestUnsubscribe(streams, callback)请求格式的…

开发文档

1755

介绍样板基本类型地址账户序列号货币ValueAmountAPI方法connectdisconnectisConnectedrequestServerInforequest…

开发文档

1756

STREAMDWEBSOCKET 和 JSON-RPC APIAPI变化请求格式响应格式连接streamd运行个人streamd的原因JSON-RPC命令行WebSock…

开发文档

streamd-apis

开发文档

STREAMD

运行Stream网络的核心点对点服务器被称为streamd。每个streamd服务器与Stream网络相连,转发加密签名交易,并保存一份完整共享的跨国总账的本地副本。st…

开发文档

WEBSOCKET 和 JSON-RPC API

如果你想和streamd服务器直接通信,那可以使用WebSocket API或JSON-RPC API。两种API都使用相同的命令列表,每个命令参数几乎完全相同。或者,你…

开发文档

API变化

WebSocket和JSON-RPC APIs仍在开发中,并且可能会发生变化。

开发文档

请求格式

WebSocket API 和JSON-RPC都把JSON用作请求和回应。API上的方法和参数通常是相同的,但两者之间具体的格式略有不同。命令行接口支持具有命令行参数的相…

开发文档

响应格式

成功响应样例 { "id": 2, "status": "success", "type": "response", "result": { "account_data"…

开发文档

连接streamd

在运行任何针对streamd服务器的命令之前,你必须知道你正在连接哪个服务器。大多数服务器被配置为不能接受直接来自外部网络的请求。 目前labs.stream提供的一些公…

开发文档

运行个人streamd的原因

有许多运行个人streamd服务器的原因,但大多数可以总结为“你信任自己的服务器,你可以控制它的工作量,而且你不需要别人决定使用服务器的时间和方式”。 相信你使用的str…

开发文档

JSON-RPC

你可以使用任何HTTP客户端(例如Poster for Firefox或Postman for Chrome)提交JSON-RPC访问请求(calls)到streamd服…

开发文档

命令行

命令行和JSON-RPC连接相同的服务,所以公共服务器和服务器配置是相同的。默认情况下,streamd连接本地实例。或者,你可以指定服务器连接配置文件或--rpc-ip命…

开发文档

WebSocket API

如果你正在Stream账本上尝试一些方法,那你可以跳过写自己的WebSocket代码,直接使用Stream WebSocket API Tool里的API。稍后,当你想要…

开发文档

错误响应

列举所有错误可能发生的方式几乎是不可能的。某些可能发生在运输层(例如,丢掉网络数据包),这种情况下,结果将根据你使用的客户端和运输工具而有所不同。然而,如果streamd…

开发文档

错误警告

当你的请求导致错误时,全部请求被后台记录下来作为部分响应,因而你可以试着调试错误。然而,这也包括作为请求一部分的任何机密。当共享错误信息时,一定要非常小心,不要把重要的账…

开发文档

通用错误

所有的方法可能返还以下错误代码值: unknownCmd - 该请求不包含streamd服务器识别的command. jsonInvalid - (只有WebSocket…

开发文档

格式约定

WebSocket和JSON-RPC API通常采用相同的参数,尽管是不同的方式(细节参见Request Formatting)。许多相似的参数出现在API中,而且还有一…

开发文档

修改总账

Stream全球共享账本的所有改变都是交易的结果。唯一可改变Stream账本的API方法是提交交易的命令。即便如此,只有交易获得共识认证之后,变更才会永久生效。其他大多数…

开发文档

API方法

WebSocket和JSON-RPC的API方法是根据命令名字来定义的,被分为公共命令和管理命令。公共命令不一定适用于普通公众,但是可以被连接到服务器的任意客户端使用。(…

开发文档

公共命令清单

account_currencies - 获取账户可以发送或接收的货币列表 account_channels - 获取账户是渠道来源的支付渠道列表 account_inf…

开发文档

管理命令

只有在配置文件标识为admin的主机和端口上连接时,streamd管理命令才可用。(默认情况下,命令行客户端使用管理连接。) can_delete - 允许在线删除分类账…

开发文档

命令行访问

您可以将该streamd应用程序(作为单独的实例)用作JSON-RPC客户端。在这种模式下,它具有从命令提示符用单行触发大多数API方法的语法,如每种方法中所述。但是,某…

开发文档

账户信息

Stream分类账中的“账户”代表STM的持有人和交易发送人。账户可以发送和接收STM和已发行资产,参与去中心化交易,并更改自己的设置。创建一个帐户涉及生成密钥,然后从另…

开发文档

1780

该account_info命令将检索有关帐户,其活动和STM余额的信息。所有检索到的信息都与分类账的特定版本有关。 account_info请求的示例: { "id": …

开发文档

account_lines

该account_lines方法返回有关账户信任额度的信息,包括所有非STM货币和资产的余额。所有检索到的信息都与分类账的特定版本有关。 请求格式的示例: { "id":…

开发文档

account_offers

该account_offers方法检索由特定帐户作为特定分类账版本的优惠清单。 请求格式的示例: { "id": 2, "command": "account_offer…

开发文档

account_tx

该account_tx方法检索涉及指定帐户的交易列表。 请求格式的示例: { "id": 2, "command": "account_tx", "account": "…

开发文档

wallet_propose

使用wallet_propose方法生成新账户需要的密钥。以此种方式创建的账户当接收提供足够STM来达到账户储备金的交易时,只会被官方纳入stream网络。(wallet…

开发文档

基本数据类型

不同类型的对象以不同的方式唯一标识: 账户之间通过各自的地址来区分,比如"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59"。地址以字母 r 开头,部…

开发文档

地址

Stream账本中的每个账户由一个base58编码格式的地址来识别,该地址通过改账户的主公钥来导出,而主公钥又通过账户的私钥来导出。一个地址由一个以下字符组成的json格…

开发文档

Hashes

在Stream中,尤其是其中的交易和账本,通过一个256-bit的hash值来唯一确定。此值通常通过“SHA-512 Half”来计算(通过内容来计算SHA-512,然后…

开发文档

账户序列

序列号是一个32位无符号整数,用于标识相对于特定帐户的交易或优惠。在Stream账本中每个账户拥有一个序列号,从1开始。对于一个发送到网络或者包含到验证账本的交易,它必须…

开发文档

总账索引

账本索引是用于识别分类帐的32位无符号整数。总账索引也被叫做账本的序列号。第一个账目的索引是1,并且每个新账目的分类索引都高于其之前的账目索引1. 账本索引表达了账目间的…

开发文档

指定总账实例

许多API方法要求你指定一个总账实例,包括可被检索到的正确数据和共享总账特定版本的最新数据。接受一个总账版本的命令都是按照同样的方式运作。以下有三个能用的你能指定总账的方…

开发文档

货币

Stream里面有两种不同的货币:stm和其他,两种货币之间有很多不同之处: stm 发行货币 没有发行者 通常通过发行商发行 指定为字符串 指定为对象 账户间流转 信任…

开发文档

指定货币金额

一些API方法要求你指定货币金额。指定风格取决于你用网络原生stm货币交易还是用其他货币单元(发行货币)交易。 STM STM数量可以表示为字符串。(stm精度是64位整…

开发文档

货币代码

STM账本中有两种货币代码:三字符货币代码。我们建议使用全大写的ISO 4217货币代码,然而,以下字符的任何组合都是允许的,所有大写和小写字母,数字以及符号?, !, …

开发文档

指定时间

streamd服务器和它的API把时间表示为未签名的整数。自2000年1月1日(00:00 UTC)起,测量到现在的秒数。这和Unix epoch 的工作方式类似,除了在…

开发文档

可能的服务器状态

依据streamd服务器配置方式、运行时间和其他因素,一个服务器可能在不同程度上参与跨国Stream点对点网络。这在对server_info 和server_state命…

开发文档

account_currencies

该account_currencies命令根据其信任线检索帐户可以发送或接收的货币列表。(这不是一个彻底确认的列表,但它可以用来填充用户界面。) 请求格式示例: { "c…

开发文档

总账信息

每台streamd服务器都会保存STM分类帐当前状态的完整副本,其中包含优化树形格式中网络中的所有帐户,交易,优惠和其他数据。由于提出了交易和优惠,每个服务器将它们整合到…

开发文档

ledger

检索关于公共分类帐的信息。 请求格式的示例: { "id": 14, "command": "ledger", "ledger_index": "validated", …

开发文档

ledger_closed

该ledger_closed方法返回最近关闭的分类帐的唯一标识符。(这个分类账不一定是有效的和不可变的。) 请求格式的示例: { "id": 2, "command": …

开发文档

ledger_current

该ledger_current方法返回当前正在进行的分类帐的唯一标识符。该命令对于测试非常有用,因为返回的分类账仍然不断变化。请求格式的示例:{ "id": 2, "co…

开发文档

ledger_data

该ledger_data方法检索指定分类帐的内容。您可以遍历多个调用来检索单个分类帐版本的全部内容。 请求格式的示例: { "id": 2, "ledger_hash":…

开发文档

ledger_entry

该ledger_entry方法以原始格式从STM分类帐返回单个分类帐对象。请参阅分类帐格式了解有关可检索的不同类型对象的信息。 注意:此方法没有命令行版本。您可以使用该j…

开发文档

ledger_request

该ledger_request命令告诉服务器从其连接的对等方获取特定分类账版本。这只有在服务器的一个立即连接的同行拥有该分类账时才有效。您可能需要多次运行该命令才能完全获…

开发文档

ledger_accept

该ledger_accept方法强制服务器关闭当前工作分类帐并转到下一个分类帐号。此方法仅用于测试目的,并且仅在streamd服务器运行独立模式时可用。 该ledger_…

开发文档

交易管理

事务是唯一可以修改STM分类帐的共享状态的事务。StreamLedger上的所有业务都采用交易形式,其中不仅包括付款,还包括货币兑换优惠,账户设置以及对账本本身属性的更改…

开发文档

tx

该tx方法检索单个事务的信息。请求格式的示例:{ "id": 1, "command": "tx", "transaction": "17CF128117A275D1E0…

开发文档

transaction_entry

该transaction_entry方法从特定分类帐版本检索单个事务的信息。(tx相比之下,该命令将搜索指定事务的所有分类帐,我们建议使用该方法。)请求格式的示例:{ "…

开发文档

tx_history

该tx_history方法检索一些最近进行的交易。 警告:此方法已弃用,可能会被删除,恕不另行通知。 请求格式的示例: { "id": 5, "command": "tx…

开发文档

path_find

仅限WebSocket API!该path_find方法搜索可能进行交易的路径,并在路径随时间变化时定期发送更新。对于在STM中严格执行的付款,没有必要找到路径,因为ST…

开发文档

path_find创建

该create子命令path_find会创建一个持续请求,以查找可从一个指定帐户进行支付交易的可能路径,以便另一个帐户接收所需数量的某种货币。初始响应包含两个地址之间建议…

开发文档

path_find关闭

path_find子命令close指示服务器停止发送有关当前打开的寻路请求的信息。 请求格式的示例: { "id": 57, "command": "path_find"…

开发文档

path_find状态

请求立即更新客户端当前打开的寻路请求的path_find子命令status。 请求格式的示例: { "id": 58, "command": "path_find", "…

开发文档

sign

sign方法采用JSON格式的交易和密钥,并返回交易的带符号二进制表示。结果总是不同,即使您提供相同的交易JSON和密钥。要为多签名交易贡献一个签名,请改用该sign_f…

开发文档

自动填充字段

如果您忽略它们,服务器将自动尝试自动填写tx_json(交易对象)中的某些字段。服务器在签名之前提供以下字段,除非请求指定offline为true: Sequence -…

开发文档

vstream_path_find

该vstream_path_find方法是path_find的一个简化版本,可以立即使用以及提供支付路径单一响应。它可以在WebSocket和JSON-RPC API中使…

开发文档

submit

该submit方法应用交易并将其发送到网络以进行确认并包含在未来的分类账中。该命令有两种模式:仅提交模式将已签名的序列化事务作为二进制blob,并将其原样提交给网络。由于…

开发文档

仅提交模式

提交请求包含以下参数:FieldTypeDescriptiontx_blobString提交签名交易的十六进制表示。这可以是多签名的交易。fail_hardBoolean…

开发文档

签署和提交模式

此模式签署交易并立即提交。该模式旨在用于测试。您不能将此模式用于多重签名的交易。 您可以通过以下方式提供用于签署交易的密钥: 提供一个secret值并忽略该key_typ…

开发文档

book_offers

该book_offers方法检索两种货币之间的报价列表,也称为订单簿。如果结果非常大,则使用标记返回部分结果,以便稍后的请求可以从前一个请求的剩余位置恢复。 请求格式的示…

开发文档

订阅

使用订阅时,您可以让服务器在发生各种事件时将更新推送到客户端,以便您可以立即知道并做出反应。订阅仅在WebSocket API中受支持,您可以在同一频道中接收其他响应。 …

开发文档

subscribe

该 subscribe方法在发生某些事件时请求服务器定期发出通知。 请求格式的示例: { "id": "Example watch Bitstamp's hot wall…

开发文档

Ledger Stream

该ledger流只发送ledgerClosed消息时的共识的过程声明了一个新的有效的分类帐。该消息标识分类帐并提供有关其内容的一些信息。{ "type": "ledger…

开发文档

Transaction Streams

许多订阅会导致有关交易的消息,其中包括以下内容:该 transactions流该transactions_proposed流accounts 订阅accounts_pro…

开发文档

Peer Status Stream

管理员专用peer_status流会报告有关streamd此服务器所连接的其他服务器的活动的大量信息,特别是它们在共识流程中的状态。对等状态流消息的示例:{ "actio…

开发文档

unsubscribe

该unsubscribe命令会通知服务器停止发送特定订阅或订阅集的消息。 请求格式的示例: { "id": "Unsubscribe a lot of stuff", "…

开发文档

服务器信息

还有一些命令可以检索有关服务器当前状态的信息。这些可能对监视服务器的健康状况或准备制作其他API方法很有用。例如,您可以在发送交易之前查询当前费用明细表,或者您可以在挖掘…

开发文档

server_info

该server_info命令向服务器请求关于streamd正被查询的服务器的各种信息的人类可读版本。 请求格式的示例: { "id": 1, "command": "se…

开发文档

server_state

该server_state命令向服务器询问有关streamd服务器当前状态的各种机器可读信息。结果几乎相同server_info,但使用易于处理而不易读取的单位。(例如,…

开发文档

can_delete

在启用online_delete和advisory_delete配置选项的情况下,该can_delete方法通知Streamd服务器可能被删除的最新分类帐。 该can_d…

开发文档

consensus_info

该consensus_info命令提供了有关用于调试目的的一致过程的信息。 该consensus_info方法是不能由非特权用户运行的管理员命令。 请求格式的示例: { …

开发文档

fetch_info

该 fetch_info命令返回有关此服务器当前从网络中获取的对象的信息,以及有多少对等端具有该信息。它也可以用来重置当前的提取。 该fetch_info方法是一个管理员…

开发文档

feature

该feature命令返回有关服务器了解的修改的信息,包括它们是否已启用以及服务器是否投票赞成修改过程中的这些修改。 您可以使用该feature命令临时配置服务器投票反对或…

开发文档

get_counts

该get_counts命令提供有关服务器运行状况的各种统计信息,主要是当前在内存中保存的不同类型的对象数量。 该get_counts方法是不能由非特权用户运行的管理员命令…

开发文档

ledger_cleaner

该ledger_cleaner命令控制Ledger Cleaner,这是一个异步维护过程,可以查找和修复streamd分类账数据库中的损坏。该ledger_cleaner…

开发文档

log_level

该log_level命令更改streamd服务器的日志记录详细程度,或者为日志消息的每个类别(称为分区)返回当前日志记录级别。 该log_level方法是不能由非特权用户…

开发文档

logrotate

该logrotate命令关闭并重新打开日志文件。这旨在帮助Linux文件系统上的日志循环。该logrotate方法是不能由非特权用户运行的管理员命令。请求格式的示例:{ …

开发文档

validation_create

使用该validation_create命令生成Streamd校验器的密钥。与wallet_propose命令类似,此命令不会进行实际更改,但只会生成一组具有适当格式的键…

开发文档

validation_seed

该validation_seed命令临时设置streamd用于签署验证的秘密值。重新启动服务器时,此值将根据配置文件进行重置。该validation_seed请求是一个不…

开发文档

peers

该peers命令返回streamd当前连接到该服务器的所有其他服务器的列表,包括有关其连接和同步状态的信息。 该peers请求是一个不能由非特权用户运行的管理命令! 请求…

开发文档

print

该print命令返回各种内部子系统的当前状态,包括同级,分类清理器和资源管理器。 该print请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "id":…

开发文档

便利功能

streamd服务器还提供了一些命令纯粹是为了方便。

开发文档

ping

该ping命令返回一个确认,以便客户端可以测试连接状态和延迟。 请求格式的示例: { "id": 1, "command": "ping" } { "method": "…

开发文档

random

该random命令提供一个随机数,用作客户端产生随机数的熵源。请求格式的示例:{ "id": 1, "command": "random" }{ "method": "r…

开发文档

json

该json方法是运行其他命令的代理,并将该命令的参数作为JSON值接受。它是Commandline客户端专用的,用于指定参数的命令行语法不足或不合需要的情况。请求格式的示…

开发文档

connect

该connect命令强制streamd服务器连接到特定的对等streamd服务器。 该connect请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "c…

开发文档

stop

优雅地关闭服务器。该stop请求是一个不能由非特权用户运行的管理命令!请求格式的示例:{ "id": 0, "command": "stop" }{ "method": …

开发文档

novstream_check

该novstream_check命令提供了一种快速检查帐户的DefaultStream字段以及其信任线的Novstream标志的状态,并与建议的设置进行比较。 请求格式的…

开发文档

streamd-apis

开发文档

STREAMD

运行Stream网络的核心点对点服务器被称为streamd。每个streamd服务器与Stream网络相连,转发加密签名交易,并保存一份完整共享的跨国总账的本地副本。st…

开发文档

WEBSOCKET 和 JSON-RPC API

如果你想和streamd服务器直接通信,那可以使用WebSocket API或JSON-RPC API。两种API都使用相同的命令列表,每个命令参数几乎完全相同。或者,你…

开发文档

API变化

WebSocket和JSON-RPC APIs仍在开发中,并且可能会发生变化。

开发文档

请求格式

WebSocket API 和JSON-RPC都把JSON用作请求和回应。API上的方法和参数通常是相同的,但两者之间具体的格式略有不同。命令行接口支持具有命令行参数的相…

开发文档

响应格式

成功响应样例 { "id": 2, "status": "success", "type": "response", "result": { "account_data"…

开发文档

连接streamd

在运行任何针对streamd服务器的命令之前,你必须知道你正在连接哪个服务器。大多数服务器被配置为不能接受直接来自外部网络的请求。 目前labs.stream提供的一些公…

开发文档

运行个人streamd的原因

有许多运行个人streamd服务器的原因,但大多数可以总结为“你信任自己的服务器,你可以控制它的工作量,而且你不需要别人决定使用服务器的时间和方式”。 相信你使用的str…

开发文档

JSON-RPC

你可以使用任何HTTP客户端(例如Poster for Firefox或Postman for Chrome)提交JSON-RPC访问请求(calls)到streamd服…

开发文档

命令行

命令行和JSON-RPC连接相同的服务,所以公共服务器和服务器配置是相同的。默认情况下,streamd连接本地实例。或者,你可以指定服务器连接配置文件或--rpc-ip命…

开发文档

WebSocket API

如果你正在Stream账本上尝试一些方法,那你可以跳过写自己的WebSocket代码,直接使用Stream WebSocket API Tool里的API。稍后,当你想要…

开发文档

错误响应

列举所有错误可能发生的方式几乎是不可能的。某些可能发生在运输层(例如,丢掉网络数据包),这种情况下,结果将根据你使用的客户端和运输工具而有所不同。然而,如果streamd…

开发文档

错误警告

当你的请求导致错误时,全部请求被后台记录下来作为部分响应,因而你可以试着调试错误。然而,这也包括作为请求一部分的任何机密。当共享错误信息时,一定要非常小心,不要把重要的账…

开发文档

通用错误

所有的方法可能返还以下错误代码值: unknownCmd - 该请求不包含streamd服务器识别的command. jsonInvalid - (只有WebSocket…

开发文档

格式约定

WebSocket和JSON-RPC API通常采用相同的参数,尽管是不同的方式(细节参见Request Formatting)。许多相似的参数出现在API中,而且还有一…

开发文档

修改总账

Stream全球共享账本的所有改变都是交易的结果。唯一可改变Stream账本的API方法是提交交易的命令。即便如此,只有交易获得共识认证之后,变更才会永久生效。其他大多数…

开发文档

API方法

WebSocket和JSON-RPC的API方法是根据命令名字来定义的,被分为公共命令和管理命令。公共命令不一定适用于普通公众,但是可以被连接到服务器的任意客户端使用。(…

开发文档

公共命令清单

account_currencies - 获取账户可以发送或接收的货币列表 account_channels - 获取账户是渠道来源的支付渠道列表 account_inf…

开发文档

管理命令

只有在配置文件标识为admin的主机和端口上连接时,streamd管理命令才可用。(默认情况下,命令行客户端使用管理连接。) can_delete - 允许在线删除分类账…

开发文档

命令行访问

您可以将该streamd应用程序(作为单独的实例)用作JSON-RPC客户端。在这种模式下,它具有从命令提示符用单行触发大多数API方法的语法,如每种方法中所述。但是,某…

开发文档

账户信息

Stream分类账中的“账户”代表STM的持有人和交易发送人。账户可以发送和接收STM和已发行资产,参与去中心化交易,并更改自己的设置。创建一个帐户涉及生成密钥,然后从另…

开发文档

1875

该account_info命令将检索有关帐户,其活动和STM余额的信息。所有检索到的信息都与分类账的特定版本有关。 account_info请求的示例: { "id": …

开发文档

account_lines

该account_lines方法返回有关账户信任额度的信息,包括所有非STM货币和资产的余额。所有检索到的信息都与分类账的特定版本有关。 请求格式的示例: { "id":…

开发文档

account_offers

该account_offers方法检索由特定帐户作为特定分类账版本的优惠清单。 请求格式的示例: { "id": 2, "command": "account_offer…

开发文档

account_tx

该account_tx方法检索涉及指定帐户的交易列表。 请求格式的示例: { "id": 2, "command": "account_tx", "account": "…

开发文档

wallet_propose

使用wallet_propose方法生成新账户需要的密钥。以此种方式创建的账户当接收提供足够STM来达到账户储备金的交易时,只会被官方纳入stream网络。(wallet…

开发文档

基本数据类型

不同类型的对象以不同的方式唯一标识: 账户之间通过各自的地址来区分,比如"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59"。地址以字母 r 开头,部…

开发文档

地址

Stream账本中的每个账户由一个base58编码格式的地址来识别,该地址通过改账户的主公钥来导出,而主公钥又通过账户的私钥来导出。一个地址由一个以下字符组成的json格…

开发文档

Hashes

在Stream中,尤其是其中的交易和账本,通过一个256-bit的hash值来唯一确定。此值通常通过“SHA-512 Half”来计算(通过内容来计算SHA-512,然后…

开发文档

账户序列

序列号是一个32位无符号整数,用于标识相对于特定帐户的交易或优惠。在Stream账本中每个账户拥有一个序列号,从1开始。对于一个发送到网络或者包含到验证账本的交易,它必须…

开发文档

总账索引

账本索引是用于识别分类帐的32位无符号整数。总账索引也被叫做账本的序列号。第一个账目的索引是1,并且每个新账目的分类索引都高于其之前的账目索引1. 账本索引表达了账目间的…

开发文档

指定总账实例

许多API方法要求你指定一个总账实例,包括可被检索到的正确数据和共享总账特定版本的最新数据。接受一个总账版本的命令都是按照同样的方式运作。以下有三个能用的你能指定总账的方…

开发文档

货币

Stream里面有两种不同的货币:stm和其他,两种货币之间有很多不同之处: stm 发行货币 没有发行者 通常通过发行商发行 指定为字符串 指定为对象 账户间流转 信任…

开发文档

指定货币金额

一些API方法要求你指定货币金额。指定风格取决于你用网络原生stm货币交易还是用其他货币单元(发行货币)交易。 STM STM数量可以表示为字符串。(stm精度是64位整…

开发文档

货币代码

STM账本中有两种货币代码:三字符货币代码。我们建议使用全大写的ISO 4217货币代码,然而,以下字符的任何组合都是允许的,所有大写和小写字母,数字以及符号?, !, …

开发文档

指定时间

streamd服务器和它的API把时间表示为未签名的整数。自2000年1月1日(00:00 UTC)起,测量到现在的秒数。这和Unix epoch 的工作方式类似,除了在…

开发文档

可能的服务器状态

依据streamd服务器配置方式、运行时间和其他因素,一个服务器可能在不同程度上参与跨国Stream点对点网络。这在对server_info 和server_state命…

开发文档

account_currencies

该account_currencies命令根据其信任线检索帐户可以发送或接收的货币列表。(这不是一个彻底确认的列表,但它可以用来填充用户界面。) 请求格式示例: { "c…

开发文档

总账信息

每台streamd服务器都会保存STM分类帐当前状态的完整副本,其中包含优化树形格式中网络中的所有帐户,交易,优惠和其他数据。由于提出了交易和优惠,每个服务器将它们整合到…

开发文档

ledger

检索关于公共分类帐的信息。 请求格式的示例: { "id": 14, "command": "ledger", "ledger_index": "validated", …

开发文档

ledger_closed

该ledger_closed方法返回最近关闭的分类帐的唯一标识符。(这个分类账不一定是有效的和不可变的。) 请求格式的示例: { "id": 2, "command": …

开发文档

ledger_current

该ledger_current方法返回当前正在进行的分类帐的唯一标识符。该命令对于测试非常有用,因为返回的分类账仍然不断变化。请求格式的示例:{ "id": 2, "co…

开发文档

ledger_data

该ledger_data方法检索指定分类帐的内容。您可以遍历多个调用来检索单个分类帐版本的全部内容。 请求格式的示例: { "id": 2, "ledger_hash":…

开发文档

ledger_entry

该ledger_entry方法以原始格式从STM分类帐返回单个分类帐对象。请参阅分类帐格式了解有关可检索的不同类型对象的信息。 注意:此方法没有命令行版本。您可以使用该j…

开发文档

ledger_request

该ledger_request命令告诉服务器从其连接的对等方获取特定分类账版本。这只有在服务器的一个立即连接的同行拥有该分类账时才有效。您可能需要多次运行该命令才能完全获…

开发文档

ledger_accept

该ledger_accept方法强制服务器关闭当前工作分类帐并转到下一个分类帐号。此方法仅用于测试目的,并且仅在streamd服务器运行独立模式时可用。 该ledger_…

开发文档

交易管理

事务是唯一可以修改STM分类帐的共享状态的事务。StreamLedger上的所有业务都采用交易形式,其中不仅包括付款,还包括货币兑换优惠,账户设置以及对账本本身属性的更改…

开发文档

tx

该tx方法检索单个事务的信息。请求格式的示例:{ "id": 1, "command": "tx", "transaction": "17CF128117A275D1E0…

开发文档

transaction_entry

该transaction_entry方法从特定分类帐版本检索单个事务的信息。(tx相比之下,该命令将搜索指定事务的所有分类帐,我们建议使用该方法。)请求格式的示例:{ "…

开发文档

tx_history

该tx_history方法检索一些最近进行的交易。 警告:此方法已弃用,可能会被删除,恕不另行通知。 请求格式的示例: { "id": 5, "command": "tx…

开发文档

path_find

仅限WebSocket API!该path_find方法搜索可能进行交易的路径,并在路径随时间变化时定期发送更新。对于在STM中严格执行的付款,没有必要找到路径,因为ST…

开发文档

path_find创建

该create子命令path_find会创建一个持续请求,以查找可从一个指定帐户进行支付交易的可能路径,以便另一个帐户接收所需数量的某种货币。初始响应包含两个地址之间建议…

开发文档

path_find关闭

path_find子命令close指示服务器停止发送有关当前打开的寻路请求的信息。 请求格式的示例: { "id": 57, "command": "path_find"…

开发文档

path_find状态

请求立即更新客户端当前打开的寻路请求的path_find子命令status。 请求格式的示例: { "id": 58, "command": "path_find", "…

开发文档

sign

sign方法采用JSON格式的交易和密钥,并返回交易的带符号二进制表示。结果总是不同,即使您提供相同的交易JSON和密钥。要为多签名交易贡献一个签名,请改用该sign_f…

开发文档

自动填充字段

如果您忽略它们,服务器将自动尝试自动填写tx_json(交易对象)中的某些字段。服务器在签名之前提供以下字段,除非请求指定offline为true: Sequence -…

开发文档

vstream_path_find

该vstream_path_find方法是path_find的一个简化版本,可以立即使用以及提供支付路径单一响应。它可以在WebSocket和JSON-RPC API中使…

开发文档

submit

该submit方法应用交易并将其发送到网络以进行确认并包含在未来的分类账中。该命令有两种模式:仅提交模式将已签名的序列化事务作为二进制blob,并将其原样提交给网络。由于…

开发文档

仅提交模式

提交请求包含以下参数:FieldTypeDescriptiontx_blobString提交签名交易的十六进制表示。这可以是多签名的交易。fail_hardBoolean…

开发文档

签署和提交模式

此模式签署交易并立即提交。该模式旨在用于测试。您不能将此模式用于多重签名的交易。 您可以通过以下方式提供用于签署交易的密钥: 提供一个secret值并忽略该key_typ…

开发文档

book_offers

该book_offers方法检索两种货币之间的报价列表,也称为订单簿。如果结果非常大,则使用标记返回部分结果,以便稍后的请求可以从前一个请求的剩余位置恢复。 请求格式的示…

开发文档

订阅

使用订阅时,您可以让服务器在发生各种事件时将更新推送到客户端,以便您可以立即知道并做出反应。订阅仅在WebSocket API中受支持,您可以在同一频道中接收其他响应。 …

开发文档

subscribe

该 subscribe方法在发生某些事件时请求服务器定期发出通知。 请求格式的示例: { "id": "Example watch Bitstamp's hot wall…

开发文档

Ledger Stream

该ledger流只发送ledgerClosed消息时的共识的过程声明了一个新的有效的分类帐。该消息标识分类帐并提供有关其内容的一些信息。{ "type": "ledger…

开发文档

Transaction Streams

许多订阅会导致有关交易的消息,其中包括以下内容:该 transactions流该transactions_proposed流accounts 订阅accounts_pro…

开发文档

Peer Status Stream

管理员专用peer_status流会报告有关streamd此服务器所连接的其他服务器的活动的大量信息,特别是它们在共识流程中的状态。对等状态流消息的示例:{ "actio…

开发文档

unsubscribe

该unsubscribe命令会通知服务器停止发送特定订阅或订阅集的消息。 请求格式的示例: { "id": "Unsubscribe a lot of stuff", "…

开发文档

服务器信息

还有一些命令可以检索有关服务器当前状态的信息。这些可能对监视服务器的健康状况或准备制作其他API方法很有用。例如,您可以在发送交易之前查询当前费用明细表,或者您可以在挖掘…

开发文档

server_info

该server_info命令向服务器请求关于streamd正被查询的服务器的各种信息的人类可读版本。 请求格式的示例: { "id": 1, "command": "se…

开发文档

server_state

该server_state命令向服务器询问有关streamd服务器当前状态的各种机器可读信息。结果几乎相同server_info,但使用易于处理而不易读取的单位。(例如,…

开发文档

can_delete

在启用online_delete和advisory_delete配置选项的情况下,该can_delete方法通知Streamd服务器可能被删除的最新分类帐。 该can_d…

开发文档

consensus_info

该consensus_info命令提供了有关用于调试目的的一致过程的信息。 该consensus_info方法是不能由非特权用户运行的管理员命令。 请求格式的示例: { …

开发文档

fetch_info

该 fetch_info命令返回有关此服务器当前从网络中获取的对象的信息,以及有多少对等端具有该信息。它也可以用来重置当前的提取。 该fetch_info方法是一个管理员…

开发文档

feature

该feature命令返回有关服务器了解的修改的信息,包括它们是否已启用以及服务器是否投票赞成修改过程中的这些修改。 您可以使用该feature命令临时配置服务器投票反对或…

开发文档

get_counts

该get_counts命令提供有关服务器运行状况的各种统计信息,主要是当前在内存中保存的不同类型的对象数量。 该get_counts方法是不能由非特权用户运行的管理员命令…

开发文档

ledger_cleaner

该ledger_cleaner命令控制Ledger Cleaner,这是一个异步维护过程,可以查找和修复streamd分类账数据库中的损坏。该ledger_cleaner…

开发文档

log_level

该log_level命令更改streamd服务器的日志记录详细程度,或者为日志消息的每个类别(称为分区)返回当前日志记录级别。 该log_level方法是不能由非特权用户…

开发文档

logrotate

该logrotate命令关闭并重新打开日志文件。这旨在帮助Linux文件系统上的日志循环。该logrotate方法是不能由非特权用户运行的管理员命令。请求格式的示例:{ …

开发文档

validation_create

使用该validation_create命令生成Streamd校验器的密钥。与wallet_propose命令类似,此命令不会进行实际更改,但只会生成一组具有适当格式的键…

开发文档

validation_seed

该validation_seed命令临时设置streamd用于签署验证的秘密值。重新启动服务器时,此值将根据配置文件进行重置。该validation_seed请求是一个不…

开发文档

peers

该peers命令返回streamd当前连接到该服务器的所有其他服务器的列表,包括有关其连接和同步状态的信息。 该peers请求是一个不能由非特权用户运行的管理命令! 请求…

开发文档

print

该print命令返回各种内部子系统的当前状态,包括同级,分类清理器和资源管理器。 该print请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "id":…

开发文档

便利功能

streamd服务器还提供了一些命令纯粹是为了方便。

开发文档

ping

该ping命令返回一个确认,以便客户端可以测试连接状态和延迟。 请求格式的示例: { "id": 1, "command": "ping" } { "method": "…

开发文档

random

该random命令提供一个随机数,用作客户端产生随机数的熵源。请求格式的示例:{ "id": 1, "command": "random" }{ "method": "r…

开发文档

json

该json方法是运行其他命令的代理,并将该命令的参数作为JSON值接受。它是Commandline客户端专用的,用于指定参数的命令行语法不足或不合需要的情况。请求格式的示…

开发文档

connect

该connect命令强制streamd服务器连接到特定的对等streamd服务器。 该connect请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "c…

开发文档

stop

优雅地关闭服务器。该stop请求是一个不能由非特权用户运行的管理命令!请求格式的示例:{ "id": 0, "command": "stop" }{ "method": …

开发文档

novstream_check

该novstream_check命令提供了一种快速检查帐户的DefaultStream字段以及其信任线的Novstream标志的状态,并与建议的设置进行比较。 请求格式的…

开发文档

StreamAPI for JavaScript

开发文档

介绍

StreamAPI是STM Ledger的官方客户端库。目前,StreamAPI仅适用于JavaScript。使用StreamAPI,您可以:从STM分类帐历史中查询交易…

开发文档

样板

使用以下样板代码使用StreamAPI封装您的自定义代码。 StreamAPI被设计为在Node.js中使用,本文档中的所有代码片段假定您已经用这个样板包围了它们。

开发文档

基本类型

开发文档

地址

"vngFb3bKpGyocUfUR3VYjn9osaE6wXaZsr"每个STM分类帐帐户都有一个地址,该地址是该帐户公钥的散列的base58编码。STM分类帐地址始终…

开发文档

账户序列号

每个STM分类帐帐户都有一个序号,用于保持交易顺序。每笔交易都必须有一个序列号。只有在发送它的账户中具有下一个序列号时才能执行交易。这可以防止一次事务执行两次,并且事务执…

开发文档

货币

货币表示为3个字符的货币代码或40个字符的大写十六进制字符串。我们建议仅使用大写的ISO 4217货币代码。信任线上不允许使用字符串“STM”,因为它是为STM分类帐本币…

开发文档

Value

Value是表示为一个十进制字符串的货币的量。注意:JavaScript的原生数字格式没有足够的精度来表示所有值。STM与其他货币的精度不同。STM在小数点后有6位有效数…

开发文档

Amount

示例: { "currency": "USD", "counterparty": "vngFb3bKpGyocUfUR3VYjn9osaE6wXaZsr", "value…

开发文档

交易概览

开发文档

交易类型

交易类型由下表第一列中的字符串指定。 Type Description payment 一个payment交易代表的值从一个帐户转移到另一个。根据所采取的路径,可能会自动…

开发文档

交易流程

执行StreamAPI需要以下四个步骤:准备 - 根据规范和说明创建未签名的事务。有一种方法来准备每种类型的交易:preparePaymentprepareTrustli…

开发文档

交易费用

每笔交易都必须销毁少量的STM作为发送交易的费用。这也被称为交易费用。交易成本被设计为随着STM分类帐的负载而增加,这使得故意或无意中过载支持STM分类帐的对等网络非常昂…

开发文档

交易说明

交易指令指示如何执行交易,与交易规范互补。 Name Type Description fee value 可选 精确的费用为交易支付。请参阅交易费用了解更多信息。 ma…

开发文档

交易ID

"F4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF"事务ID是唯一标识事务的64位十六进制…

开发文档

交易Memos

每个事务可以有选择地为用户应用程序提供一个备忘录数组。memos每个事务规范中的字段都是具有以下结构的对象数组:NameTypeDescriptiondatastring…

开发文档

交易规格

一个交易规范指定事务应该做的事情。每种交易类型都有其自己的规格类型。

开发文档

付款

有关说明,请参阅交易类型。 Name Type Description source object 资金的来源将被发送。 source. address address …

开发文档

Trustline

有关说明,请参阅交易类型。NameTypeDescriptioncurrencycurrency此信任线适用的货币。counterpartyaddress此信任线将信任扩…

开发文档

Order

有关说明,请参阅交易类型。NameTypeDescriptiondirectionstring等于购买订单的“买入”和卖出订单的“卖出”。quantityamount买或…

开发文档

Order Cancellation

有关说明,请参阅交易类型。NameTypeDescriptionorderSequencesequence要取消的订单的序列号。memosmemos可选 附加到交易的备忘…

开发文档

Settings

有关说明,请参阅交易类型。 Name Type Description depositAuth boolean 可选 此帐户启用存款授权。如果设置,则交易无法将任何类型的…

开发文档

托管创建

有关说明,请参阅交易类型。NameTypeDescriptionamountvalue发件人托管的STM金额。destinationaddress地址以接收托管的STM。…

开发文档

托管取消

有关说明,请参阅交易类型。NameTypeDescriptionowneraddress要取消的托管所有者的地址。escrowSequencesequence托管创建交易…

开发文档

托管执行

有关说明,请参阅交易类型。NameTypeDescriptionowneraddress要执行的托管所有者的地址。escrowSequencesequence托管执行的托…

开发文档

支票创建

有关说明,请参阅交易类型。NameTypeDescriptiondestinationaddress可以兑现支票的账户地址。sendMaxlaxAmount允许支票支付发…

开发文档

支票取消

有关说明,请参阅交易类型。NameTypeDescriptioncheckIDstring作为一个64个字符的十六进制字符串取消检查分类帐对象的ID。示例:{ "chec…

开发文档

兑现支票

有关说明,请参阅交易类型。NameTypeDescriptioncheckIDstring将支票分类帐对象的ID设置为现金,作为64个字符的十六进制字符串。amountl…

开发文档

支付通道创建

有关说明,请参阅交易类型。NameTypeDescriptionamountvalue发送者在此通道留出的STM数量。destinationaddress收到STM针对此…

开发文档

支付通道基金

有关说明,请参阅交易类型。NameTypeDescriptionamountvalueSTM用于为通道提供资金的数量。channelstring256位十六进制通道标识符…

开发文档

付款通道索赔

有关说明,请参阅交易类型。NameTypeDescriptionchannelstring256位十六进制通道标识符。amountvalue可选 处理索赔后,此通道的 S…

开发文档

API方法

开发文档

connect

connect(): Promise 告诉StreamAPI实例连接到它的服务器。 参数: 此方法没有参数。 返回值: 无返回值,建立一个连接。

开发文档

disconnect

disconnect(): Promise 告诉StreamAPI实例从其Stream的服务器断开连接。 参数: 此方法没有参数。 返回值: 无返回,销毁一个连接。

开发文档

isConnected

isConnected(): boolean 检查StreamAPI实例是否连接到Stream的服务器。 参数: 此方法没有参数。 返回值: true 已成功连接 fal…

开发文档

requestServerInfo

requestServerInfo(): Promise获取有关StreamAPI实例连接到的服务器的状态信息。参数:此方法没有参数。NameTypeDescriptio…

开发文档

requestAccountCurrencies

该requestAccountCurrencies命令根据其信任线检索帐户可以发送或接收的货币列表。(这不是一个彻底确认的列表,但它可以用来填充用户界面。) 请求格式示例…

开发文档

requestAccountInfo

该requestAccountInfo命令将检索有关帐户,其活动和STM余额的信息。所有检索到的信息都与分类账的特定版本有关。 requestAccountInfo请求的…

开发文档

requestAccountOffers

该requestAccountOffers方法检索由特定帐户作为特定分类账版本的优惠清单。请求格式的示例:remote.connect(function() { remo…

开发文档

requestAccountTx

该requestAccountTx方法检索涉及指定帐户的交易列表。 请求格式的示例: remote.connect(function() { remote.request…

开发文档

requestLedger

检索关于公共分类帐的信息。请求格式的示例:remote.connect(function() { remote.requestLedger({ ledger_index:…

开发文档

requestLedgerHash

该requestLedgerHash方法返回最近关闭的分类帐的唯一标识符。(这个分类账不一定是有效的和不可变的。) 请求格式的示例: remote.connect(fun…

开发文档

requestLedgerCurrent

该requestLedgerCurrent方法返回当前正在进行的分类帐的唯一标识符。该命令对于测试非常有用,因为返回的分类账仍然不断变化。请求格式的示例:remote.c…

开发文档

requestTx

该requestTx方法检索单个事务的信息。 requestTx(hash, callback) 请求格式的示例: remote.connect(function() {…

开发文档

requestTransactionEntry

该requestTransactionEntry方法从特定分类帐版本检索单个事务的信息。(tx相比之下,该命令将搜索指定事务的所有分类帐,我们建议使用该方法。)reque…

开发文档

requestTxHistory

该requestTxHistory方法检索一些最近进行的交易。requestTxHistory(start, callback)请求格式的示例:remote.connec…

开发文档

requestPathFind

该requestPathFind方法搜索可能进行交易的路径,并在路径随时间变化时定期发送更新。对于在STM中严格执行的付款,没有必要找到路径,因为STM可以直接发送到任何…

开发文档

requestPathFindCreate

该create子命令requestPathFindCreate会创建一个持续请求,以查找可从一个指定帐户进行支付交易的可能路径,以便另一个帐户接收所需数量的某种货币。初始…

开发文档

requestPathFindClose

requestPathFindClose指示服务器停止发送有关当前打开的寻路请求的信息。 请求格式的示例: remote.connect(function() { rem…

开发文档

requestStreamPathFind

该requestStreamPathFind方法是requestpathfind的一个简化版本,可以立即使用以及提供支付路径单一响应。然而,随着时间的推移,结果往往会过时…

开发文档

requestSign

requestSign方法采用JSON格式的交易和密钥,并返回交易的带符号二进制表示。结果总是不同,即使您提供相同的交易JSON和密钥。 requestSign(secr…

开发文档

requestSubscribe

该 subscribe方法在发生某些事件时请求服务器定期发出通知。 requestSubscribe(streams, callback) 请求格式的示例: remote…

开发文档

requestUnsubscribe

该requestUnsubscribe命令会通知服务器停止发送特定订阅或订阅集的消息。requestUnsubscribe(streams, callback)请求格式的…

开发文档

2087

STREAMDWEBSOCKET 和 JSON-RPC APIAPI变化请求格式响应格式连接streamd运行个人streamd的原因JSON-RPC命令行WebSock…

开发文档

streamd-apis

STREAMDWEBSOCKET 和 JSON-RPC APIAPI变化连接streamd运行个人streamd的原因WebSocket APIJSON-RPC命令行请求…

开发文档

STREAMD

运行Stream网络的核心点对点服务器被称为streamd。每个streamd服务器与Stream网络相连,转发加密签名交易,并保存一份完整共享的跨国总账的本地副本。st…

开发文档

WEBSOCKET 和 JSON-RPC API

如果你想和streamd服务器直接通信,那可以使用WebSocket API或JSON-RPC API。两种API都使用相同的命令列表,每个命令参数几乎完全相同。或者,你…

开发文档

API变化

WebSocket和JSON-RPC APIs仍在开发中,并且可能会发生变化。

开发文档

请求格式

WebSocket API 和JSON-RPC都把JSON用作请求和回应。API上的方法和参数通常是相同的,但两者之间具体的格式略有不同。命令行接口支持具有命令行参数的相…

开发文档

响应格式

成功响应样例 { "id": 2, "status": "success", "type": "response", "result": { "account_data"…

开发文档

连接streamd

在运行任何针对streamd服务器的命令之前,你必须知道你正在连接哪个服务器。大多数服务器被配置为不能接受直接来自外部网络的请求。 目前labs.stream提供的一些公…

开发文档

运行个人streamd的原因

有许多运行个人streamd服务器的原因,但大多数可以总结为“你信任自己的服务器,你可以控制它的工作量,而且你不需要别人决定使用服务器的时间和方式”。 相信你使用的str…

开发文档

JSON-RPC

你可以使用任何HTTP客户端(例如Poster for Firefox或Postman for Chrome)提交JSON-RPC访问请求(calls)到streamd服…

开发文档

命令行

命令行和JSON-RPC连接相同的服务,所以公共服务器和服务器配置是相同的。默认情况下,streamd连接本地实例。或者,你可以指定服务器连接配置文件或--rpc-ip命…

开发文档

WebSocket API

如果你正在Stream账本上尝试一些方法,那你可以跳过写自己的WebSocket代码,直接使用Stream WebSocket API Tool里的API。稍后,当你想要…

开发文档

错误响应

列举所有错误可能发生的方式几乎是不可能的。某些可能发生在运输层(例如,丢掉网络数据包),这种情况下,结果将根据你使用的客户端和运输工具而有所不同。然而,如果streamd…

开发文档

错误警告

当你的请求导致错误时,全部请求被后台记录下来作为部分响应,因而你可以试着调试错误。然而,这也包括作为请求一部分的任何机密。当共享错误信息时,一定要非常小心,不要把重要的账…

开发文档

通用错误

所有的方法可能返还以下错误代码值: unknownCmd - 该请求不包含streamd服务器识别的command. jsonInvalid - (只有WebSocket…

开发文档

格式约定

WebSocket和JSON-RPC API通常采用相同的参数,尽管是不同的方式(细节参见Request Formatting)。许多相似的参数出现在API中,而且还有一…

开发文档

修改总账

Stream全球共享账本的所有改变都是交易的结果。唯一可改变Stream账本的API方法是提交交易的命令。即便如此,只有交易获得共识认证之后,变更才会永久生效。其他大多数…

开发文档

API方法

WebSocket和JSON-RPC的API方法是根据命令名字来定义的,被分为公共命令和管理命令。公共命令不一定适用于普通公众,但是可以被连接到服务器的任意客户端使用。(…

开发文档

公共命令清单

account_currencies - 获取账户可以发送或接收的货币列表 account_channels - 获取账户是渠道来源的支付渠道列表 account_inf…

开发文档

管理命令

只有在配置文件标识为admin的主机和端口上连接时,streamd管理命令才可用。(默认情况下,命令行客户端使用管理连接。) can_delete - 允许在线删除分类账…

开发文档

命令行访问

您可以将该streamd应用程序(作为单独的实例)用作JSON-RPC客户端。在这种模式下,它具有从命令提示符用单行触发大多数API方法的语法,如每种方法中所述。但是,某…

开发文档

账户信息

Stream分类账中的“账户”代表STM的持有人和交易发送人。账户可以发送和接收STM和已发行资产,参与去中心化交易,并更改自己的设置。创建一个帐户涉及生成密钥,然后从另…

开发文档

2118

该account_info命令将检索有关帐户,其活动和STM余额的信息。所有检索到的信息都与分类账的特定版本有关。 account_info请求的示例: { "id": …

开发文档

account_lines

该account_lines方法返回有关账户信任额度的信息,包括所有非STM货币和资产的余额。所有检索到的信息都与分类账的特定版本有关。 请求格式的示例: { "id":…

开发文档

account_offers

该account_offers方法检索由特定帐户作为特定分类账版本的优惠清单。 请求格式的示例: { "id": 2, "command": "account_offer…

开发文档

account_tx

该account_tx方法检索涉及指定帐户的交易列表。 请求格式的示例: { "id": 2, "command": "account_tx", "account": "…

开发文档

wallet_propose

使用wallet_propose方法生成新账户需要的密钥。以此种方式创建的账户当接收提供足够STM来达到账户储备金的交易时,只会被官方纳入stream网络。(wallet…

开发文档

基本数据类型

不同类型的对象以不同的方式唯一标识: 账户之间通过各自的地址来区分,比如"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59"。地址以字母 r 开头,部…

开发文档

地址

Stream账本中的每个账户由一个base58编码格式的地址来识别,该地址通过改账户的主公钥来导出,而主公钥又通过账户的私钥来导出。一个地址由一个以下字符组成的json格…

开发文档

Hashes

在Stream中,尤其是其中的交易和账本,通过一个256-bit的hash值来唯一确定。此值通常通过“SHA-512 Half”来计算(通过内容来计算SHA-512,然后…

开发文档

账户序列

序列号是一个32位无符号整数,用于标识相对于特定帐户的交易或优惠。在Stream账本中每个账户拥有一个序列号,从1开始。对于一个发送到网络或者包含到验证账本的交易,它必须…

开发文档

总账索引

账本索引是用于识别分类帐的32位无符号整数。总账索引也被叫做账本的序列号。第一个账目的索引是1,并且每个新账目的分类索引都高于其之前的账目索引1. 账本索引表达了账目间的…

开发文档

指定总账实例

许多API方法要求你指定一个总账实例,包括可被检索到的正确数据和共享总账特定版本的最新数据。接受一个总账版本的命令都是按照同样的方式运作。以下有三个能用的你能指定总账的方…

开发文档

货币

Stream里面有两种不同的货币:stm和其他,两种货币之间有很多不同之处: stm 发行货币 没有发行者 通常通过发行商发行 指定为字符串 指定为对象 账户间流转 信任…

开发文档

指定货币金额

一些API方法要求你指定货币金额。指定风格取决于你用网络原生stm货币交易还是用其他货币单元(发行货币)交易。 STM STM数量可以表示为字符串。(stm精度是64位整…

开发文档

货币代码

STM账本中有两种货币代码:三字符货币代码。我们建议使用全大写的ISO 4217货币代码,然而,以下字符的任何组合都是允许的,所有大写和小写字母,数字以及符号?, !, …

开发文档

指定时间

streamd服务器和它的API把时间表示为未签名的整数。自2000年1月1日(00:00 UTC)起,测量到现在的秒数。这和Unix epoch 的工作方式类似,除了在…

开发文档

可能的服务器状态

依据streamd服务器配置方式、运行时间和其他因素,一个服务器可能在不同程度上参与跨国Stream点对点网络。这在对server_info 和server_state命…

开发文档

account_currencies

该account_currencies命令根据其信任线检索帐户可以发送或接收的货币列表。(这不是一个彻底确认的列表,但它可以用来填充用户界面。) 请求格式示例: { "c…

开发文档

总账信息

每台streamd服务器都会保存STM分类帐当前状态的完整副本,其中包含优化树形格式中网络中的所有帐户,交易,优惠和其他数据。由于提出了交易和优惠,每个服务器将它们整合到…

开发文档

ledger

检索关于公共分类帐的信息。 请求格式的示例: { "id": 14, "command": "ledger", "ledger_index": "validated", …

开发文档

ledger_closed

该ledger_closed方法返回最近关闭的分类帐的唯一标识符。(这个分类账不一定是有效的和不可变的。) 请求格式的示例: { "id": 2, "command": …

开发文档

ledger_current

该ledger_current方法返回当前正在进行的分类帐的唯一标识符。该命令对于测试非常有用,因为返回的分类账仍然不断变化。请求格式的示例:{ "id": 2, "co…

开发文档

ledger_data

该ledger_data方法检索指定分类帐的内容。您可以遍历多个调用来检索单个分类帐版本的全部内容。 请求格式的示例: { "id": 2, "ledger_hash":…

开发文档

ledger_entry

该ledger_entry方法以原始格式从STM分类帐返回单个分类帐对象。请参阅分类帐格式了解有关可检索的不同类型对象的信息。 注意:此方法没有命令行版本。您可以使用该j…

开发文档

ledger_request

该ledger_request命令告诉服务器从其连接的对等方获取特定分类账版本。这只有在服务器的一个立即连接的同行拥有该分类账时才有效。您可能需要多次运行该命令才能完全获…

开发文档

ledger_accept

该ledger_accept方法强制服务器关闭当前工作分类帐并转到下一个分类帐号。此方法仅用于测试目的,并且仅在streamd服务器运行独立模式时可用。 该ledger_…

开发文档

交易管理

事务是唯一可以修改STM分类帐的共享状态的事务。StreamLedger上的所有业务都采用交易形式,其中不仅包括付款,还包括货币兑换优惠,账户设置以及对账本本身属性的更改…

开发文档

tx

该tx方法检索单个事务的信息。请求格式的示例:{ "id": 1, "command": "tx", "transaction": "17CF128117A275D1E0…

开发文档

transaction_entry

该transaction_entry方法从特定分类帐版本检索单个事务的信息。(tx相比之下,该命令将搜索指定事务的所有分类帐,我们建议使用该方法。)请求格式的示例:{ "…

开发文档

tx_history

该tx_history方法检索一些最近进行的交易。 警告:此方法已弃用,可能会被删除,恕不另行通知。 请求格式的示例: { "id": 5, "command": "tx…

开发文档

path_find

仅限WebSocket API!该path_find方法搜索可能进行交易的路径,并在路径随时间变化时定期发送更新。对于在STM中严格执行的付款,没有必要找到路径,因为ST…

开发文档

path_find创建

该create子命令path_find会创建一个持续请求,以查找可从一个指定帐户进行支付交易的可能路径,以便另一个帐户接收所需数量的某种货币。初始响应包含两个地址之间建议…

开发文档

path_find关闭

path_find子命令close指示服务器停止发送有关当前打开的寻路请求的信息。 请求格式的示例: { "id": 57, "command": "path_find"…

开发文档

path_find状态

请求立即更新客户端当前打开的寻路请求的path_find子命令status。 请求格式的示例: { "id": 58, "command": "path_find", "…

开发文档

sign

sign方法采用JSON格式的交易和密钥,并返回交易的带符号二进制表示。结果总是不同,即使您提供相同的交易JSON和密钥。要为多签名交易贡献一个签名,请改用该sign_f…

开发文档

自动填充字段

如果您忽略它们,服务器将自动尝试自动填写tx_json(交易对象)中的某些字段。服务器在签名之前提供以下字段,除非请求指定offline为true: Sequence -…

开发文档

vstream_path_find

该vstream_path_find方法是path_find的一个简化版本,可以立即使用以及提供支付路径单一响应。它可以在WebSocket和JSON-RPC API中使…

开发文档

submit

该submit方法应用交易并将其发送到网络以进行确认并包含在未来的分类账中。该命令有两种模式:仅提交模式将已签名的序列化事务作为二进制blob,并将其原样提交给网络。由于…

开发文档

仅提交模式

提交请求包含以下参数:FieldTypeDescriptiontx_blobString提交签名交易的十六进制表示。这可以是多签名的交易。fail_hardBoolean…

开发文档

签署和提交模式

此模式签署交易并立即提交。该模式旨在用于测试。您不能将此模式用于多重签名的交易。 您可以通过以下方式提供用于签署交易的密钥: 提供一个secret值并忽略该key_typ…

开发文档

book_offers

该book_offers方法检索两种货币之间的报价列表,也称为订单簿。如果结果非常大,则使用标记返回部分结果,以便稍后的请求可以从前一个请求的剩余位置恢复。 请求格式的示…

开发文档

订阅

使用订阅时,您可以让服务器在发生各种事件时将更新推送到客户端,以便您可以立即知道并做出反应。订阅仅在WebSocket API中受支持,您可以在同一频道中接收其他响应。 …

开发文档

subscribe

该 subscribe方法在发生某些事件时请求服务器定期发出通知。 请求格式的示例: { "id": "Example watch Bitstamp's hot wall…

开发文档

Ledger Stream

该ledger流只发送ledgerClosed消息时的共识的过程声明了一个新的有效的分类帐。该消息标识分类帐并提供有关其内容的一些信息。{ "type": "ledger…

开发文档

Transaction Streams

许多订阅会导致有关交易的消息,其中包括以下内容:该 transactions流该transactions_proposed流accounts 订阅accounts_pro…

开发文档

Peer Status Stream

管理员专用peer_status流会报告有关streamd此服务器所连接的其他服务器的活动的大量信息,特别是它们在共识流程中的状态。对等状态流消息的示例:{ "actio…

开发文档

unsubscribe

该unsubscribe命令会通知服务器停止发送特定订阅或订阅集的消息。 请求格式的示例: { "id": "Unsubscribe a lot of stuff", "…

开发文档

服务器信息

还有一些命令可以检索有关服务器当前状态的信息。这些可能对监视服务器的健康状况或准备制作其他API方法很有用。例如,您可以在发送交易之前查询当前费用明细表,或者您可以在挖掘…

开发文档

server_info

该server_info命令向服务器请求关于streamd正被查询的服务器的各种信息的人类可读版本。 请求格式的示例: { "id": 1, "command": "se…

开发文档

server_state

该server_state命令向服务器询问有关streamd服务器当前状态的各种机器可读信息。结果几乎相同server_info,但使用易于处理而不易读取的单位。(例如,…

开发文档

can_delete

在启用online_delete和advisory_delete配置选项的情况下,该can_delete方法通知Streamd服务器可能被删除的最新分类帐。 该can_d…

开发文档

consensus_info

该consensus_info命令提供了有关用于调试目的的一致过程的信息。 该consensus_info方法是不能由非特权用户运行的管理员命令。 请求格式的示例: { …

开发文档

fetch_info

该 fetch_info命令返回有关此服务器当前从网络中获取的对象的信息,以及有多少对等端具有该信息。它也可以用来重置当前的提取。 该fetch_info方法是一个管理员…

开发文档

feature

该feature命令返回有关服务器了解的修改的信息,包括它们是否已启用以及服务器是否投票赞成修改过程中的这些修改。 您可以使用该feature命令临时配置服务器投票反对或…

开发文档

get_counts

该get_counts命令提供有关服务器运行状况的各种统计信息,主要是当前在内存中保存的不同类型的对象数量。 该get_counts方法是不能由非特权用户运行的管理员命令…

开发文档

ledger_cleaner

该ledger_cleaner命令控制Ledger Cleaner,这是一个异步维护过程,可以查找和修复streamd分类账数据库中的损坏。该ledger_cleaner…

开发文档

log_level

该log_level命令更改streamd服务器的日志记录详细程度,或者为日志消息的每个类别(称为分区)返回当前日志记录级别。 该log_level方法是不能由非特权用户…

开发文档

logrotate

该logrotate命令关闭并重新打开日志文件。这旨在帮助Linux文件系统上的日志循环。该logrotate方法是不能由非特权用户运行的管理员命令。请求格式的示例:{ …

开发文档

validation_create

使用该validation_create命令生成Streamd校验器的密钥。与wallet_propose命令类似,此命令不会进行实际更改,但只会生成一组具有适当格式的键…

开发文档

validation_seed

该validation_seed命令临时设置streamd用于签署验证的秘密值。重新启动服务器时,此值将根据配置文件进行重置。该validation_seed请求是一个不…

开发文档

peers

该peers命令返回streamd当前连接到该服务器的所有其他服务器的列表,包括有关其连接和同步状态的信息。 该peers请求是一个不能由非特权用户运行的管理命令! 请求…

开发文档

print

该print命令返回各种内部子系统的当前状态,包括同级,分类清理器和资源管理器。 该print请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "id":…

开发文档

便利功能

streamd服务器还提供了一些命令纯粹是为了方便。

开发文档

ping

该ping命令返回一个确认,以便客户端可以测试连接状态和延迟。 请求格式的示例: { "id": 1, "command": "ping" } { "method": "…

开发文档

random

该random命令提供一个随机数,用作客户端产生随机数的熵源。请求格式的示例:{ "id": 1, "command": "random" }{ "method": "r…

开发文档

json

该json方法是运行其他命令的代理,并将该命令的参数作为JSON值接受。它是Commandline客户端专用的,用于指定参数的命令行语法不足或不合需要的情况。请求格式的示…

开发文档

connect

该connect命令强制streamd服务器连接到特定的对等streamd服务器。 该connect请求是一个不能由非特权用户运行的管理命令! 请求格式的示例: { "c…

开发文档

stop

优雅地关闭服务器。该stop请求是一个不能由非特权用户运行的管理命令!请求格式的示例:{ "id": 0, "command": "stop" }{ "method": …

开发文档

novstream_check

该novstream_check命令提供了一种快速检查帐户的DefaultStream字段以及其信任线的Novstream标志的状态,并与建议的设置进行比较。 请求格式的…

开发文档

2235

介绍样板基本类型地址账户序列号货币ValueAmount交易概览交易类型交易流程交易费用交易说明交易ID交易Memos交易规格付款TrustlineOrderOrder …

THE NEXT CONNECTION

下一次连接,从这里开始。

加入 Stream 社区,一起探索价值互联。

联系我们