Ripple(瑞波) JavaScript(node.js) 客户端接口库RippleAPI

介绍

RippleAPI是XRP Ledger的官方客户端库。目前,RippleAPI仅适用于JavaScript。使用RippleAPI,您可以:

  • 从XRP分类帐历史中查询交易
  • 无需连接任何服务器即可安全签署交易
  • 将交易提交到XRP分类帐,包括付款,订单,设置更改和其他类型
  • 生成新的XRP分类帐地址
  • ... 等等。

RippleAPI只提供接入验证一成不变的交易数据。

样板

使用以下样板代码使用RippleAPI封装您的自定义代码。

const RippleAPI = require('ripple-lib').RippleAPI;

const api = new RippleAPI({
  server: 'wss://s1.ripple.com' // Public rippled server hosted by Ripple, Inc.
});
api.on('error', (errorCode, errorMessage) => {
  console.log(errorCode + ': ' + errorMessage);
});
api.on('connected', () => {
  console.log('connected');
});
api.on('disconnected', (code) => {
  // code - [close code](https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent) sent by the server
  // will be 1000 if this was normal closure
  console.log('disconnected, code:', code);
});
api.connect().then(() => {
  /* insert code here */
}).then(() => {
  return api.disconnect();
}).catch(console.error);

RippleAPI被设计为在Node.js版本6.11.3中工作。如果您使用Babel进行ECMAScript 6支持,RippleAPI可以在较旧的Node.js版本上运行。

本文档中的代码示例使用ECMAScript 6(ES6)功能编写,但RippleAPI也适用于ECMAScript 5(ES5)。无论您使用ES5还是ES6,返回Promises的方法都会返回ES6样式的promise。

本文档中的所有代码片段假定您已经用这个样板包围了它们。如果您省略“catch”部分,则错误可能不可见。每当发生无法与特定请求关联的错误时,就会发出“错误”事件。如果侦听器未注册,则每当发生事件时都会抛出异常。

参数

RippleAPI构造函数可选地接受一个参数,一个具有以下选项的对象:

名称 类型 描述
授权 对格式为username:password的波纹服务器进行HTTP基本验证的可选用户名和密码。
证书 可选包含PEM格式客户端证书密钥的字符串。(可以是一系列证书)。
feeCushion 在提交交易时所需费用上升的情况下,通过增加估计费用的可选因子来提供缓冲。默认为1.2
可选包含PEM格式客户端的私钥的字符串。(可以是一组键)。
密码 可选客户端私钥的密码。
代理 uri字符串 HTTP / HTTPS代理用于连接到波纹服务器的可选 URI。
proxyAuthorization 可选用户名和密码,以格式username:password的格式对代理进行HTTP基本身份验证。
服务器 uri字符串 用于连接到波纹websocket端口的可选 URI。必须以wss://或开头ws://
时间到 整数 在考虑请求失败之前,以毫秒为单位的可选超时。
跟踪 布尔 可选如果为true,则记录波及的请求和对stdout的响应。
trustedCertificates 阵列\ <字符串> 可选的PEM格式SSL证书数组在连接到代理时可信任。如果您想在代理服务器上使用自签名证书,这很有用。注意:每个元素必须包含一个证书; 级联证书无效。

如果您省略server参数,RippleAPI将脱机运行。

安装

  1. 安装Node.js和Yarn。大多数Linux发行版都有一个Node.js包; 检查它是你想要的版本。
  2. 使用纱线来安装RippleAPI: yarn install ripple-lib

在安装ripple-lib之后,可以使用样板文件创建脚本并使用Node.js可执行文件运行它们,通常命名为node

  `node script.js`

离线功能

RippleAPI还可以在没有互联网连接的情况下运行。这对于通过安全的隔离机器生成机密和签署交易非常有用。

要在离线模式下实例化RippleAPI,请使用以下样板代码:

const RippleAPI = require('ripple-lib').RippleAPI;

const api = new RippleAPI();
/* insert code here */

取决于XRP分类帐状态的方法在离线模式下不可用。为了准备交易离线,您必须指定feesequence以及maxLedgerVersion在参数交易指令。脱机时可以使用以下方法:

  • preparePayment
  • prepareTrustline
  • prepareOrder
  • prepareOrderCancellation
  • prepareSettings
  • prepareEscrowCreation
  • prepareEscrowCancellation
  • prepareEscrowExecution
  • 标志
  • generateAddress
  • computeLedgerHash

基本类型

地址

"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59"

每个XRP分类帐帐户都有一个地址,该地址是该帐户公钥的散列的base58编码。XRP分类帐地址始终以小写字母开头r

账户序列号

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

货币

货币表示为3个字符的货币代码或40个字符的大写十六进制字符串。我们建议仅使用大写的ISO 4217货币代码。信任线上不允许使用字符串“XRP”,因为它是为XRP分类帐本币设置的。以下字符:所有大写字母和小写字母,数字,以及符号?!@#$%^&*<>(){}[],和|

是表示为一个十进制字符串的货币的量。注意:JavaScript的原生数字格式没有足够的精度来表示所有值。XRP与其他货币的精度不同。

XRP在小数点后有6位有效数字。换句话说,XRP不能被分成小于0.000001(1e-6)的正值。XRP的最大值为100000000000(1e11)。

非XRP值有16位精度的十进制数字,最大值为9999999999999999e80。最小的正非XRP值是1e-81

示例量:

{
  "currency": "USD",
  "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
  "value": "100"
}

示例XRP数量:

{
  "currency": "XRP",
  "value": "2000"
}

是表示货币,对该货币的量,并在保持该值的trustline对方的数据结构。对于XRP,没有交易对手。

一个宽松的金额允许所有货币将被省略的对手。如果交易对手未在交易规格内指定金额,则任何交易对手均可用于该金额。

不严松弛量允许使用或将被省略的这两个交易对方和值。

平衡比可具有负值的量。

名称 类型 描述
货币 货币 用于表示货币的三字符代码或十六进制字符串
对手 地址 可选项欠款或欠款的帐户的波动地址(如果currency是“XRP”则省略)
可选货币数量,表示为保留浮点精度的字符串

交易概览

交易类型

事务类型由下表第一列中的字符串指定。

类型 描述
付款 payment交易代表的值从一个帐户转移到另一个。根据所采取的路径,可能会自动进行额外的价值交换,以方便付款。
订购 一个order交易创建了一个限价订单。它定义了交换货币的意图,并在XRP分类帐的订单簿中创建了一个订单,如果放置时未完全满足订单。订单可以部分实现。
orderCancellation 一个orderCancellation交易取消在XRP莱杰的订单一个订单。
trustline 一个trustline交易创建或修改两个账户之间的信任线。
设置 一个settings事务修改的XRP总帐帐户的设置。
escrowCreation 一个escrowCreation事务在分类账上创建一个托管,这个分支锁定XRP,直到满足一个加密条件或到期。这就像XRP Ledger充当托管代理的托管服务。
escrowCancellation 一个escrowCancellation交易解锁资金托管,并将其发送回代管的创造者,但托管期满后,它才有效。
escrowExecution 一个escrowExecution交易解锁资金托管,并将它们发送到中介的目的地,但如果提供的加密条件的用户才能使用。
checkCreate 一个checkCreate交易创建的分类帐,这是一种延期支付,可以通过其预定目标兑现的支票。
checkCancel 一个checkCancel交易取消的unreedemed检查,从台账不发送任何钱取出。
checkCash 一个checkCash交易兑换的支票最高可获得由相应的授权量checkCreate交易。只有destination支票的地址可以兑现。

交易流程

执行交易RippleAPI需要以下四个步骤:

  1. 准备 - 根据规范和说明创建未签名的事务。有一种方法来准备每种类型的交易:
    • preparePayment
    • prepareTrustline
    • prepareOrder
    • prepareOrderCancellation
    • prepareSettings
    • prepareEscrowCreation
    • prepareEscrowCancellation
    • prepareEscrowExecution
    • prepareCheckCreate
    • prepareCheckCancel
    • prepareCheckCash
  2. 签名 - 在本地对交易进行密码签名并保存交易ID。签名是账户所有者授权交易发生的方式。对于多重签名交易,必须收集signedTransaction返回的字段sign并将其传递给组合方法。
  3. 提交 - 将交易提交到连接的服务器。
  4. 验证 - 通过使用getTransaction查询验证事务是否已验证。这是必要的,因为即使交易成功提交,交易也可能失败。

交易费用

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

您可以选择想要支付的费用的大小或者使用默认值。您可以通过getFee方法得到关于下一个总帐所需费用的估算值。

交易说明

交易指令指示如何执行交易,与交易规范互补。

名称 类型 描述
费用 可选精确的费用为交易支付。请参阅交易费用了解更多信息。
maxFee 可选交易支付的最高费用。请参阅交易费用了解更多信息。
maxLedgerVersion 整数,空 可选事务可包含的最高分类帐版本。如果maxLedgerVersionOffset省略此选项,则该maxLedgerVersion选项将默认为比当前经验证的分类帐版本(等同于maxLedgerVersionOffset=3)大3。使用null不设置最高总账版本。
maxLedgerVersionOffset 整数 从当前经验证的分类帐版本到交易可包含的最高分类账版本的可选抵销。
序列 序列 可选该交易的初始帐户序号。
signersCount 整数 可选签署者的数目将签署此交易。

我们建议您指定一个,maxLedgerVersion以便您可以快速确定失败的事务将来永远不会成功。在XRP分类账的经过共识验证的分类帐版本超过交易记录后,交易不可能成功maxLedgerVersion。如果省略maxLedgerVersion,“准备”方法会自动提供一个maxLedgerVersion等于当前分类帐加3的值,它包含在“准备 ”方法的返回值中

交易ID

"F4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF"

事务ID是唯一标识事务的64位十六进制字符串。事务ID是使用强大的散列函数从事务指令和规范派生而来的。

您可以使用getTransaction方法通过ID查找事务。

交易记事

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

名称 类型 描述
数据 可选任意字符串,通常包含备忘录的内容。
格式 可选通常包含有关备忘录如何编码的信息,例如作为MIME类型。只允许URL中允许使用的字符。
类型 可选通常,定义此备忘录格式的唯一关系(根据RFC 5988)。只允许URL中允许使用的字符。

交易规格

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

付款

有关说明,请参阅交易类型。

名称 类型 描述
资源 目的 资金的来源将被发送。
资源。地址 地址 要发送的地址。
资源。 laxAmount 确切的金额发送。如果未指定交易对手,则可以使用任何交易对手的金额。(这个字段是独立于source.maxAmount的)
资源。标签 整数 可选任意无符号的32位整数,用于标识付款原因或非Ripple帐户。
资源。maxAmount laxAmount 最大发送金额。(这个字段是独立于source.amount的)
目的地 目的 要发送的资金的目的地。
目的地。地址 地址 要收到的地址。
目的地。 laxAmount 确切数额交付给收件人。如果未指定交易对手,则可以使用任何交易对手的金额。(该字段与destination.minAmount独占)。
目的地。标签 整数 可选任意无符号的32位整数,用于标识付款原因或非Ripple帐户。
目的地。地址 地址 要发送到的地址。
目的地。MINAMOUNT laxAmount 最低交付金额。(这个字段是唯一的destination.amount)
allowPartialPayment 布尔 可选如果为真,即使由于流动性缺乏或源帐户资金不足而导致无法交付全部金额,也应继续执行此付款。
invoiceID 可选可以用来识别特定付款的256位散列。
limitQuality 布尔 可选仅在所有转换的输入:输出比率等于或优于destination.amount:source.maxAmount的比率时采用路径。
备忘录 备忘录 可选的备忘录数组附加到事务。
noDirectRipple 布尔 可选如果指定了true和路径,发件人希望XRP分类帐忽略从源帐户到目标帐户的任何直接路径。这可以用来利用套利机会或者希望从热钱包向错误地将信任线直接设置到热钱包的用户发布余额的网关。
路径 可选用于执行付款的信任线和订单的路径。

{
  "source": {
    "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
    "maxAmount": {
      "value": "0.01",
      "currency": "USD",
      "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM"
    }
  },
  "destination": {
    "address": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
    "amount": {
      "value": "0.01",
      "currency": "USD",
      "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM"
    }
  }
}

Trustline

有关说明,请参阅交易类型。

名称 类型 描述
货币 货币 此信任线适用的货币。
对手 地址 此信任线将信任扩展到的帐户的地址。
限制 信任线的所有者可通过信任线承担的最大金额。
合法 布尔 可选如果为true,则授权交易对手从该账户持有发行。
冻结的 布尔 可选如果为true,则信任线会被冻结,这意味着资金只能发送给所有者。
备忘录 备忘录 可选的备忘录数组附加到事务。
qualityIn 此信任线上的可选收款余额按此比率计价。
qualityOut 此信任线上的可选余额按此比率估值。
ripplingDisabled 布尔 可选如果属实,付款不能通过此信任线涟漪。

{
  "currency": "USD",
  "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
  "limit": "10000",
  "qualityIn": 0.91,
  "qualityOut": 0.87,
  "ripplingDisabled": true,
  "frozen": false,
  "memos": [
    {
      "type": "test",
      "format": "plain/text",
      "data": "texted data"
    }
  ]
}

订购

有关说明,请参阅交易类型。

名称 类型 描述
方向 等于购买订单的“买入”和卖出订单的“卖出”。
数量 买或卖的货币数量。
totalPrice quantity要购买或出售的总价格。
expirationTime 日期时间字符串 作为ISO 8601日期时间之后,此优惠不再有效的可选时间。
fillOrKill 布尔 可选将报价视为填写或填写订单。只尝试匹配分类帐中的现有优惠,并且只有在可以交换全部数量的情况下才这样做。
immediateOrCancel 布尔 可选将该报价视为立即订单或取消订单。如果启用,报价将永远不会成为分类账节点:它只会尝试匹配分类帐中的现有报价。
备忘录 备忘录 可选的备忘录数组附加到事务。
orderToReplace 序列 可选在创建新订单之前取消的订单的科目序号,有效替换旧订单。
被动 布尔 可选如果启用,报价不会使用与其完全匹配的报价,而是成为分类帐中的报价节点。它仍然会使用跨越它的优惠。

{
  "direction": "buy",
  "quantity": {
    "currency": "USD",
    "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
    "value": "10.1"
  },
  "totalPrice": {
    "currency": "XRP",
    "value": "2"
  },
  "passive": true,
  "fillOrKill": true
}

订单取消

有关说明,请参阅交易类型。

名称 类型 描述
orderSequence 序列 要取消的订单的科目序号。
备忘录 备忘录 可选的备忘录数组附加到事务。

{
  "orderSequence": 23
}

设置

有关说明,请参阅交易类型。

名称 类型 描述
defaultRipple 布尔 可选默认情况下,启用此帐户的信任线上的荡漾。(新波纹0.27.3)
depositAuth 布尔 此帐户可选启用存款授权。如果设置,则交易无法将任何类型的价值发送到此帐户,除非这些交易的发件人是帐户本身。(需要DepositAuth修正)
disableMasterKey 布尔 可选不允许使用主密钥为此帐户签署交易。
disallowIncomingXRP 布尔 可选指示客户端应用程序不应将XRP发送到此帐户。不是由波纹执行。
可选 拥有此帐户的域,以十六进制字符串表示以小写字母表示的域的ASCII。
emailHash 串,空 用于生成化身图像的电子邮件地址的可选哈希。通常,客户使用Gravatar来显示该图像。使用null清除。
enableTransactionIDTracking 布尔 可选跟踪此帐户最近一次交易的ID。
globalFreeze 布尔 可选冻结由此帐户发布的所有资产。
备忘录 备忘录 可选的备忘录数组附加到事务。
messageKey 可选公钥,用于将加密邮件发送到此帐户。通常,它应该是一个secp256k1密钥,与Ripple其余部分使用的加密相同。
noFreeze 布尔 可选永久放弃冻结个人信任额度的能力。启用后,此标志永远不会被禁用。
passwordSpent 布尔 可选指示帐户已使用其免费的SetRegularKey事务。
regularKey 地址,null 可选新密钥对的公钥,用作此帐户的常规密钥,作为与帐户地址相同格式的基本58编码字符串。使用null去除正规钥匙。
requireAuthorization 布尔 可选如果设置,此帐户必须单独批准其他用户,以便这些用户持有此帐户的发行。
requireDestinationTag 布尔 可选需要传入付款才能指定目的地代码。
签名者 目的 可选设置,用于确定可使用多个帐户代表该帐户使用哪些帐户组签署交易。
签名者。 整数 可选目标号码的签名者权重。只有提供的签名的总和权重等于或大于此值时,此列表中的多重签名才有效。要删除签名者设置,请使用该值0
签名者。权重 排列 每个签名者的可选签名权重。
签名者。权重[] 目的 地址和体重的关联。
signers.weights []。地址 地址 一个Ripple帐户地址
signers.weights []。重量 整数 这个账户的签名算作门槛权重。
TRANSFERRATE 数,空 可选 用户转移此账户的发行时收取的费用,作为发送1个单位必须发送的十进制金额。精确度最高可达9位数,超过小数点。使用null设置不收取任何费用。

{
  "domain": "ripple.com",
  "memos": [
    {
      "type": "test",
      "format": "plain/text",
      "data": "texted data"
    }
  ]
}

托管创建

有关说明,请参阅交易类型。

名称 类型 描述
发件人托管的XRP金额。
目的地 地址 地址以接收托管的XRP。
allowCancelAfter 日期时间字符串 可选如果存在,此次托管可能会在此时间后取消。
allowExecuteAfter 日期时间字符串 可选如果存在,在此时间之前不能执行托管。
条件 可选一个表示PREIMAGE-SHA-256密码条件的十六进制值。如果存在,fulfillment在执行时需要。
destinationTag 整数 可选的目标标记。
备忘录 备忘录 可选的备忘录数组附加到事务。
sourceTag 整数 可选的源标签。

{
  "destination": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
  "amount": "0.01",
  "allowExecuteAfter": "2014-09-24T21:21:50.000Z",
  "allowCancelAfter":  "2017-01-01T00:00:00.000Z"
}

托管取消

有关说明,请参阅交易类型。

名称 类型 描述
所有者 地址 要取消的托管所有者的地址。
escrowSequence 序列 托管创建交易的账户序列号,用于取消托管。
备忘录 备忘录 可选的备忘录数组附加到事务。

{
  "owner": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
  "escrowSequence": 1234
}

托管执行

有关说明,请参阅交易类型。

名称 类型 描述
所有者 地址 要执行的托管所有者的地址。
escrowSequence 序列 托管执行的托管创建交易的科目顺序号。
条件 可选一个表示PREIMAGE-SHA-256密码条件的十六进制值。这必须与condition托管创建交易中的原件相匹配。
履行 可选用于表示PREIMAGE-SHA-256密码条件满足的十六进制值condition
备忘录 备忘录 可选的备忘录数组附加到事务。

{
  "owner": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
  "escrowSequence": 1234,
  "condition": "A0258020E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855810100",
  "fulfillment": "A0028000"
}

选中创建

有关说明,请参阅交易类型。

名称 类型 描述
目的地 地址 可以兑现支票的账户地址。
sendMax laxAmount 允许支票支付发件人的源货币金额,包括非XRP货币的转账费用。
destinationTag 整数 可选的目的地标记,标识检查的原因或托管收件人付款。
呼气 日期时间字符串 可选时间过后,支票不再有效。
invoiceID 可选的 256位散列,作为64个字符的十六进制字符串,表示此检查的具体原因或标识符。

{
  "destination": "rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW",
  "sendMax": {
    "currency": "XRP",
    "value": "1"
  }
}

检查取消

有关说明,请参阅交易类型。

名称 类型 描述
checkID 作为一个64个字符的十六进制字符串取消检查分类帐对象的ID。

{
  "checkID": "49647F0D748DC3FE26BDACBC57F251AADEFFF391403EC9BF87C97F67E9977FB0"
}

检查现金

有关说明,请参阅交易类型。

名称 类型 描述
checkID 将支票分类帐对象的ID设置为现金,作为64个字符的十六进制字符串。
laxAmount 可选兑换检查确切金额,如果可能的话。货币必须与相应的CheckCreate交易的sendMax相匹配。您必须提供此字段或deliverMin。
deliverMin laxAmount 可选兑换检查至少这个数量和尽可能多。货币必须与相应的CheckCreate交易的sendMax相匹配。您必须提供此字段或金额。

{
  "amount": {
    "currency": "XRP",
    "value": "1"
  },
  "checkID": "838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334"
}

付款渠道创建

有关说明,请参阅交易类型。

名称 类型 描述
发送者在此频道留出的XRP数量。
目的地 地址 收到XRP针对此频道的声明地址。
settleDelay 如果源地址具有未声明的XRP,则在关闭通道之前必须等待的秒数。
公钥 该来源将用于签署针对此频道的版权声明的密钥对的公钥。
cancelAfter 日期时间字符串 此频道到期的可选时间。
destinationTag 整数 可选的目标标记。
sourceTag 整数 可选的源标签。

{
  "amount": "1",
  "destination": "rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW",
  "settleDelay": 86400,
  "publicKey": "32D2471DB72B27E3310F355BB33E339BF26F8392D5A93D3BC0FC3B566612DA0F0A"
}

支付渠道基金

有关说明,请参阅交易类型。

名称 类型 描述
XRP用于为频道提供资金的数量。
渠道 256位十六进制通道标识符。
呼气 日期时间字符串 可选此通道的新到期日期。

{
  "channel": "C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198",
  "amount": "1"
}

付款频道索赔

有关说明,请参阅交易类型。

名称 类型 描述
渠道 256位十六进制通道标识符。
处理索赔后,此通道的可选 XRP余额。
平衡 通过签名授权的可选 XRP数量。
布尔 可选请求关闭频道。
公钥 频道发件人的可选公钥
更新 布尔 可选清除频道的到期时间。
签名 此索赔的可选签名。

{
  "channel": "C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198"
}

API方法

connect(): Promise

告诉RippleAPI实例连接到它的波纹服务器。

参数

此方法没有参数。

返回值

此方法返回一个承诺,当连接建立时用void值解析。

有关代码示例,请参阅Boilerplate。

断开

disconnect(): Promise

告诉RippleAPI实例从其波动的服务器断开连接。

参数

此方法没有参数。

返回值

该方法返回一个承诺,当连接被销毁时用一个空值解析。

有关代码示例,请参阅Boilerplate

已连接

isConnected(): boolean

检查RippleAPI实例是否连接到其波动的服务器。

参数

此方法没有参数。

返回值

true如果连接并且false未连接,则此方法返回。

return api.isConnected();
true

getServerInfo

getServerInfo(): Promise

获取有关RippleAPI实例连接到的服务器的状态信息。

参数

此方法没有参数。

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

名称 类型 描述
buildVersion 正在运行的波纹版本的版本号。
completeLedgers 范围表达式指示数据库中本地波动的分类帐版本的序列号。可能是不相交的序列,例如“2500-5000,32570-7695432”。
HOSTID 在管理请求上,返回运行rippled实例的服务器的主机名; 否则,返回一个唯一的四个字母的单词。
ioLatencyMs 等待执行I / O操作的时间量(以毫秒为单位)。如果这个数字不是很低,那么波动的服务器可能有严重的负载问题。
lastClose 目的 有关上次服务器关闭分类帐的信息。
lastClose。convergeTimeS 花费在几秒钟内达成最后一个分类帐的共识所需的时间。
lastClose。提议者 整数 参与分类账结算的可信验证人数。
loadFactor 服务器当前执行的加载因子,作为基本事务处理费用的乘数。负载因子由单个服务器的负载因子,簇的负载因子和整个网络的负载因子中的最高者决定。
同行 整数 该节点当前连接到多少个其他波纹服务器。
pubkeyNode 用于验证此节点以进行内部通信的公钥; 该密钥由服务器第一次启动时自动生成。(如果删除,节点可以创建一对新的密钥。)
serverState 指示服务器参与网络的程度的字符串。有关更多信息,请参阅可能的服务器状
validatedLedger 目的 关于序号最高的完整验证分类帐的信息(最新)。
validatedLedger。年龄 整数 自分类帐关闭以来的时间,以秒为单位。
validatedLedger。baseFeeXRP 基本费用,在XRP。这可能以科学记数法表示,如1e-05为0.00005。
validatedLedger。哈希 分类帐的唯一散列,作为大写十六进制字符串。
validatedLedger。reserveBaseXRP 每个账户需要保留的最小XRP金额。
validatedLedger。reserveIncrementXRP 为账户在分类帐中负责的每个对象添加的XRP金额。
validatedLedger。ledgerVersion 整数 识别此分类账版本的序号。
validationQuorum 验证分类帐版本所需的可信验证的最小数量。有些情况可能会导致服务器需要更多验证。
加载 目的 可选 (仅限管理员)有关服务器当前负载状态的详细信息。
加载。jobTypes 阵列\ <对象> (仅限管理员)有关服务器执行的不同类型作业的比率以及每个作业花费多少时间的信息。
加载。线程 (仅管理员)服务器主作业池中执行各种纹波网络操作的线程数。
pubkeyValidator 可选 (仅限管理员)此节点用于签署分类帐验证的公钥。

return api.getServerInfo().then(info => {/* ... */});
{
  "buildVersion": "0.24.0-rc1",
  "completeLedgers": "32570-6595042",
  "hostID": "ARTS",
  "ioLatencyMs": 1,
  "lastClose": {
    "convergeTimeS": 2.007,
    "proposers": 4
  },
  "loadFactor": 1,
  "peers": 53,
  "pubkeyNode": "n94wWvFUmaKGYrKUGgpv1DyYgDeXRGdACkNQaSe7zJiy5Znio7UC",
  "serverState": "full",
  "validatedLedger": {
    "age": 5,
    "baseFeeXRP": "0.00001",
    "hash": "4482DEE5362332F54A4036ED57EE1767C9F33CF7CE5A6670355C16CECE381D46",
    "reserveBaseXRP": "20",
    "reserveIncrementXRP": "5",
    "ledgerVersion": 6595042
  },
  "validationQuorum": 3
}

getFee

getFee(): Promise

返回RippleAPI实例连接到的rippled服务器的估计交易费用。

参数

此方法没有参数。

返回值

此方法返回一个承诺,该结果将以字符串编码的浮点值进行解析,该值表示提交事务的估计费用,用XRP表示。

return api.getFee().then(fee => {/* ... */});
"0.012"

getLedgerVersion

getLedgerVersion(): Promise

返回连接服务器已知的最新验证分类帐版本号。

参数

此方法没有参数。

返回值

此方法返回一个承诺,该承诺使用表示最近验证的分类帐版本号的正整数来解析,该数字是连接的服务器已知的。

return api.getLedgerVersion().then(ledgerVersion => {
  /* ... */
});
16869039

getTransaction

getTransaction(id: string, options: Object): Promise

通过其交易ID检索交易。

参数

名称 类型 描述
ID ID 用于标识事务的事务的散列,以十六进制表示。
选项 目的 可选选项来限制要搜索的分类帐版本。
选项。maxLedgerVersion 整数 可选要搜索的最高分类账版本
选项。minLedgerVersion 整数 可选要搜索的最低分类帐版本。

返回值

此方法返回一个承诺,该承诺通过包含以下字段的事务对象来解决。

名称 类型 描述
ID ID 可以用来识别它的事务的散列。
地址 地址 发起交易的帐户的地址。
序列 序列 启动它的帐户的交易帐号序号。
类型 TRANSACTIONTYPE 交易的类型。
规范 目的 一个能够产生与此交易相同结果的规范。规范的结构取决于type字段的值(有关详细信息,请参阅事务类型)。注:这是不是一定是原来一样规范。
结果 目的 交易的结果(它有什么影响)。
结果。结果 由波纹返回的结果代码。请参阅交易结果以获取完整列表。
结果。费用 交易收取的XRP费用。
outcome.balanceChanges。* array \ < balance > 关键是涟漪地址; 值是表示该地址的余额变化的有符号数量的数组。
outcome.orderbookChanges。* 排列 关键是制造商的涟漪地址; 值是一系列变化
outcome.orderbookChanges。* [] 目的 订单更改。
outcome.orderbookChanges。* []。方向 等于购买订单的“买入”和卖出订单的“卖出”。
outcome.orderbookChanges。* []。数量 制造商购买或出售的金额。
outcome.orderbookChanges。* []。totalPrice 接受者支付或收到的总金额。
outcome.orderbookChanges。* []。序列 序列 订单序号,用于标识取消订单
outcome.orderbookChanges。* []。状态 订单的状态。“创建”,“填充”,“部分填充”,“取消”之一。
outcome.orderbookChanges。* []。expirationTime 日期时间字符串 可选订单到期后的时间(如果有)。
outcome.orderbookChanges。* []。makerExchangeRate 可选从制造商的角度来看quantity货币与totalPrice货币之间的汇率。
结果。ledgerVersion 整数 该交易已通过验证的分类帐版本。
结果。indexInLedger 整数 分类帐中交易的排序索引。
结果。deliveredAmount 可选对于支付交易,由于固定的精确度,无法可靠地计算来自balanceChanges的实际交付金额。如果付款不是部分付款且交易成功,则交付金额应始终被视为交易中指定的金额。
结果。时间戳 日期时间字符串 可选事务验证时的时间戳。(以二进制模式请求事务时可能会丢失。)

const id = '01CDEAA89BF99D97DFD47F79A0477E1DCC0989D39F70E8AACBFE68CC83BD1E94';
return api.getTransaction(id).then(transaction => {
  /* ... */
});
{
  "type": "payment",
  "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
  "sequence": 4,
  "id": "F4AB442A6D4CBB935D66E1DA7309A5FC71C7143ED4049053EC14E3875B0CF9BF",
  "specification": {
    "source": {
      "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "maxAmount": {
        "currency": "XRP",
        "value": "1.112209"
      }
    },
    "destination": {
      "address": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
      "amount": {
        "currency": "USD",
        "value": "0.001"
      }
    },
    "paths": "[[{\"currency\":\"USD\",\"issuer\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"type\":48,\"type_hex\":\"0000000000000030\"},{\"account\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"currency\":\"USD\",\"issuer\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"type\":49,\"type_hex\":\"0000000000000031\"}]]"
  },
  "outcome": {
    "result": "tesSUCCESS",
    "timestamp": "2013-03-12T23:56:50.000Z",
    "fee": "0.00001",
    "deliveredAmount": {
      "currency": "USD",
      "value": "0.001",
      "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM"
    },
    "balanceChanges": {
      "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo": [
        {
          "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
          "currency": "USD",
          "value": "-0.001"
        },
        {
          "counterparty": "r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr",
          "currency": "USD",
          "value": "0.001002"
        }
      ],
      "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM": [
        {
          "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
          "currency": "USD",
          "value": "0.001"
        }
      ],
      "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59": [
        {
          "currency": "XRP",
          "value": "-1.101208"
        }
      ],
      "r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr": [
        {
          "currency": "XRP",
          "value": "1.101198"
        },
        {
          "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
          "currency": "USD",
          "value": "-0.001002"
        }
      ]
    },
    "orderbookChanges": {
      "r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr": [
        {
          "direction": "buy",
          "quantity": {
            "currency": "XRP",
            "value": "1.101198"
          },
          "totalPrice": {
            "currency": "USD",
            "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
            "value": "0.001002"
          },
          "makerExchangeRate": "1099",
          "sequence": 58,
          "status": "partially-filled"
        }
      ]
    },
    "ledgerVersion": 348860,
    "indexInLedger": 0
  }
}

getTransactions

getTransactions(address: string, options: Object): Promise>

检索帐户的历史交易。

参数

名称 类型 描述
地址 地址 要获取交易的帐户的地址。
选项 目的 可选的选项来过滤结果交易。
选项。二进制 布尔 可选如果为true,则事务将以精简二进制格式而不是JSON从服务器发送。
选项。对手 地址 可选如果提供,只返回与此帐户交易的交易作为交易对手。
选项。earliestFirst 布尔 可选如果为true,则对事务进行排序,以使最早的事务处于第一位。默认情况下,最新的交易将优先。
选项。excludeFailures 布尔 可选如果为true,则结果将省略未成功的事务。
选项。启动 布尔 可选如果为true,则仅返回由指定的帐户启动的交易address。如果为false,则仅返回不是由指定的帐户启动的交易address
选项。限制 整数 可选如果指定,最多返回这么多事务。
选项。maxLedgerVersion 整数 可选仅返回此分类帐版本或更低的交易。
选项。minLedgerVersion 整数 可选仅返回此分类帐或更高版本中的交易。
选项。开始 可选如果指定,则此事务将成为结果中的第一个事务。你不能startminLedgerVersionor一起使用maxLedgerVersion。何时start指定,这些分类帐版本将在内部确定。
选项。类型 array \ 可选只返回指定交易类型的交易。

返回值

此方法返回一个承诺,该承诺以与getTransaction相同的格式解决事务对象数组。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
return api.getTransactions(address).then(transaction => {
  /* ... */
});
[
  {
    "type": "payment",
    "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
    "sequence": 4,
    "id": "99404A34E8170319521223A6C604AF48B9F1E3000C377E6141F9A1BF60B0B865",
    "specification": {
      "memos": [
        {
          "type": "client",
          "format": "rt1.5.2"
        }
      ],
      "source": {
        "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
        "maxAmount": {
          "currency": "XRP",
          "value": "1.112209"
        }
      },
      "destination": {
        "address": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
        "amount": {
          "currency": "USD",
          "value": "0.001"
        }
      },
      "paths": "[[{\"issuer\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"currency\":\"USD\"},{\"account\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"issuer\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"currency\":\"USD\"}]]"
    },
    "outcome": {
      "result": "tesSUCCESS",
      "fee": "0.00001",
      "deliveredAmount": {
        "currency": "USD",
        "value": "0.001",
        "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM"
      },
      "balanceChanges": {
        "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo": [
          {
            "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
            "currency": "USD",
            "value": "-0.001"
          },
          {
            "counterparty": "r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr",
            "currency": "USD",
            "value": "0.001002"
          }
        ],
        "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM": [
          {
            "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
            "currency": "USD",
            "value": "0.001"
          }
        ],
        "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59": [
          {
            "currency": "XRP",
            "value": "-1.101208"
          }
        ],
        "r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr": [
          {
            "currency": "XRP",
            "value": "1.101198"
          },
          {
            "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
            "currency": "USD",
            "value": "-0.001002"
          }
        ]
      },
      "orderbookChanges": {
        "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59": [
          {
            "direction": "buy",
            "quantity": {
              "currency": "XRP",
              "value": "1.101198"
            },
            "totalPrice": {
              "currency": "USD",
              "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
              "value": "0.001002"
            },
            "makerExchangeRate": "1099",
            "sequence": 58,
            "status": "partially-filled"
          }
        ]
      },
      "ledgerVersion": 348859,
      "indexInLedger": 0
    }
  },
  {
    "type": "payment",
    "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
    "id": "99404A34E8170319521223A6C604AF48B9F1E3000C377E6141F9A1BF60B0B865",
    "sequence": 4,
    "specification": {
      "memos": [
        {
          "type": "client",
          "format": "rt1.5.2"
        }
      ],
      "source": {
        "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
        "maxAmount": {
          "currency": "XRP",
          "value": "1.112209"
        }
      },
      "destination": {
        "address": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
        "amount": {
          "currency": "USD",
          "value": "0.001"
        }
      },
      "paths": "[[{\"issuer\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"currency\":\"USD\"},{\"account\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"issuer\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"currency\":\"USD\"}]]"
    },
    "outcome": {
      "result": "tesSUCCESS",
      "fee": "0.00001",
      "deliveredAmount": {
        "currency": "USD",
        "value": "0.001",
        "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM"
      },
      "balanceChanges": {
        "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo": [
          {
            "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
            "currency": "USD",
            "value": "-0.001"
          },
          {
            "counterparty": "r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr",
            "currency": "USD",
            "value": "0.001002"
          }
        ],
        "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM": [
          {
            "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
            "currency": "USD",
            "value": "0.001"
          }
        ],
        "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59": [
          {
            "currency": "XRP",
            "value": "-1.101208"
          }
        ],
        "r9tGqzZgKxVFvzKFdUqXAqTzazWBUia8Qr": [
          {
            "currency": "XRP",
            "value": "1.101198"
          },
          {
            "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
            "currency": "USD",
            "value": "-0.001002"
          }
        ]
      },
      "orderbookChanges": {
        "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59": [
          {
            "direction": "buy",
            "quantity": {
              "currency": "XRP",
              "value": "1.101198"
            },
            "totalPrice": {
              "currency": "USD",
              "counterparty": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
              "value": "0.001002"
            },
            "makerExchangeRate": "1099",
            "sequence": 58,
            "status": "partially-filled"
          }
        ]
      },
      "ledgerVersion": 348858,
      "indexInLedger": 0
    }
  }
]

getTrustlines

getTrustlines(address: string, options: Object): Promise>

返回指定帐户的信任线。

参数

名称 类型 描述
地址 地址 要获取信任的帐户的地址。
选项 目的 可选的选项来过滤和确定返回哪些信任线。
选项。对手 地址 可选只能将此信任线返回给此交易对手。
选项。货币 货币 可选仅返回此货币的信任线。
选项。ledgerVersion 整数 可选返回此历史记帐版本中的信任线。
选项。限制 整数 可选返回至多这些信任线。

返回值

此方法返回一个承诺,该承诺可用具有以下结构的对象数组来解决。

名称 类型 描述
规范 trustline 在当前状态下产生该信任线的信任线规范。
对手 目的 从交易对手的角度来看,信任线的性质。
交易对手。限制 通过信任线可能欠对方的最大金额。
交易对手。合法 布尔 可选如果属实,交易对手授权该方从交易对手处获得通知。
交易对手。冻结的 布尔 可选如果为true,则信任线会被冻结,这意味着资金只能发送给交易对手。
交易对手。ripplingDisabled 布尔 可选如果属实,付款不能通过此信任线涟漪。
目的 信任线关于其当前状态的属性不属于规范的一部分。
州。平衡 signedValue 信任线上的余额,代表哪一方欠他人多少。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
return api.getTrustlines(address).then(trustlines =>
  {/* ... */});
[
  {
    "specification": {
      "limit": "5",
      "currency": "USD",
      "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
      "ripplingDisabled": true,
      "frozen": true
    },
    "counterparty": {
      "limit": "0"
    },
    "state": {
      "balance": "2.497605752725159"
    }
  },
  {
    "specification": {
      "limit": "5000",
      "currency": "USD",
      "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
    },
    "counterparty": {
      "limit": "0"
    },
    "state": {
      "balance": "0"
    }
  },
  {
    "specification": {
      "limit": "1",
      "currency": "USD",
      "counterparty": "rLEsXccBGNR3UPuPu2hUXPjziKC3qKSBun"
    },
    "counterparty": {
      "limit": "0"
    },
    "state": {
      "balance": "1"
    }
  },
  {
    "specification": {
      "limit": "1",
      "currency": "USD",
      "counterparty": "r9vbV3EHvXWjSkeQ6CAcYVPGeq7TuiXY2X",
      "ripplingDisabled": true
    },
    "counterparty": {
      "limit": "0"
    },
    "state": {
      "balance": "0"
    }
  },
  {
    "specification": {
      "limit": "500",
      "currency": "USD",
      "counterparty": "rfF3PNkwkq1DygW2wum2HK3RGfgkJjdPVD",
      "ripplingDisabled": true
    },
    "counterparty": {
      "limit": "0"
    },
    "state": {
      "balance": "35"
    }
  },
  {
    "specification": {
      "limit": "0",
      "currency": "USD",
      "counterparty": "rE6R3DWF9fBD7CyiQciePF9SqK58Ubp8o2"
    },
    "counterparty": {
      "limit": "100",
      "ripplingDisabled": true
    },
    "state": {
      "balance": "0"
    }
  },
  {
    "specification": {
      "limit": "0",
      "currency": "USD",
      "counterparty": "rEhDDUUNxpXgEHVJtC2cjXAgyx5VCFxdMF",
      "frozen": true
    },
    "counterparty": {
      "limit": "1"
    },
    "state": {
      "balance": "0"
    }
  }
]

getBalances

getBalances(address: string, options: Object): Promise>

返回指定帐户的余额。

参数

名称 类型 描述
地址 地址 帐户的地址以获得余额。
选项 目的 可选的选项来过滤和确定返回哪些余额。
选项。对手 地址 可选只能与该交易对手结清余额。
选项。货币 货币 可选只能为该货币返回余额。
选项。ledgerVersion 整数 可选返回余额与在此历史分类账版本中一样。
选项。限制 整数 可选返回至多这些余额。

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象数组来解析:

名称 类型 描述
货币 货币 用于表示货币的三字符代码或十六进制字符串
signedValue 信任线上的余额
对手 地址 可选的欠款或欠款的账户的波动地址。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
return api.getBalances(address).then(balances =>
  {/* ... */});
[
  {
    "value": "922.913243",
    "currency": "XRP"
  },
  {
    "value": "0",
    "currency": "ASP",
    "counterparty": "r3vi7mWxru9rJCxETCyA1CHvzL96eZWx5z"
  },
  {
    "value": "0",
    "currency": "XAU",
    "counterparty": "r3vi7mWxru9rJCxETCyA1CHvzL96eZWx5z"
  },
  {
    "value": "2.497605752725159",
    "currency": "USD",
    "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
  },
  {
    "value": "481.992867407479",
    "currency": "MXN",
    "counterparty": "rHpXfibHgSb64n8kK9QWDpdbfqSpYbM9a4"
  },
  {
    "value": "0.793598266778297",
    "currency": "EUR",
    "counterparty": "rLEsXccBGNR3UPuPu2hUXPjziKC3qKSBun"
  },
  {
    "value": "0",
    "currency": "CNY",
    "counterparty": "rnuF96W4SZoCJmbHYBFoJZpR8eCaxNvekK"
  },
  {
    "value": "1.294889190631542",
    "currency": "DYM",
    "counterparty": "rGwUWgN5BEg3QGNY3RX2HfYowjUTZdid3E"
  },
  {
    "value": "0.3488146605801446",
    "currency": "CHF",
    "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
  },
  {
    "value": "2.114103174931847",
    "currency": "BTC",
    "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
  },
  {
    "value": "0",
    "currency": "USD",
    "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
  },
  {
    "value": "-0.00111",
    "currency": "BTC",
    "counterparty": "rpgKWEmNqSDAGFhy5WDnsyPqfQxbWxKeVd"
  },
  {
    "value": "-0.1010780000080207",
    "currency": "BTC",
    "counterparty": "rBJ3YjwXi2MGbg7GVLuTXUWQ8DjL7tDXh4"
  },
  {
    "value": "1",
    "currency": "USD",
    "counterparty": "rLEsXccBGNR3UPuPu2hUXPjziKC3qKSBun"
  },
  {
    "value": "8.07619790068559",
    "currency": "CNY",
    "counterparty": "razqQKzJRdB4UxFPWf5NEpEG3WMkmwgcXA"
  },
  {
    "value": "7.292695098901099",
    "currency": "JPY",
    "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
  },
  {
    "value": "0",
    "currency": "AUX",
    "counterparty": "r3vi7mWxru9rJCxETCyA1CHvzL96eZWx5z"
  },
  {
    "value": "0",
    "currency": "USD",
    "counterparty": "r9vbV3EHvXWjSkeQ6CAcYVPGeq7TuiXY2X"
  },
  {
    "value": "12.41688780720394",
    "currency": "EUR",
    "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
  },
  {
    "value": "35",
    "currency": "USD",
    "counterparty": "rfF3PNkwkq1DygW2wum2HK3RGfgkJjdPVD"
  },
  {
    "value": "-5",
    "currency": "JOE",
    "counterparty": "rwUVoVMSURqNyvocPCcvLu3ygJzZyw8qwp"
  },
  {
    "value": "0",
    "currency": "USD",
    "counterparty": "rE6R3DWF9fBD7CyiQciePF9SqK58Ubp8o2"
  },
  {
    "value": "0",
    "currency": "JOE",
    "counterparty": "rE6R3DWF9fBD7CyiQciePF9SqK58Ubp8o2"
  },
  {
    "value": "0",
    "currency": "015841551A748AD2C1F76FF6ECB0CCCD00000000",
    "counterparty": "rs9M85karFkCRjvc6KMWn8Coigm9cbcgcx"
  },
  {
    "value": "0",
    "currency": "USD",
    "counterparty": "rEhDDUUNxpXgEHVJtC2cjXAgyx5VCFxdMF"
  }
]

getBalanceSheet

getBalanceSheet(address: string, options: Object): Promise

按货币返回总余额加上指定帐户的资产和义务明细。

参数

名称 类型 描述
地址 地址 账户的Ripple地址以获取资产负债表。
选项 目的 可选的选项来确定如何计算余额。
选项。excludeAddresses 阵列\ < 地址 > 从余额总数中排除的可选地址。
选项。ledgerVersion 整数 可选从此历史分类帐版本获取资产负债表。

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

名称 类型 描述
资产 array \ 可选由他人发行的总金额。对于推荐的网关配置,应该没有。
结余 array \ 从请求中发放给hotwallet账户的可选金额。密钥是热钱包地址,值是他们持有的货币数量的数组。发行人(从货币金额中省略)是请求中的账户。
义务 排列 可选对非热钱的账户发行的总金额,作为货币对发行总值的映射。
义务[] 目的 欠款。
义务[]。货币 货币 用于表示货币的三字符代码或十六进制字符串
义务[]。 非负浮点数的字符串表示形式

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
return api.getBalanceSheet(address).then(balanceSheet =>
  {/* ... */});
{
  "balances": [
    {
    "counterparty": "rKm4uWpg9tfwbVSeATv4KxDe6mpE9yPkgJ",
    "currency": "EUR",
    "value": "29826.1965999999"
  },
  {
    "counterparty": "rKm4uWpg9tfwbVSeATv4KxDe6mpE9yPkgJ",
    "currency": "USD",
    "value": "10.0"
  },
  {
    "counterparty": "ra7JkEzrgeKHdzKgo4EUUVBnxggY4z37kt",
    "currency": "USD",
    "value": "13857.70416"
  }
  ],
  "assets": [
    {
    "counterparty": "r9F6wk8HkXrgYWoJ7fsv4VrUBVoqDVtzkH",
    "currency": "BTC",
    "value": "5444166510000000e-26"
  },
  {
    "counterparty": "r9F6wk8HkXrgYWoJ7fsv4VrUBVoqDVtzkH",
    "currency": "USD",
    "value": "100.0"
  },
  {
    "counterparty": "rwmUaXsWtXU4Z843xSYwgt1is97bgY8yj6",
    "currency": "BTC",
    "value": "8700000000000000e-30"
  }
  ],
  "obligations": [
    {
      "currency": "BTC",
      "value": "5908.324927635318"
    },
    {
      "currency": "EUR",
      "value": "992471.7419793958"
    },
    {
      "currency": "GBP",
      "value": "4991.38706013193"
    },
    {
      "currency": "USD",
      "value": "1997134.20229482"
    }
  ]
}

的getPaths

getPaths(pathfind: Object): Promise>

查找发送付款的路径。路径是如何路由付款的选项。

参数

名称 类型 描述
pathfind 目的 指定路径查找请求。
pathfind。资源 目的 资金来源的属性。
pathfind.source。地址 地址 资金来源帐户的波纹地址。
pathfind.source。 laxAmount 可选的资金发送量。
pathfind.source。货币 排列 可选支付路径中可能使用的货币数组(可选对方)。
pathfind.source。货币[] 目的 可选交易对手的货币。
pathfind.source.currencies []。货币 货币 用于表示货币的三字符代码或十六进制字符串
pathfind.source.currencies []。对手 地址 可选货币的交易对手; 如果省略,可以使用任何对手方。
pathfind。目的地 目的 资金目的地的属性。
pathfind.destination。地址 地址 要发送到的地址。
pathfind.destination。 laxLaxAmount 接收方收到的金额(value如果指定了来源金额,可以省略)。

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象数组来解析:

名称 类型 描述
资源 目的 付款来源的属性。
资源。地址 地址 要发送的地址。
资源。 laxAmount An exact amount to send. If the counterparty is not specified, amounts with any counterparty may be used. (This field is exclusive with source.maxAmount)
source. tag integer Optional An arbitrary unsigned 32-bit integer that identifies a reason for payment or a non-Ripple account.
source.maxAmount laxAmount The maximum amount to send. (This field is exclusive with source.amount)
destination object Properties of the destination of the payment.
destination.address address The address to receive at.
destination.amount laxAmount An exact amount to deliver to the recipient. If the counterparty is not specified, amounts with any counterparty may be used. (This field is exclusive with destination.minAmount).
destination.tag integer Optional An arbitrary unsigned 32-bit integer that identifies a reason for payment or a non-Ripple account.
destination.address address The address to send to.
destination.minAmount laxAmount The minimum amount to be delivered. (This field is exclusive with destination.amount)
paths string The paths of trustlines and orders to use in executing the payment.

Example

const pathfind = {
  "source": {
    "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59"
  },
  "destination": {
    "address": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
    "amount": {
      "currency": "USD",
      "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
      "value": "100"
    }
  }
};
return api.getPaths(pathfind)
  .then(paths => {/* ... */});
[
  {
    "source": {
      "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "maxAmount": {
        "currency": "JPY",
        "value": "0.1117218827811721"
      }
    },
    "destination": {
      "address": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
      "amount": {
        "currency": "USD",
        "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
        "value": "100"
      }
    },
    "paths": "[[{\"account\":\"rMAz5ZnK73nyNUL4foAvaxdreczCkG3vA6\"},{\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"account\":\"rMAz5ZnK73nyNUL4foAvaxdreczCkG3vA6\"},{\"currency\":\"XRP\"},{\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"account\":\"rMAz5ZnK73nyNUL4foAvaxdreczCkG3vA6\"},{\"currency\":\"XRP\"},{\"currency\":\"USD\",\"issuer\":\"rpHgehzdpfWRXKvSv6duKvVuo1aZVimdaT\"},{\"account\":\"rpHgehzdpfWRXKvSv6duKvVuo1aZVimdaT\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"account\":\"rMAz5ZnK73nyNUL4foAvaxdreczCkG3vA6\"},{\"currency\":\"XRP\"},{\"currency\":\"USD\",\"issuer\":\"rHHa9t2kLQyXRbdLkSzEgkzwf9unmFgZs9\"},{\"account\":\"rHHa9t2kLQyXRbdLkSzEgkzwf9unmFgZs9\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}]]"
  },
  {
    "source": {
      "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "maxAmount": {
        "currency": "USD",
        "value": "0.001002"
      }
    },
    "destination": {
      "address": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
      "amount": {
        "currency": "USD",
        "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
        "value": "100"
      }
    },
    "paths": "[[{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"account\":\"rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q\"},{\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"account\":\"rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q\"},{\"currency\":\"XRP\"},{\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"account\":\"rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q\"},{\"currency\":\"XRP\"},{\"currency\":\"USD\",\"issuer\":\"rpHgehzdpfWRXKvSv6duKvVuo1aZVimdaT\"},{\"account\":\"rpHgehzdpfWRXKvSv6duKvVuo1aZVimdaT\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}]]"
  },
  {
    "source": {
      "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "maxAmount": {
        "currency": "XRP",
        "value": "0.207669"
      }
    },
    "destination": {
      "address": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
      "amount": {
        "currency": "USD",
        "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
        "value": "100"
      }
    },
    "paths": "[[{\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"currency\":\"USD\",\"issuer\":\"rsP3mgGb2tcYUrxiLFiHJiQXhsziegtwBc\"},{\"account\":\"rsP3mgGb2tcYUrxiLFiHJiQXhsziegtwBc\"},{\"account\":\"rf9X8QoYnWLHMHuDfjkmRcD2UE5qX5aYV\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"currency\":\"USD\",\"issuer\":\"rDVdJ62foD1sn7ZpxtXyptdkBSyhsQGviT\"},{\"account\":\"rDVdJ62foD1sn7ZpxtXyptdkBSyhsQGviT\"},{\"account\":\"rfQPFZ3eLcaSUKjUy7A3LAmDNM4F9Hz9j1\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}],[{\"currency\":\"USD\",\"issuer\":\"rpHgehzdpfWRXKvSv6duKvVuo1aZVimdaT\"},{\"account\":\"rpHgehzdpfWRXKvSv6duKvVuo1aZVimdaT\"},{\"account\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"}]]"
  }
]

getOrders

getOrders(address: string, options: Object): Promise>

Returns open orders for the specified account. Open orders are orders that have not yet been fully executed and are still in the order book.

Parameters

Name Type Description
address address The Ripple address of the account to get open orders for.
options object Optional Options that determine what orders will be returned.
options. ledgerVersion integer Optional Return orders as of this historical ledger version.
options. limit integer Optional At most this many orders will be returned.

Return Value

This method returns a promise that resolves with an array of objects with the following structure:

Name Type Description
specification order An order specification that would create an order equivalent to the current state of this order.
properties object Properties of the order not in the specification.
properties. maker address The address of the account that submitted the order.
properties. sequence sequence The account sequence number of the transaction that created this order.
properties.makerExchangeRate value The exchange rate from the point of view of the account that submitted the order (also known as "quality").

Example

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
return api.getOrders(address).then(orders =>
  {/* ... */});
[
  {
    "specification": {
      "direction": "sell",
      "quantity": {
        "currency": "EUR",
        "value": "17.70155237781915",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "1122.990930900328",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 719930,
      "makerExchangeRate": "63.44025128030504"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "EUR",
        "value": "750",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "19.11697137482289",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 756999,
      "makerExchangeRate": "39.23215583132338"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "19.50899530491766",
        "counterparty": "rpDMez6pm6dBve2TJsmDpv7Yae6V5Pyvy2"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "18.46856867857617",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 757002,
      "makerExchangeRate": "1.056334989703257"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "1445.796633544794",
        "counterparty": "rpDMez6pm6dBve2TJsmDpv7Yae6V5Pyvy2"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "14.40727807030772",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 757003,
      "makerExchangeRate": "100.3518240218094"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "750",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      },
      "totalPrice": {
        "currency": "NZD",
        "value": "9.178557969538755",
        "counterparty": "rsP3mgGb2tcYUrxiLFiHJiQXhsziegtwBc"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 782148,
      "makerExchangeRate": "81.7121820757743"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "500",
        "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "9.94768291869523",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 787368,
      "makerExchangeRate": "50.26296114247091"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "10000",
        "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "9.994805759894176",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 787408,
      "makerExchangeRate": "1000.519693952099"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "MXN",
        "value": "15834.53653918684",
        "counterparty": "rG6FZ31hDHN1K5Dkbma3PSB5uVCuVVRzfn"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "11.67691646304319",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 803438,
      "makerExchangeRate": "1356.054621894598"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "3968.240250979598",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      },
      "totalPrice": {
        "currency": "XAU",
        "value": "0.03206299605333101",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 807858,
      "makerExchangeRate": "123763.8630020459"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "4139.022125516302",
        "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
      },
      "totalPrice": {
        "currency": "XAU",
        "value": "0.03347459066593226",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 807896,
      "makerExchangeRate": "123646.6837435794"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "XRP",
        "value": "115760.19"
      },
      "totalPrice": {
        "currency": "NZD",
        "value": "6.840555705",
        "counterparty": "rsP3mgGb2tcYUrxiLFiHJiQXhsziegtwBc"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 814018,
      "makerExchangeRate": "16922.62953364839"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "902.4050961259154",
        "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
      },
      "totalPrice": {
        "currency": "EUR",
        "value": "14.40843766044656",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 827522,
      "makerExchangeRate": "62.63032241192674"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "181.4887131319798",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      },
      "totalPrice": {
        "currency": "XAG",
        "value": "1.128432823485989",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 833591,
      "makerExchangeRate": "160.8325363767064"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "1814.887131319799",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      },
      "totalPrice": {
        "currency": "XAG",
        "value": "1.128432823485991",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 833592,
      "makerExchangeRate": "1608.325363767062"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "USD",
        "value": "118.6872603846736",
        "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
      },
      "totalPrice": {
        "currency": "XAG",
        "value": "0.7283371225235964",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 838954,
      "makerExchangeRate": "162.9564891233845"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "XAU",
        "value": "1",
        "counterparty": "r9Dr5xwkeLegBeXq6ujinjSBLQzQ1zQGjH"
      },
      "totalPrice": {
        "currency": "XRP",
        "value": "2229.229447"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 843730,
      "makerExchangeRate": "0.0004485854972648762"
    }
  },
  {
    "specification": {
      "direction": "buy",
      "quantity": {
        "currency": "EUR",
        "value": "750",
        "counterparty": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q"
      },
      "totalPrice": {
        "currency": "USD",
        "value": "17.77537376072202",
        "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
      }
    },
    "properties": {
      "maker": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
      "sequence": 844068,
      "makerExchangeRate": "42.19320561670911"
    }
  }
]

getOrderbook

getOrderbook(address: string, orderbook: Object, options: Object): Promise

Returns open orders for the specified account. Open orders are orders that have not yet been fully executed and are still in the order book.

Parameters

Name Type Description
address address Address of an account to use as point-of-view. (This affects which unfunded offers are returned.)
orderbook object The order book to get.
orderbook. base object A currency-counterparty pair, or just currency if it's XRP
orderbook.counter object A currency-counterparty pair, or just currency if it's XRP
options object Optional Options to determine what to return.
options.ledgerVersion integer Optional Return the order book as of this historical ledger version.
options. limit integer Optional Return at most this many orders from the order book.

Return Value

This method returns a promise that resolves with an object with the following structure (Note: the structures of bids and asks are identical):

Name Type Description
bids array The buy orders in the order book.
bids[] object An order in the order book.
bids[]. specification order An order specification that would create an order equivalent to the current state of this order.
bids[]. properties object Properties of the order not in the specification.
bids[].properties. maker address The address of the account that submitted the order.
bids[].properties.sequence sequence The account sequence number of the transaction that created this order.
bids[].properties.makerExchangeRate value The exchange rate from the point of view of the account that submitted the order (also known as "quality").
bids[]. state object Optional The state of the order.
bids[].state.fundedAmount amount How much of the amount the maker would have to pay that the maker currently holds.
bids[].state.priceOfFundedAmount amount How much the fundedAmount would convert to through the exchange rate of this order.
asks array The sell orders in the order book.
asks[] object An order in the order book.
asks[]. specification order An order specification that would create an order equivalent to the current state of this order.
asks[]. properties object Properties of the order not in the specification.
asks[].properties. maker address The address of the account that submitted the order.
asks[].properties.sequence sequence The account sequence number of the transaction that created this order.
asks[].properties.makerExchangeRate value The exchange rate from the point of view of the account that submitted the order (also known as "quality").
asks[]. state object Optional The state of the order.
asks[].state.fundedAmount amount How much of the amount the maker would have to pay that the maker currently holds.
asks[].state.priceOfFundedAmount amount How much the fundedAmount would convert to through the exchange rate of this order.

Example

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const orderbook = {
  "base": {
    "currency": "USD",
    "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
  },
  "counter": {
    "currency": "BTC",
    "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
  }
};
return api.getOrderbook(address, orderbook)
  .then(orderbook => {/* ... */});
{
  "bids": [
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "93.030522464522",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.2849323720855092",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rwBYyfufTzk77zUSKEu4MvixfarC35av1J",
        "sequence": 386940,
        "makerExchangeRate": "326.5003614141928"
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "1",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.00302447007930511",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rwjsRktX1eguUr1pHTffyHnC4uyrvX58V1",
        "sequence": 207855,
        "makerExchangeRate": "330.6364334177034"
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "99.34014894048333",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.3",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "expirationTime": "2014-12-25T01:14:43.000Z"
      },
      "properties": {
        "maker": "raudnGKfTK23YKfnS7ixejHrqGERTYNFXk",
        "sequence": 110103,
        "makerExchangeRate": "331.1338298016111"
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "268.754",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.8095",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rPyYxUGK8L4dgEvjPs3aRc1B1jEiLr3Hx5",
        "sequence": 392,
        "makerExchangeRate": "332"
      },
      "state": {
        "fundedAmount": {
          "currency": "BTC",
          "value": "0.8078974385735969",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "priceOfFundedAmount": {
          "currency": "USD",
          "value": "268.2219496064341",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "152.0098333185607",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.4499999999999999",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "expirationTime": "2014-12-25T01:14:44.000Z"
      },
      "properties": {
        "maker": "raudnGKfTK23YKfnS7ixejHrqGERTYNFXk",
        "sequence": 110105,
        "makerExchangeRate": "337.7996295968016"
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "1.308365894430151",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.003768001830745216",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rDbsCJr5m8gHDCNEHCZtFxcXHsD4S9jH83",
        "sequence": 110061,
        "makerExchangeRate": "347.2306949944844"
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "176.3546101589987",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.5",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "expirationTime": "2014-12-25T00:41:38.000Z"
      },
      "properties": {
        "maker": "rDVBvAQScXrGRGnzrxRrcJPeNLeLeUTAqE",
        "sequence": 35788,
        "makerExchangeRate": "352.7092203179974"
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "179.48",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.5",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rN6jbxx4H6NxcnmkzBxQnbCWLECNKrgSSf",
        "sequence": 491,
        "makerExchangeRate": "358.96"
      },
      "state": {
        "fundedAmount": {
          "currency": "BTC",
          "value": "0.499001996007984",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "priceOfFundedAmount": {
          "currency": "USD",
          "value": "179.1217564870259",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "288.7710263794967",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.8",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "expirationTime": "2014-12-25T00:41:39.000Z"
      },
      "properties": {
        "maker": "rDVBvAQScXrGRGnzrxRrcJPeNLeLeUTAqE",
        "sequence": 35789,
        "makerExchangeRate": "360.9637829743709"
      }
    },
    {
      "specification": {
        "direction": "buy",
        "quantity": {
          "currency": "USD",
          "value": "182.9814890090516",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.5",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rUeCeioKJkbYhv4mRGuAbZpPcqkMCoYq6N",
        "sequence": 5255,
        "makerExchangeRate": "365.9629780181032"
      },
      "state": {
        "fundedAmount": {
          "currency": "BTC",
          "value": "0.2254411038203033",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "priceOfFundedAmount": {
          "currency": "USD",
          "value": "82.50309772176658",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      }
    }
  ],
  "asks": [
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "3205.1",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "10",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "r49y2xKuKVG2dPkNHgWQAV61cjxk8gryjQ",
        "sequence": 434,
        "makerExchangeRate": "0.003120027456241615"
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "1599.063669386278",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "4.99707396683212",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rDYCRhpahKEhCFV25xScg67Bwf4W9sTYAm",
        "sequence": 233,
        "makerExchangeRate": "0.003125"
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "143.1050962074379",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.4499999999999999",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "expirationTime": "2014-12-25T01:14:44.000Z"
      },
      "properties": {
        "maker": "raudnGKfTK23YKfnS7ixejHrqGERTYNFXk",
        "sequence": 110104,
        "makerExchangeRate": "0.003144542101755081"
      },
      "state": {
        "fundedAmount": {
          "currency": "USD",
          "value": "0",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "priceOfFundedAmount": {
          "currency": "BTC",
          "value": "0",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "254.329207354604",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.8",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "expirationTime": "2014-12-24T21:44:11.000Z"
      },
      "properties": {
        "maker": "rDVBvAQScXrGRGnzrxRrcJPeNLeLeUTAqE",
        "sequence": 35625,
        "makerExchangeRate": "0.003145529403882357"
      },
      "state": {
        "fundedAmount": {
          "currency": "USD",
          "value": "0",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "priceOfFundedAmount": {
          "currency": "BTC",
          "value": "0",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "390.4979",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "1.23231134568807",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rwBYyfufTzk77zUSKEu4MvixfarC35av1J",
        "sequence": 387756,
        "makerExchangeRate": "0.003155743848271834"
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "1",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.003160328237957649",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rwjsRktX1eguUr1pHTffyHnC4uyrvX58V1",
        "sequence": 208927,
        "makerExchangeRate": "0.003160328237957649"
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "4725",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "15",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "r49y2xKuKVG2dPkNHgWQAV61cjxk8gryjQ",
        "sequence": 429,
        "makerExchangeRate": "0.003174603174603175"
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "1.24252537879871",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "0.003967400879423823",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "rDbsCJr5m8gHDCNEHCZtFxcXHsD4S9jH83",
        "sequence": 110099,
        "makerExchangeRate": "0.003193013959408667"
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "496.5429474010489",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "1.6",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "expirationTime": "2014-12-24T21:44:12.000Z"
      },
      "properties": {
        "maker": "rDVBvAQScXrGRGnzrxRrcJPeNLeLeUTAqE",
        "sequence": 35627,
        "makerExchangeRate": "0.003222279177208227"
      },
      "state": {
        "fundedAmount": {
          "currency": "USD",
          "value": "0",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "priceOfFundedAmount": {
          "currency": "BTC",
          "value": "0",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      }
    },
    {
      "specification": {
        "direction": "sell",
        "quantity": {
          "currency": "USD",
          "value": "3103",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        },
        "totalPrice": {
          "currency": "BTC",
          "value": "10",
          "counterparty": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
        }
      },
      "properties": {
        "maker": "r49y2xKuKVG2dPkNHgWQAV61cjxk8gryjQ",
        "sequence": 431,
        "makerExchangeRate": "0.003222687721559781"
      }
    }
  ]
}

getSettings

getSettings(address: string, options: Object): Promise

Returns settings for the specified account. Note: For account data that is not modifiable by the user, see getAccountInfo.

Parameters

Name Type Description
address address The address of the account to get the settings of.
options object Optional Options that affect what to return.
options. ledgerVersion integer Optional Get the settings as of this historical ledger version.

Return Value

This method returns a promise that resolves with an array of objects with the following structure (Note: all fields are optional as they will not be shown if they are set to their default value):

Name Type Description
defaultRipple boolean Optional Enable rippling on this account’s trust lines by default. (New in rippled 0.27.3)
depositAuth boolean Optional Enable Deposit Authorization on this account. If set, transactions cannot send value of any kind to this account unless the sender of those transactions is the account itself. (Requires the DepositAuth amendment)
disableMasterKey boolean Optional Disallows use of the master key to sign transactions for this account.
disallowIncomingXRP boolean Optional Indicates that client applications should not send XRP to this account. Not enforced by rippled.
domain string Optional The domain that owns this account, as a hexadecimal string representing the ASCII for the domain in lowercase.
emailHash string,null 用于生成化身图像的电子邮件地址的可选哈希。通常,客户使用Gravatar来显示该图像。使用null清除。
enableTransactionIDTracking 布尔 可选跟踪此帐户最近一次交易的ID。
globalFreeze 布尔 可选冻结由此帐户发布的所有资产。
备忘录 备忘录 可选的备忘录数组附加到事务。
messageKey 可选公钥,用于将加密邮件发送到此帐户。通常,它应该是一个secp256k1密钥,与Ripple其余部分使用的加密相同。
noFreeze 布尔 可选永久放弃冻结个人信任额度的能力。启用后,此标志永远不会被禁用。
passwordSpent 布尔 可选指示帐户已使用其免费的SetRegularKey事务。
regularKey 地址,null 可选新密钥对的公钥,用作此帐户的常规密钥,作为与帐户地址相同格式的基本58编码字符串。使用null去除正规钥匙。
requireAuthorization 布尔 可选如果设置,此帐户必须单独批准其他用户,以便这些用户持有此帐户的发行。
requireDestinationTag 布尔 可选需要传入付款才能指定目的地代码。
签名者 目的 可选设置,用于确定可使用多个帐户代表该帐户使用哪些帐户组签署交易。
签名者。 整数 可选目标号码的签名者权重。只有提供的签名的总和权重等于或大于此值时,此列表中的多重签名才有效。要删除签名者设置,请使用该值0
签名者。权重 排列 每个签名者的可选签名权重。
签名者。权重[] 目的 地址和体重的关联。
signers.weights []。地址 地址 一个Ripple帐户地址
signers.weights []。重量 整数 这个账户的签名算作门槛权重。
TRANSFERRATE 数,空 可选 用户转移此账户的发行时收取的费用,作为发送1个单位必须发送的十进制金额。精确度最高可达9位数,超过小数点。使用null设置不收取任何费用。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
return api.getSettings(address).then(settings =>
  {/* ... */});
{
  "requireDestinationTag": true,
  "disallowIncomingXRP": true,
  "emailHash": "23463B99B62A72F26ED677CC556C44E8",
  "domain": "example.com",
  "transferRate": 1.002,
  "signers": {
    "threshold": 3,
    "weights": [
      {
        "address": "rpHit3GvUR1VSGh2PXcaaZKEEUnCVxWU2i",
        "weight": 1
      }, {
        "address": "rN4oCm1c6BQz6nru83H52FBSpNbC9VQcRc",
        "weight": 1
      }, {
        "address": "rJ8KhCi67VgbapiKCQN3r1ZA6BMUxUvvnD",
        "weight": 1
      }
    ]
  }
}

getAccountInfo

getAccountInfo(address: string, options: Object): Promise

返回指定帐户的信息。注意:对于用户可修改的帐户数据,请参阅getSettings。

参数

名称 类型 描述
地址 地址 该帐户的地址以获取帐户信息。
选项 目的 影响返回内容的可选选项。
选项。ledgerVersion 整数 可选获取此历史分类帐版本的帐户信息。

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

名称 类型 描述
序列 序列 此帐户的下一个(最小未使用的)序列号。
xrpBalance 账户拥有的XRP余额。
ownerCount 整数 归因于此帐户的其他分类帐条目(特别是信任线和优惠)的数量。这用于计算使用该帐户所需的总储备金。
previousAffectingTransactionID 表示直接影响此帐户节点的最近事务的哈希值。注意:这不包括对帐户信任热线和优惠的更改。
previousAffectingTransactionLedgerVersion integer The ledger version that the transaction identified by the previousAffectingTransactionID was validated in.
previousInitiatedTransactionID string Optional Hash value representing the most recent transaction that was initiated by this account.

Example

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
return api.getAccountInfo(address).then(info =>
  {/* ... */});
{
  "sequence": 23,
  "xrpBalance": "922.913243",
  "ownerCount": 1,
  "previousAffectingTransactionID": "19899273706A9E040FDB5885EE991A1DC2BAD878A0D6E7DBCFB714E63BF737F7",
  "previousAffectingTransactionLedgerVersion": 6614625
}

getPaymentChannel

getPaymentChannel(id: string): Promise

Returns specified payment channel.

Parameters

Name Type Description
id string 256-bit hexadecimal channel identifier.

Return Value

This method returns a promise that resolves with an object with the following structure:

Name Type Description
account address Address that created the payment channel.
destination address Address to receive XRP claims against this channel.
amount value The total amount of XRP funded in this channel.
balance value The total amount of XRP delivered by this channel.
settleDelay number Amount of seconds the source address must wait before closing the channel if it has unclaimed XRP.
previousAffectingTransactionID 表示影响此付款渠道的最近交易的哈希值。
previousAffectingTransactionLedgerVersion 整数 该交易确定的交易的分类账版本previousAffectingTransactionID已经过验证。
cancelAfter 日期时间字符串 可选此通道在创建时指定的时间。
destinationTag 整数 可选的目标标记。
呼气 日期时间字符串 此频道到期的可选时间。
公钥 可选的密钥对公钥,该公钥将用于对此通道的版权声明进行签名。
sourceTag 整数 可选的源标签。

const channelId =
  'E30E709CF009A1F26E0E5C48F7AA1BFB79393764F15FB108BDC6E06D3CBD8415';
return api.getPaymentChannel(channelId).then(channel =>
  {/* ... */});
{
  "account": "r6ZtfQFWbCkp4XqaUygzHaXsQXBT67xLj",
  "amount": "10",
  "balance": "0",
  "destination": "rQf9vCwQtzQQwtnGvr6zc1fqzqg7QBuj7G",
  "publicKey": "02A05282CB6197E34490BACCD9405E81D9DFBE123B0969F9F40EC3F9987AD9A97D",
  "settleDelay": 10000,
  "previousAffectingTransactionID": "F939A0BEF139465403C56CCDC49F59A77C868C78C5AEC184E29D15E9CD1FF675",
  "previousAffectingTransactionLedgerVersion": 151322
}

getLedger

getLedger(options: Object): Promise

返回指定分类帐的标题信息(如果未指定分类帐,则返回最新验证分类帐)。(可选)所有在分类帐中验证的交易或帐户状态信息都可以与分类帐标题一起返回。

参数

名称 类型 描述
选项 目的 可选选项影响什么分类帐和返回多少数据。
选项。includeAllData 布尔 可选包括完整的交易和/或状态信息,如果includeTransactions和/或被includeState设置。
选项。includeState 布尔 可选根据是否includeAllData设置,为所有状态数据或此分类帐版本中的所有状态数据返回一个散列数组。
选项。includeTransactions 布尔 可选为每个事务返回一个散列数组,或者根据是否includeAllData设置,在此分类帐版本中验证的所有事务的数组。
选项。ledgerVersion 整数 可选获取此历史分类帐版本的分类帐数据。

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

名称 类型 描述
stateHash 在此分类帐中散列所有状态信息。
closeTime 日期时间字符串 该分类帐的关闭时间。
closeTimeResolution 整数 关闭一个分类帐版本和关闭下一个版本之间的大概秒数。
closeFlags 整数 与分类帐的关闭相关的标志位图。目前,该系统中有只有一个定义的标志closeFlags:sLCF_NoConsensusTime(值1)。如果启用此标志,则表示验证人在分类帐的正确关闭时间方面存在冲突,但是以其他方式构建了相同的分类帐,因此他们在关闭时间“同意不同意”时宣布达成共识。在这种情况下,共识分类帐包含的closeTime值比上一分类帐的值多1秒。(在这种情况下,没有正式关闭时间,但实际的实际关闭时间可能比指定晚3到6秒closeTime)。
ledgerHash 唯一标识整个分类帐的散列。
ledgerVersion 整数 该分类帐的分类帐版本。
parentLedgerHash 唯一标识在此之前出现的分类帐的散列。
parentCloseTime 日期时间字符串 前一个分类帐被关闭的时间。
totalDrops 网络中的丢弃总数(XRP的1 / 1,000,000),作为引用的整数。(这会随着交易费用的降低而导致XRP被破坏)。
transactionHash 包含在此分类帐中的交易信息散列。
rawState 可选包含波纹JSON格式的此分类帐的所有状态数据的JSON字符串。
rawTransactions 可选一个JSON字符串,包含在此分类账中验证的所有交易的波及格式事务JSON。
stateHashes 阵列\ <字符串> 可选本分类帐中所有状态数据的散列数组。
transactionHashes array \ < id > 可选在此分类帐中验证的所有事务的散列数组。
交易 array \ 在此分类账中经过验证的所有交易的可选数组。事务以与getTransaction的返回值相同的格式表示。

return api.getLedger()
  .then(ledger => {/* ... */});
{
  "stateHash": "EC028EC32896D537ECCA18D18BEBE6AE99709FEFF9EF72DBD3A7819E918D8B96",
  "closeTime": "2014-09-24T21:21:50.000Z",
  "closeTimeResolution": 10,
  "closeFlags": 0,
  "ledgerHash": "0F7ED9F40742D8A513AE86029462B7A6768325583DF8EE21B7EC663019DD6A0F",
  "ledgerVersion": 9038214,
  "parentLedgerHash": "4BB9CBE44C39DC67A1BE849C7467FE1A6D1F73949EA163C38A0121A15E04FFDE",
  "parentCloseTime": "2014-09-24T21:21:40.000Z",
  "totalDrops": "99999973964317514",
  "transactionHash": "ECB730839EB55B1B114D5D1AD2CD9A932C35BA9AB6D3A8C2F08935EAC2BAC239"
}

preparePayment

preparePayment(address: string, payment: Object, instructions: Object): Promise

准备付款交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
付款 付款 准备付款的规格。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const payment = {
  "source": {
    "address": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
    "maxAmount": {
      "value": "0.01",
      "currency": "USD",
      "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM"
    }
  },
  "destination": {
    "address": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
    "amount": {
      "value": "0.01",
      "currency": "USD",
      "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM"
    }
  }
};
return api.preparePayment(address, payment).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"Payment\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Destination\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"Amount\":{\"value\":\"0.01\",\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},\"SendMax\":{\"value\":\"0.01\",\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

prepareTrustline

prepareTrustline(address: string, trustline: Object, instructions: Object): Promise

准备一个信任线交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
trustline trustline 准备的可靠线的规格。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const trustline = {
  "currency": "USD",
  "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
  "limit": "10000",
  "qualityIn": 0.91,
  "qualityOut": 0.87,
  "ripplingDisabled": true,
  "frozen": false,
  "memos": [
    {
      "type": "test",
      "format": "plain/text",
      "data": "texted data"
    }
  ]
};
return api.prepareTrustline(address, trustline).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"TransactionType\":\"TrustSet\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"LimitAmount\":{\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\",\"value\":\"10000\"},\"Flags\":2149711872,\"QualityIn\":910000000,\"QualityOut\":870000000,\"Memos\":[{\"Memo\":{\"MemoData\":\"7465787465642064617461\",\"MemoType\":\"74657374\",\"MemoFormat\":\"706C61696E2F74657874\"}}],\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

prepareOrder

prepareOrder(address: string, order: Object, instructions: Object): Promise

准备订单交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
订购 订购 准备订单的规格。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const order = {
  "direction": "buy",
  "quantity": {
    "currency": "USD",
    "counterparty": "rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM",
    "value": "10.1"
  },
  "totalPrice": {
    "currency": "XRP",
    "value": "2"
  },
  "passive": true,
  "fillOrKill": true
};
return api.prepareOrder(address, order)
  .then(prepared => {/* ... */});
{
  "txJSON": "{\"Flags\":2147811328,\"TransactionType\":\"OfferCreate\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TakerGets\":\"2000000\",\"TakerPays\":{\"value\":\"10.1\",\"currency\":\"USD\",\"issuer\":\"rMH4UxPrbuMa1spCBR98hLLyNJp4d8p4tM\"},\"LastLedgerSequence\":8819954,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8819954
  }
}

prepareOrderCancellation

prepareOrderCancellation(address: string, orderCancellation: Object, instructions: Object): Promise

准备订单取消交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
orderCancellation orderCancellation 准备取消订单的规格。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const orderCancellation = {orderSequence: 123};
return api.prepareOrderCancellation(address, orderCancellation)
  .then(prepared => {/* ... */});
{
  "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"OfferCancel\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"OfferSequence\":23,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

prepareSettings

prepareSettings(address: string, settings: Object, instructions: Object): Promise

准备设置交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
设置 设置 准备的设置的规格。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const settings = {
  "domain": "ripple.com",
  "memos": [
    {
      "type": "test",
      "format": "plain/text",
      "data": "texted data"
    }
  ]
};
return api.prepareSettings(address, settings)
  .then(prepared => {/* ... */});
{
  "domain": "ripple.com",
  "memos": [
    {
      "type": "test",
      "format": "plain/text",
      "data": "texted data"
    }
  ]
}

prepareEscrowCreation

prepareEscrowCreation(address: string, escrowCreation: Object, instructions: Object): Promise

准备托管创建交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
escrowCreation escrowCreation 要准备的托管创建的规范。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const escrowCreation = {
  "destination": "rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo",
  "amount": "0.01",
  "allowExecuteAfter": "2014-09-24T21:21:50.000Z",
  "allowCancelAfter":  "2017-01-01T00:00:00.000Z"
};
return api.prepareEscrowCreation(address, escrowCreation).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"EscrowCreate\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Destination\":\"rpZc4mVfWUif9CRoHRKKcmhu1nx2xktxBo\",\"Amount\":\"10000\",\"CancelAfter\":536544000,\"FinishAfter\":464908910,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

prepareEscrowCancellation

prepareEscrowCancellation(address: string, escrowCancellation: Object, instructions: Object): Promise

准备托管取消交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
escrowCancellation escrowCancellation 准备取消托管的规范。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const escrowCancellation = {
  "owner": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
  "escrowSequence": 1234
};
return api.prepareEscrowCancellation(address, escrowCancellation).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"EscrowCancel\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Owner\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"OfferSequence\":1234,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

prepareEscrowExecution

prepareEscrowExecution(address: string, escrowExecution: Object, instructions: Object): Promise

准备托管执行交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
escrowExecution escrowExecution 要准备的托管执行的规范。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON The prepared transaction in rippled JSON format.
instructions object The instructions for how to execute the transaction after adding automatic defaults.
instructions. fee value An exact fee to pay for the transaction. See Transaction Fees for more information.
instructions.sequence sequence The initiating account's sequence number for this transaction.
instructions.maxLedgerVersion integer,null The highest ledger version that the transaction can be included in. Set to null if there is no maximum.

Example

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const escrowExecution = {
  "owner": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
  "escrowSequence": 1234,
  "condition": "A0258020E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855810100",
  "fulfillment": "A0028000"
};
return api.prepareEscrowExecution(address, escrowExecution).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Flags\":2147483648,\"TransactionType\":\"EscrowFinish\",\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"Owner\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"OfferSequence\":1234,\"Condition\":\"A0258020E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855810100\",\"Fulfillment\":\"A0028000\",\"LastLedgerSequence\":8820051,\"Fee\":\"396\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000396",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

preparePaymentChannelCreate

preparePaymentChannelCreate(address: string, paymentChannelCreate: Object, instructions: Object): Promise

Prepare a payment channel creation transaction. The prepared transaction must subsequently be signedand submitted.

Parameters

Name Type Description
address address The address of the account that is creating the transaction.
paymentChannelCreate paymentChannelCreate The specification of the payment channel to create.
instructions instructions Optional Instructions for executing the transaction

Return Value

This method returns a promise that resolves with an object with the following structure:

All "prepare*" methods have the same return type.

Name Type Description
txJSON string The prepared transaction in rippled JSON format.
instructions object The instructions for how to execute the transaction after adding automatic defaults.
instructions. fee value An exact fee to pay for the transaction. See Transaction Fees for more information.
instructions. sequence sequence The initiating account's sequence number for this transaction.
instructions.maxLedgerVersion integer,null 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const paymentChannelCreate = {
  "amount": "1",
  "destination": "rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW",
  "settleDelay": 86400,
  "publicKey": "32D2471DB72B27E3310F355BB33E339BF26F8392D5A93D3BC0FC3B566612DA0F0A"
};
return api.preparePaymentChannelCreate(address, paymentChannelCreate).then(prepared =>
  {/* ... */});
{
  "txJSON":"{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"PaymentChannelCreate\",\"Amount\":\"1000000\",\"Destination\":\"rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW\",\"SettleDelay\":86400,\"PublicKey\":\"32D2471DB72B27E3310F355BB33E339BF26F8392D5A93D3BC0FC3B566612DA0F0A\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

preparePaymentChannelClaim

preparePaymentChannelClaim(address: string, paymentChannelClaim: Object, instructions: Object): Promise

准备付款渠道索赔交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
paymentChannelClaim paymentChannelClaim 渠道和索赔的详情。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const paymentChannelClaim = {
  "channel": "C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198"
};
return api.preparePaymentChannelClaim(address, paymentChannelClaim).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"PaymentChannelClaim\",\"Channel\":\"C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

preparePaymentChannelFund

preparePaymentChannelFund(address: string, paymentChannelFund: Object, instructions: Object): Promise

准备付款渠道资金交易。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
paymentChannelFund paymentChannelFund 资金渠道,以及如何资助它的细节。
说明 说明 可选的执行交易的指示

返回值

This method returns a promise that resolves with an object with the following structure:

All "prepare*" methods have the same return type.

Name Type Description
txJSON string The prepared transaction in rippled JSON format.
instructions object The instructions for how to execute the transaction after adding automatic defaults.
instructions. fee value An exact fee to pay for the transaction. See Transaction Fees for more information.
instructions.sequence sequence The initiating account's sequence number for this transaction.
instructions.maxLedgerVersion integer,null The highest ledger version that the transaction can be included in. Set to null if there is no maximum.

Example

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const paymentChannelFund = {
  "channel": "C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198",
  "amount": "1"
};
return api.preparePaymentChannelFund(address, paymentChannelFund).then(prepared =>
  {/* ... */});
{
  "txJSON":"{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"PaymentChannelFund\",\"Channel\":\"C1AE6DDDEEC05CF2978C0BAD6FE302948E9533691DC749DCDD3B9E5992CA6198\",\"Amount\":\"1000000\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

prepareCheckCreate

prepareCheckCreate(address: string, checkCreate: Object, instructions: Object): Promise

准备检查创建事务。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
checkCreate checkCreate Check创建的规范以进行准备。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const checkCreate = {
  "destination": "rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW",
  "sendMax": {
    "currency": "XRP",
    "value": "1"
  }
};
return api.prepareCheckCreate(address, checkCreate).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"CheckCreate\",\"Destination\":\"rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW\",\"SendMax\":\"1000000\",\"Flags\":2147483648,\"LastLedgerSequence\":8820051,\"Sequence\":23,\"Fee\":\"12\"}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8820051
  }
}

prepareCheckCancel

prepareCheckCancel(address: string, checkCancel: Object, instructions: Object): Promise

准备检查取消交易。这将取消未兑换的支票,将其从分类账中移除而不发送任何款项。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
checkCancel checkCancel 检查取消的规格准备。
说明 说明 可选的执行交易的指示

返回值

This method returns a promise that resolves with an object with the following structure:

All "prepare*" methods have the same return type.

Name Type Description
txJSON string The prepared transaction in rippled JSON format.
instructions object The instructions for how to execute the transaction after adding automatic defaults.
instructions. fee value An exact fee to pay for the transaction. See Transaction Fees for more information.
instructions.sequence sequence The initiating account's sequence number for this transaction.
instructions.maxLedgerVersion integer,null The highest ledger version that the transaction can be included in. Set to null if there is no maximum.

Example

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const checkCancel = {
  "checkID": "49647F0D748DC3FE26BDACBC57F251AADEFFF391403EC9BF87C97F67E9977FB0"
};
return api.prepareCheckCancel(address, checkCancel).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"CheckCancel\",\"CheckID\":\"49647F0D748DC3FE26BDACBC57F251AADEFFF391403EC9BF87C97F67E9977FB0\",\"Flags\":2147483648,\"LastLedgerSequence\":8819954,\"Fee\":\"12\",\"Sequence\":23}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8819954
  }
}

prepareCheckCash

prepareCheckCash(address: string, checkCash: Object, instructions: Object): Promise

准备支票兑现交易。这兑换支票以收到相应的CheckCreate交易授权的金额。准备好的交易必须随后签署并提交。

参数

名称 类型 描述
地址 地址 创建交易的帐户的地址。
checkCash checkCash 支票现金的规格准备。
说明 说明 可选的执行交易的指示

返回值

此方法返回一个承诺,该承诺通过具有以下结构的对象进行解析:

所有的“准备*”方法都有相同的返回类型。

名称 类型 描述
txJSON 准备好的事务采用波纹JSON格式。
说明 目的 添加自动默认设置后如何执行交易的说明。
说明。费用 交易的确切费用。请参阅交易费用了解更多信息。
说明。序列 序列 此交易的初始帐户序列号。
说明。maxLedgerVersion 整数,空 交易可以包含的最高分类账版本。null如果没有最大值,则设置为。

const address = 'r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59';
const checkCash = {
  "amount": {
    "currency": "XRP",
    "value": "1"
  },
  "checkID": "838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334"
};
return api.prepareCheckCash(address, checkCash).then(prepared =>
  {/* ... */});
{
  "txJSON": "{\"Account\":\"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59\",\"TransactionType\":\"CheckCash\",\"CheckID\":\"838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334\",\"Amount\":\"1000000\",\"Flags\":2147483648,\"LastLedgerSequence\":8819954,\"Sequence\":23,\"Fee\":\"12\"}",
  "instructions": {
    "fee": "0.000012",
    "sequence": 23,
    "maxLedgerVersion": 8819954
  }
}

标志

sign(txJSON: string, secret: string, options: Object): {signedTransaction: string, id: string}

签署准备好的交易。签署的交易必须随后提交。

参数

名称 类型 描述
txJSON 事务以波纹格式表示为JSON字符串。
秘密 秘密字符串 启动交易的帐户的秘密。
选项 目的 可选选项,用于控制将生成的签名类型。
选项。signAs 地址 可选签名应在多重签名中计算的帐户。

返回值

此方法返回具有以下结构的对象:

名称 类型 描述
signedTransaction 签名的事务以大写十六进制字符串表示。
ID ID 签署的交易的交易ID。

const txJSON = '{"Flags":2147483648,"TransactionType":"AccountSet","Account":"r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59","Domain":"726970706C652E636F6D","LastLedgerSequence":8820051,"Fee":"12","Sequence":23}';
const secret = 'shsWGZcmZz6YsWWmcnpfr6fLTdtFV';
return api.sign(txJSON, secret);
{
  "signedTransaction": "12000322800000002400000017201B0086955368400000000000000C732102F89EAEC7667B30F33D0687BBA86C3FE2A08CCA40A9186C5BDE2DAA6FA97A37D874473045022100BDE09A1F6670403F341C21A77CF35BA47E45CDE974096E1AA5FC39811D8269E702203D60291B9A27F1DCABA9CF5DED307B4F23223E0B6F156991DB601DFB9C41CE1C770A726970706C652E636F6D81145E7B112523F68D2F5E879DB4EAC51C6698A69304",
  "id": "02ACE87F1996E3A23690A5BB7F1774BF71CCBA68F79805831B42ABAD5913D6F4"
}

结合

combine(signedTransactions: Array): {signedTransaction: string, id: string}

将来自多个帐户的已签名交易组合为多重签名交易。签署的交易必须随后提交。

参数

名称 类型 描述
signedTransactions 阵列\ <字符串> 一组已签名的事务(从符号输出)进行组合。

返回值

此方法返回具有以下结构的对象:

名称 类型 描述
signedTransaction 签名的事务以大写十六进制字符串表示。
ID ID 签署的交易的交易ID。

const signedTransactions = [ "12000322800000002400000004201B000000116840000000000F42407300770B6578616D706C652E636F6D811407C532442A675C881BA1235354D4AB9D023243A6F3E0107321026C784C1987F83BACBF02CD3E484AFC84ADE5CA6B36ED4DCA06D5BA233B9D382774473045022100E484F54FF909469FA2033E22EFF3DF8EDFE62217062680BB2F3EDF2F185074FE0220350DB29001C710F0450DAF466C5D819DC6D6A3340602DE9B6CB7DA8E17C90F798114FE9337B0574213FA5BCC0A319DBB4A7AC0CCA894E1F1",
  "12000322800000002400000004201B000000116840000000000F42407300770B6578616D706C652E636F6D811407C532442A675C881BA1235354D4AB9D023243A6F3E01073210287AAAB8FBE8C4C4A47F6F1228C6E5123A7ED844BFE88A9B22C2F7CC34279EEAA74473045022100B09DDF23144595B5A9523B20E605E138DC6549F5CA7B5984D7C32B0E3469DF6B022018845CA6C203D4B6288C87DDA439134C83E7ADF8358BD41A8A9141A9B631419F8114517D9B9609229E0CDFE2428B586738C5B2E84D45E1F1" ];
return api.combine(signedTransactions);
{
  "signedTransaction": "12000322800000002400000004201B000000116840000000000F42407300770B6578616D706C652E636F6D811407C532442A675C881BA1235354D4AB9D023243A6F3E01073210287AAAB8FBE8C4C4A47F6F1228C6E5123A7ED844BFE88A9B22C2F7CC34279EEAA74473045022100B09DDF23144595B5A9523B20E605E138DC6549F5CA7B5984D7C32B0E3469DF6B022018845CA6C203D4B6288C87DDA439134C83E7ADF8358BD41A8A9141A9B631419F8114517D9B9609229E0CDFE2428B586738C5B2E84D45E1E0107321026C784C1987F83BACBF02CD3E484AFC84ADE5CA6B36ED4DCA06D5BA233B9D382774473045022100E484F54FF909469FA2033E22EFF3DF8EDFE62217062680BB2F3EDF2F185074FE0220350DB29001C710F0450DAF466C5D819DC6D6A3340602DE9B6CB7DA8E17C90F798114FE9337B0574213FA5BCC0A319DBB4A7AC0CCA894E1F1",
  "id": "8A3BFD2214B4C8271ED62648FCE9ADE4EE82EF01827CF7D1F7ED497549A368CC"
}

提交

submit(signedTransaction: string): Promise

提交已签名的交易。交易不保证成功; 必须使用getTransaction进行验证。

参数

名称 类型 描述
signedTransaction 由符号返回的已签名事务。

返回值

此方法返回具有以下结构的对象:

名称 类型 描述
发送resultCode 由波纹返回的结果代码。交易回应列表
resultMessage 人类可读的交易状态解释。

const signedTransaction = '12000322800000002400000017201B0086955368400000000000000C732102F89EAEC7667B30F33D0687BBA86C3FE2A08CCA40A9186C5BDE2DAA6FA97A37D874473045022100BDE09A1F6670403F341C21A77CF35BA47E45CDE974096E1AA5FC39811D8269E702203D60291B9A27F1DCABA9CF5DED307B4F23223E0B6F156991DB601DFB9C41CE1C770A726970706C652E636F6D81145E7B112523F68D2F5E879DB4EAC51C6698A69304';
return api.submit(signedTransaction)
  .then(result => {/* ... */});
{
  "resultCode": "tesSUCCESS",
  "resultMessage": "The transaction was applied. Only final in a validated ledger."
}

generateAddress

generateAddress(): {address: string, secret: string}

生成新的XRP分类帐地址和相应的密码。

参数

名称 类型 描述
选项 目的 可选选项来控制如何生成地址和密码。
选项。算法 可选用于生成地址的数字签名算法。可以是ecdsa-secp256k1(默认)或ed25519
选项。 阵列\ <整数> 可选用于生成种子的熵。

返回值

此方法返回具有以下结构的对象:

名称 类型 描述
地址 地址 随机生成的Ripple帐户地址。
秘密 秘密字符串 相应的秘密address

return api.generateAddress();
{
  "address": "rGCkuB7PBr5tNy68tPEABEtcdno4hE6Y7f",
  "secret": "sp6JS7f14BuwFY8Mw6bTtLKWauoUs"
}

signPaymentChannelClaim

signPaymentChannelClaim(channel: string, amount: string, privateKey: string): string

签署支付渠道索赔。签名可以在随后的PaymentChannelClaim事务中提交。

参数

名称 类型 描述
渠道 256位十六进制通道标识符。
索赔授权的XRP数量。
专用密钥 用于签署付款渠道声明的私钥。

返回值

此方法返回一个签名字符串:

名称 类型 描述
  签名的十六进制表示。

const channel =
  '3E18C05AD40319B809520F1A136370C4075321B285217323396D6FD9EE1E9037';
const amount = '.00001';
const privateKey =
  'ACCD3309DB14D1A4FC9B1DAE608031F4408C85C73EE05E035B7DC8B25840107A';
return api.signPaymentChannelClaim(channel, amount, privateKey);
"3045022100B5C54654221F154347679B97AE7791CBEF5E6772A3F894F9C781B8F1B400F89F022021E466D29DC5AEB5DFAFC76E8A88D2E388EBD25A84143B6AC3B647F479CB89B7"

verifyPaymentChannelClaim

verifyPaymentChannelClaim(channel: string, amount: string, signature: string, publicKey: string): boolean

验证付款渠道声明签名。

参数

名称 类型 描述
渠道 256位十六进制通道标识符。
索赔授权的XRP数量。
签名 此索赔的签名。
公钥 频道发件人的公钥

返回值

true如果声明签名有效,则此方法返回。

名称 类型 描述
  布尔  

const channel =
  '3E18C05AD40319B809520F1A136370C4075321B285217323396D6FD9EE1E9037';
const amount = '.00001';
const signature = "3045022100B5C54654221F154347679B97AE7791CBEF5E6772A3F894F9C781B8F1B400F89F022021E466D29DC5AEB5DFAFC76E8A88D2E388EBD25A84143B6AC3B647F479CB89B7";
const publicKey =
  '02F89EAEC7667B30F33D0687BBA86C3FE2A08CCA40A9186C5BDE2DAA6FA97A37D8';
return api.verifyPaymentChannelClaim(channel, amount, signature, publicKey);
true

computeLedgerHash

computeLedgerHash(ledger: Object): string

计算分类帐的散列。

参数

该方法的参数与getLedger的返回值具有相同的结构。

名称 类型 描述
总帐 目的 分类帐标题进行散列。
总帐。 stateHash 在此分类帐中散列所有状态信息。
总帐。closeTime 日期时间字符串 该分类帐的关闭时间。
总帐。closeTimeResolution 整数 Approximate number of seconds between closing one ledger version and closing the next one.
ledger. closeFlags integer A bit-map of flags relating to the closing of this ledger. Currently, the ledger has only one flag defined for closeFlags: sLCF_NoConsensusTime (value 1). If this flag is enabled, it means that validators were in conflict regarding the correct close time for the ledger, but built otherwise the same ledger, so they declared consensus while "agreeing to disagree" on the close time. In this case, the consensus ledger contains a closeTime value that is 1 second after that of the previous ledger. (In this case, there is no official close time, but the actual real-world close time is probably 3-6 seconds later than the specified closeTime.)
ledger. ledgerHash string Unique identifying hash of the entire ledger.
ledger. ledgerVersion integer The ledger version of this ledger.
ledger.parentLedgerHash string Unique identifying hash of the ledger that came immediately before this one.
ledger. parentCloseTime date-time string The time at which the previous ledger was closed.
ledger. totalDrops value Total number of drops (1/1,000,000th of an XRP) in the network, as a quoted integer. (This decreases as transaction fees cause XRP to be destroyed.)
ledger. transactionHash string Hash of the transaction information included in this ledger.
ledger. rawState string Optional A JSON string containing all state data for this ledger in rippled JSON format.
ledger. rawTransactions string Optional A JSON string containing rippled format transaction JSON for all transactions that were validated in this ledger.
ledger. stateHashes array\ Optional An array of hashes of all state data in this ledger.
ledger.transactionHashes array\ Optional An array of hashes of all transactions that were validated in this ledger.
ledger. transactions array\ Optional Array of all transactions that were validated in this ledger. Transactions are represented in the same format as the return value of getTransaction.

Return Value

此方法返回一个大写的十六进制字符串,表示分类帐的散列。

const ledger = {
  "stateHash": "D9ABF622DA26EEEE48203085D4BC23B0F77DC6F8724AC33D975DA3CA492D2E44",
  "closeTime": "2015-08-12T01:01:10.000Z",
  "parentCloseTime": "2015-08-12T01:01:00.000Z",
  "closeFlags": 0,
  "closeTimeResolution": 10,
  "ledgerVersion": 15202439,
  "parentLedgerHash": "12724A65B030C15A1573AA28B1BBB5DF3DA4589AA3623675A31CAE69B23B1C4E",
  "totalDrops": "99998831688050493",
  "transactionHash": "325EACC5271322539EEEC2D6A5292471EF1B3E72AE7180533EFC3B8F0AD435C8"
};
return api.computeLedgerHash(ledger);
"F4D865D83EB88C1A1911B9E90641919A1314F36E1B099F8E95FE3B7C77BE3349"

API事件

总帐

无论何时在连接的服务器上验证新分类帐版本时都会发出此事件。

返回值

名称 类型 描述
baseFeeXRP 基本费用,在XRP。
ledgerHash 作为十六进制关闭的分类账的唯一散列。
ledgerTimestamp 日期时间字符串 此分类帐关闭的时间。
reserveBaseXRP XRP所需的最低储备金,这是账户所需的。
reserveIncrementXRP 为账户所拥有的每个项目(例如优惠或信任额度)添加的账户储备增加。
transactionCount 整数 包含在此分类帐中的新交易数量。
ledgerVersion 整数 分类帐的分类帐版本已关闭。
validatedLedgerVersions 服务器可用的分类帐范围。这可能是不连续的。

api.on('ledger', ledger => {
  console.log(JSON.stringify(ledger, null, 2));
});
{
  "baseFeeXRP": "0.00001",
  "ledgerVersion": 14804627,
  "ledgerHash": "9141FA171F2C0CE63E609466AF728FF66C12F7ACD4B4B50B0947A7F3409D593A",
  "ledgerTimestamp": "2015-07-23T05:50:40.000Z",
  "reserveBaseXRP": "20",
  "reserveIncrementXRP": "5",
  "transactionCount": 19,
  "validatedLedgerVersions": "13983423-14804627"
}

错误

当连接到无法与特定请求相关联的服务器连接时发生此事件。

返回值

第一个参数是一个指示错误类型的字符串: - rippled返回格式错误的消息 - websocket库发出一个错误*在波动的通用错误中找到的错误代码之一。 badMessage websocket

第二个参数是解释错误的消息。

第三个参数是: 引发badMessage 错误对象的错误消息,该错误对象针对websocket * ripled错误的解析响应发出

api.on('error', (errorCode, errorMessage, data) => {
  console.log(errorCode + ': ' + errorMessage);
});
tooBusy: The server is too busy to help you now.

连接的

连接成功打开后,此事件发出。

api.on('connected', () => {
  console.log('Connection is open now.');
});

断开的

连接关闭时发出此事件。

返回值

唯一的参数是包含由服务器发送的关闭代码的数字。

api.on('disconnected', (code) => {
  if (code !== 1000) {
    console.log('Connection is closed due to error.');
  } else {
    console.log('Connection is closed normally.');
  }
});博主QQ: 122209017

你可能感兴趣的:(Ripple)