diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/accountroot.md b/content/references/protocol-reference/ledger-data/ledger-object-types/accountroot.md index 456960c70b..dc1203273c 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/accountroot.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/accountroot.md @@ -36,29 +36,29 @@ The `AccountRoot` object type describes a single [account](accounts.html), its s The `AccountRoot` object has the following fields: -| Field | JSON Type | [Internal Type][] | Description | -|:------------------------------|:----------|:------------------|:-------------| -| `Account` | String | AccountID | The identifying (classic) address of this [account](accounts.html). | -| `AccountTxnID` | String | Hash256 | _(Optional)_ The identifying hash of the transaction most recently sent by this account. This field must be enabled to use the [`AccountTxnID` transaction field](transaction-common-fields.html#accounttxnid). To enable it, send an [AccountSet transaction with the `asfAccountTxnID` flag enabled](accountset.html#accountset-flags). | -| `Balance` | String | Amount | The account's current [XRP balance in drops][XRP, in drops], represented as a string. | -| `BurnedNFTokens` | Number | UInt32 | _(Optional)_ How many total of this account's issued [non-fungible tokens](non-fungible-tokens.html) :not_enabled: have been burned. This number is always equal or less than `MintedNFTokens`. | -| `Domain` | String | Blob | _(Optional)_ A domain associated with this account. In JSON, this is the hexadecimal for the ASCII representation of the domain. [Cannot be more than 256 bytes in length.](https://github.com/ripple/rippled/blob/55dc7a252e08a0b02cd5aa39e9b4777af3eafe77/src/ripple/app/tx/impl/SetAccount.h#L34) | -| `EmailHash` | String | Hash128 | _(Optional)_ The md5 hash of an email address. Clients can use this to look up an avatar through services such as [Gravatar](https://en.gravatar.com/). | -| [`Flags`](#accountroot-flags) | Number | UInt32 | A bit-map of boolean flags enabled for this account. | -| `LedgerEntryType` | String | UInt16 | The value `0x0061`, mapped to the string `AccountRoot`, indicates that this is an AccountRoot object. | -| `MessageKey` | String | Blob | _(Optional)_ A public key that may be used to send encrypted messages to this account. In JSON, uses hexadecimal. Must be exactly 33 bytes, with the first byte indicating the key type: `0x02` or `0x03` for secp256k1 keys, `0xED` for Ed25519 keys. | -| `MintedNFTokens` | Number | UInt32 | _(Optional)_ How many total [non-fungible tokens](non-fungible-tokens.html) :not_enabled: have been minted by and on behalf of this account. | -| `NFTokenMinter` | String | AccountID | _(Optional)_ Another account that is authorized to mint [non-fungible tokens](non-fungible-tokens.html) :not_enabled: on behalf of this account. | -| `OwnerCount` | Number | UInt32 | The number of objects this account owns in the ledger, which contributes to its owner reserve. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | -| `RegularKey` | String | AccountID | _(Optional)_ The address of a [key pair](cryptographic-keys.html) that can be used to sign transactions for this account instead of the master key. Use a [SetRegularKey transaction][] to change this value. | -| `Sequence` | Number | UInt32 | The [sequence number](basic-data-types.html#account-sequence) of the next valid transaction for this account. | -| `TicketCount` | Number | UInt32 | _(Optional)_ How many [Tickets](tickets.html) this account owns in the ledger. This is updated automatically to ensure that the account stays within the hard limit of 250 Tickets at a time. This field is omitted if the account has zero Tickets. _(Added by the [TicketBatch amendment][].)_ | -| `TickSize` | Number | UInt8 | _(Optional)_ How many significant digits to use for exchange rates of Offers involving currencies issued by this address. Valid values are `3` to `15`, inclusive. _(Added by the [TickSize amendment][].)_ | -| `TransferRate` | Number | UInt32 | _(Optional)_ A [transfer fee](transfer-fees.html) to charge other users for sending currency issued by this account to each other. | -| `WalletLocator` | String | Hash256 | _(Optional)_ **DEPRECATED**. Do not use. | -| `WalletSize` | Number | UInt32 | _(Optional)_ **DEPRECATED**. Do not use. | +| Field | JSON Type | [Internal Type][] | Required? | Description | +|:------------------------------|:----------|:------------------|:----------|:-------------| +| `Account` | String | AccountID | Yes | The identifying (classic) address of this [account](accounts.html). | +| `AccountTxnID` | String | Hash256 | No | The identifying hash of the transaction most recently sent by this account. This field must be enabled to use the [`AccountTxnID` transaction field](transaction-common-fields.html#accounttxnid). To enable it, send an [AccountSet transaction with the `asfAccountTxnID` flag enabled](accountset.html#accountset-flags). | +| `Balance` | String | Amount | No | The account's current [XRP balance in drops][XRP, in drops], represented as a string. | +| `BurnedNFTokens` | Number | UInt32 | No | How many total of this account's issued [non-fungible tokens](non-fungible-tokens.html) :not_enabled: have been burned. This number is always equal or less than `MintedNFTokens`. | +| `Domain` | String | Blob | No | A domain associated with this account. In JSON, this is the hexadecimal for the ASCII representation of the domain. [Cannot be more than 256 bytes in length.](https://github.com/ripple/rippled/blob/55dc7a252e08a0b02cd5aa39e9b4777af3eafe77/src/ripple/app/tx/impl/SetAccount.h#L34) | +| `EmailHash` | String | Hash128 | No | The md5 hash of an email address. Clients can use this to look up an avatar through services such as [Gravatar](https://en.gravatar.com/). | +| [`Flags`](#accountroot-flags) | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this account. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0061`, mapped to the string `AccountRoot`, indicates that this is an AccountRoot object. | +| `MessageKey` | String | Blob | No | A public key that may be used to send encrypted messages to this account. In JSON, uses hexadecimal. Must be exactly 33 bytes, with the first byte indicating the key type: `0x02` or `0x03` for secp256k1 keys, `0xED` for Ed25519 keys. | +| `MintedNFTokens` | Number | UInt32 | No | How many total [non-fungible tokens](non-fungible-tokens.html) :not_enabled: have been minted by and on behalf of this account. | +| `NFTokenMinter` | String | AccountID | No | Another account that is authorized to mint [non-fungible tokens](non-fungible-tokens.html) :not_enabled: on behalf of this account. | +| `OwnerCount` | Number | UInt32 | Yes | The number of objects this account owns in the ledger, which contributes to its owner reserve. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes |The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| `RegularKey` | String | AccountID | No | The address of a [key pair](cryptographic-keys.html) that can be used to sign transactions for this account instead of the master key. Use a [SetRegularKey transaction][] to change this value. | +| `Sequence` | Number | UInt32 | Yes | The [sequence number](basic-data-types.html#account-sequence) of the next valid transaction for this account. | +| `TicketCount` | Number | UInt32 | No | How many [Tickets](tickets.html) this account owns in the ledger. This is updated automatically to ensure that the account stays within the hard limit of 250 Tickets at a time. This field is omitted if the account has zero Tickets. _(Added by the [TicketBatch amendment][].)_ | +| `TickSize` | Number | UInt8 | No | How many significant digits to use for exchange rates of Offers involving currencies issued by this address. Valid values are `3` to `15`, inclusive. _(Added by the [TickSize amendment][].)_ | +| `TransferRate` | Number | UInt32 | No | A [transfer fee](transfer-fees.html) to charge other users for sending currency issued by this account to each other. | +| `WalletLocator` | String | Hash256 | No | **DEPRECATED**. Do not use. | +| `WalletSize` | Number | UInt32 | No | **DEPRECATED**. Do not use. | ## AccountRoot Flags diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/amendments.md b/content/references/protocol-reference/ledger-data/ledger-object-types/amendments.md index b928044d43..5f705c907e 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/amendments.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/amendments.md @@ -36,12 +36,12 @@ The `Amendments` object type contains a list of [Amendments](amendments.html) th ## {{currentpage.name}} Fields -| Name | JSON Type | [Internal Type][] | Description | -|-------------------|-----------|-----------|---------------------| -| `Amendments` | Array | Vector256 | _(Optional)_ Array of 256-bit [amendment IDs](amendments.html#about-amendments) for all currently-enabled amendments. If omitted, there are no enabled amendments. | -| `Flags` | Number | UInt32 | A bit-map of boolean flags. No flags are defined for the Amendments object type, so this value is always `0`. | -| `LedgerEntryType` | String | UInt16 | The value `0x0066`, mapped to the string `Amendments`, indicates that this object describes the status of amendments to the XRP Ledger. | -| `Majorities` | Array | STArray | _(Optional)_ Array of objects describing the status of amendments that have majority support but are not yet enabled. If omitted, there are no pending amendments with majority support. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|-------------------|-----------|-------------------|-----------|-------------| +| `Amendments` | Array | Vector256 | No | Array of 256-bit [amendment IDs](amendments.html#about-amendments) for all currently-enabled amendments. If omitted, there are no enabled amendments. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `Amendments` objects. The value is always `0`. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0066`, mapped to the string `Amendments`, indicates that this object describes the status of amendments to the XRP Ledger. | +| `Majorities` | Array | STArray | No | Array of objects describing the status of amendments that have majority support but are not yet enabled. If omitted, there are no pending amendments with majority support. | Each member of the `Majorities` field, if it is present, is an object with one field, `Majority`, whose contents are a nested object with the following fields: diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/check.md b/content/references/protocol-reference/ledger-data/ledger-object-types/check.md index fca116eb76..26211e38ac 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/check.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/check.md @@ -37,22 +37,22 @@ A `Check` object describes a check, similar to a paper personal check, which can A `Check` object has the following fields: -| Field | JSON Type | [Internal Type][] | Description | -|:--------------------|:-----------------|:------------------|:----------------| -| `Account` | String | Account | The sender of the Check. Cashing the Check debits this address's balance. | -| `Destination` | String | Account | The intended recipient of the Check. Only this address can cash the Check, using a [CheckCash transaction][]. | -| `DestinationNode` | String | UInt64 | _(Optional)_ A hint indicating which page of the destination's owner directory links to this object, in case the directory consists of multiple pages. | -| `DestinationTag` | Number | UInt32 | _(Optional)_ An arbitrary tag to further specify the destination for this Check, such as a hosted recipient at the destination address. | -| `Expiration` | Number | UInt32 | _(Optional)_ Indicates the time after which this Check is considered expired. See [Specifying Time][] for details. | -| `Flags` | Number | UInt32 | A bit-map of boolean flags. No flags are defined for Checks, so this value is always `0`. | -| `InvoiceID` | String | Hash256 | _(Optional)_ Arbitrary 256-bit hash provided by the sender as a specific reason or identifier for this Check. | -| `LedgerEntryType` | String | UInt16 | The value `0x0043`, mapped to the string `Check`, indicates that this object is a Check object. | -| `OwnerNode` | String | UInt64 | A hint indicating which page of the sender's owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | -| `SendMax` | String or Object | Amount | The maximum amount of currency this Check can debit the sender. If the Check is successfully cashed, the destination is credited in the same currency for up to this amount. | -| `Sequence` | Number | UInt32 | The sequence number of the [CheckCreate transaction][] that created this check. | -| `SourceTag` | Number | UInt32 | _(Optional)_ An arbitrary tag to further specify the source for this Check, such as a hosted recipient at the sender's address. | +| Field | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:-----------------|:------------------|:----------|:----------------| +| `Account` | String | Account | Yes | The sender of the Check. Cashing the Check debits this address's balance. | +| `Destination` | String | Account | Yes | The intended recipient of the Check. Only this address can cash the Check, using a [CheckCash transaction][]. | +| `DestinationNode` | String | UInt64 | No | A hint indicating which page of the destination's owner directory links to this object, in case the directory consists of multiple pages. | +| `DestinationTag` | Number | UInt32 | No | An arbitrary tag to further specify the destination for this Check, such as a hosted recipient at the destination address. | +| `Expiration` | Number | UInt32 | No | Indicates the time after which this Check is considered expired. See [Specifying Time][] for details. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `Check` objects. The value is always `0`. | +| `InvoiceID` | String | Hash256 | No | Arbitrary 256-bit hash provided by the sender as a specific reason or identifier for this Check. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0043`, mapped to the string `Check`, indicates that this object is a Check object. | +| `OwnerNode` | String | UInt64 | Yes | A hint indicating which page of the sender's owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes |The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| `SendMax` | String or Object | Amount | Yes | The maximum amount of currency this Check can debit the sender. If the Check is successfully cashed, the destination is credited in the same currency for up to this amount. | +| `Sequence` | Number | UInt32 | Yes | The sequence number of the [CheckCreate transaction][] that created this check. | +| `SourceTag` | Number | UInt32 | No | An arbitrary tag to further specify the source for this Check, such as a hosted recipient at the sender's address. | ## Check ID Format diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/depositpreauth.md b/content/references/protocol-reference/ledger-data/ledger-object-types/depositpreauth.md index dc4bc70fa1..d5b5748b68 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/depositpreauth.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/depositpreauth.md @@ -31,15 +31,15 @@ This has no effect on processing of transactions unless the account that provide A `DepositPreauth` object has the following fields: -| Field | JSON Type | [Internal Type][] | Description | -|:--------------------|:-----------------|:------------------|:----------------| -| `Account` | String | Account | The account that granted the preauthorization. (The destination of the preauthorized payments.) | -| `Authorize` | String | Account | The account that received the preauthorization. (The sender of the preauthorized payments.) | -| `Flags` | Number | UInt32 | A bit-map of boolean flags. No flags are defined for DepositPreauth objects, so this value is always `0`. | -| `LedgerEntryType` | String | UInt16 | The value `0x0070`, mapped to the string `DepositPreauth`, indicates that this is a DepositPreauth object. | -| `OwnerNode` | String | UInt64 | A hint indicating which page of the sender's owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| Field | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:-----------------|:------------------|:----------|:----------------| +| `Account` | String | Account | Yes | The account that granted the preauthorization. (The destination of the preauthorized payments.) | +| `Authorize` | String | Account | Yes | The account that received the preauthorization. (The sender of the preauthorized payments.) | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `DepositPreauth` objects. The value is always `0`. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0070`, mapped to the string `DepositPreauth`, indicates that this is a DepositPreauth object. | +| `OwnerNode` | String | UInt64 | Yes | A hint indicating which page of the sender's owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | ## DepositPreauth ID Format diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/directorynode.md b/content/references/protocol-reference/ledger-data/ledger-object-types/directorynode.md index e0405005d9..418797d72b 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/directorynode.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/directorynode.md @@ -59,20 +59,20 @@ There are two kinds of Directories: ## {{currentpage.name}} Fields -| Name | JSON Type | [Internal Type][] | Description | -|-------------------|-----------|---------------|-------------| -| `ExchangeRate` | String | UInt64 | (Offer Directories only) **DEPRECATED**. Do not use. | -| `Flags` | Number | UInt32 | A bit-map of boolean flags enabled for this directory. Currently, the protocol defines no flags for DirectoryNode objects. | -| `Indexes` | Array | Vector256 | The contents of this Directory: an array of IDs of other objects. | -| `IndexNext` | Number | UInt64 | (Optional) If this Directory consists of multiple pages, this ID links to the next object in the chain, wrapping around at the end. | -| `IndexPrevious` | Number | UInt64 | (Optional) If this Directory consists of multiple pages, this ID links to the previous object in the chain, wrapping around at the beginning. | -| `LedgerEntryType` | String | UInt16 | The value `0x0064`, mapped to the string `DirectoryNode`, indicates that this object is part of a Directory. | -| `Owner` | String | AccountID | (Owner Directories only) The address of the account that owns the objects in this directory. | -| `RootIndex` | String | Hash256 | The ID of root object for this directory. | -| `TakerGetsCurrency` | String | Hash160 | (Offer Directories only) The currency code of the `TakerGets` amount from the offers in this directory. | -| `TakerGetsIssuer` | String | Hash160 | (Offer Directories only) The issuer of the `TakerGets` amount from the offers in this directory. | -| `TakerPaysCurrency` | String | Hash160 | (Offer Directories only) The currency code of the `TakerPays` amount from the offers in this directory. | -| `TakerPaysIssuer` | String | Hash160 | (Offer Directories only) The issuer of the `TakerPays` amount from the offers in this directory. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:----------|:------------------|:----------|:------------| +| `ExchangeRate` | String | UInt64 | No | (Offer Directories only) **DEPRECATED**. Do not use. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `DirectoryNode` objects. The value is always `0`. | +| `Indexes` | Array | Vector256 | Yes | The contents of this Directory: an array of IDs of other objects. | +| `IndexNext` | Number | UInt64 | No | If this Directory consists of multiple pages, this ID links to the next object in the chain, wrapping around at the end. | +| `IndexPrevious` | Number | UInt64 | No | If this Directory consists of multiple pages, this ID links to the previous object in the chain, wrapping around at the beginning. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0064`, mapped to the string `DirectoryNode`, indicates that this object is part of a Directory. | +| `Owner` | String | AccountID | No | (Owner Directories only) The address of the account that owns the objects in this directory. | +| `RootIndex` | String | Hash256 | Yes | The ID of root object for this directory. | +| `TakerGetsCurrency` | String | Hash160 | No | (Offer Directories only) The currency code of the `TakerGets` amount from the offers in this directory. | +| `TakerGetsIssuer` | String | Hash160 | No | (Offer Directories only) The issuer of the `TakerGets` amount from the offers in this directory. | +| `TakerPaysCurrency` | String | Hash160 | No |(Offer Directories only) The currency code of the `TakerPays` amount from the offers in this directory. | +| `TakerPaysIssuer` | String | Hash160 | No | (Offer Directories only) The issuer of the `TakerPays` amount from the offers in this directory. | ## Directory ID Formats diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/escrow.md b/content/references/protocol-reference/ledger-data/ledger-object-types/escrow.md index 7aaff81f75..98a4d892b2 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/escrow.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/escrow.md @@ -43,22 +43,22 @@ An `Escrow` object is associated with two addresses: An `Escrow` object has the following fields: -| Name | JSON Type | [Internal Type][] | Description | -|---------------------|-----------|-----------|--------------------------------| -| `Account` | String | AccountID | The address of the owner (sender) of this held payment. This is the account that provided the XRP, and gets it back if the held payment is canceled. | -| `Amount` | String | Amount | The amount of XRP, in drops, to be delivered by the held payment. | -| `CancelAfter` | Number | UInt32 | _(Optional)_ The held payment can be canceled if and only if this field is present _and_ the time it specifies has passed. Specifically, this is specified as [seconds since the Ripple Epoch][] and it "has passed" if it's earlier than the close time of the previous validated ledger. | -| `Condition` | String | Blob | _(Optional)_ A [PREIMAGE-SHA-256 crypto-condition](https://tools.ietf.org/html/draft-thomas-crypto-conditions-02#section-8.1), as hexadecimal. If present, the [EscrowFinish transaction][] must contain a fulfillment that satisfies this condition. | -| `Destination` | String | AccountID | The destination address where the XRP is paid if the held payment is successful. | -| `DestinationNode` | String | UInt64 | _(Optional)_ A hint indicating which page of the destination's owner directory links to this object, in case the directory consists of multiple pages. Omitted on escrows created before enabling the [fix1523 amendment][]. | -| `DestinationTag` | Number | UInt32 | _(Optional)_ An arbitrary tag to further specify the destination for this held payment, such as a hosted recipient at the destination address. | -| `FinishAfter` | Number | UInt32 | _(Optional)_ The time, in [seconds since the Ripple Epoch][], after which this held payment can be finished. Any [EscrowFinish transaction][] before this time fails. (Specifically, this is compared with the close time of the previous validated ledger.) | -| `Flags` | Number | UInt32 | A bit-map of boolean flags. No flags are defined for the Escrow type, so this value is always `0`. | -| `LedgerEntryType` | String | UInt16 | The value `0x0075`, mapped to the string `Escrow`, indicates that this object is an `Escrow` object. | -| `OwnerNode` | String | UInt64 | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | -| `SourceTag` | Number | UInt32 | _(Optional)_ An arbitrary tag to further specify the source for this held payment, such as a hosted recipient at the owner's address. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:----------|:------------------|:----------|:-----------------------| +| `Account` | String | AccountID | Yes | The address of the owner (sender) of this held payment. This is the account that provided the XRP, and gets it back if the held payment is canceled. | +| `Amount` | String | Amount | Yes | The amount of XRP, in drops, to be delivered by the held payment. | +| `CancelAfter` | Number | UInt32 | No | The held payment can be canceled if and only if this field is present _and_ the time it specifies has passed. Specifically, this is specified as [seconds since the Ripple Epoch][] and it "has passed" if it's earlier than the close time of the previous validated ledger. | +| `Condition` | String | Blob | No | A [PREIMAGE-SHA-256 crypto-condition](https://tools.ietf.org/html/draft-thomas-crypto-conditions-02#section-8.1), as hexadecimal. If present, the [EscrowFinish transaction][] must contain a fulfillment that satisfies this condition. | +| `Destination` | String | AccountID | Yes | The destination address where the XRP is paid if the held payment is successful. | +| `DestinationNode` | String | UInt64 | No | A hint indicating which page of the destination's owner directory links to this object, in case the directory consists of multiple pages. Omitted on escrows created before enabling the [fix1523 amendment][]. | +| `DestinationTag` | Number | UInt32 | No | An arbitrary tag to further specify the destination for this held payment, such as a hosted recipient at the destination address. | +| `FinishAfter` | Number | UInt32 | No | The time, in [seconds since the Ripple Epoch][], after which this held payment can be finished. Any [EscrowFinish transaction][] before this time fails. (Specifically, this is compared with the close time of the previous validated ledger.) | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `Escrow` objects. The value is always `0`. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0075`, mapped to the string `Escrow`, indicates that this object is an `Escrow` object. | +| `OwnerNode` | String | UInt64 | Yes | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| `SourceTag` | Number | UInt32 | No | An arbitrary tag to further specify the source for this held payment, such as a hosted recipient at the owner's address. | ## Escrow ID Format diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/feesettings.md b/content/references/protocol-reference/ledger-data/ledger-object-types/feesettings.md index 636cc8af54..448c1e803c 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/feesettings.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/feesettings.md @@ -30,14 +30,14 @@ Example `FeeSettings` object: The `FeeSettings` object has the following fields: -| Name | JSON Type | [Internal Type][] | Description | -|:--------------------|:----------|:------------------|:-----------------------| -| `BaseFee` | String | UInt64 | The [transaction cost](transaction-cost.html) of the "reference transaction" in drops of XRP as hexadecimal. | -| `Flags` | Number | UInt32 | A bit-map of boolean flags for this object. No flags are defined for this type. | -| `LedgerEntryType` | String | UInt16 | The value `0x0073`, mapped to the string `FeeSettings`, indicates that this object contains the ledger's fee settings. | -| `ReferenceFeeUnits` | Number | UInt32 | The `BaseFee` translated into "fee units". | -| `ReserveBase` | Number | UInt32 | The [base reserve](reserves.html#base-reserve-and-owner-reserve) for an account in the XRP Ledger, as drops of XRP. | -| `ReserveIncrement` | Number | UInt32 | The incremental [owner reserve](reserves.html#base-reserve-and-owner-reserve) for owning objects, as drops of XRP. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:----------|:------------------|:----------|:-----------------------| +| `BaseFee` | String | UInt64 | Yes | The [transaction cost](transaction-cost.html) of the "reference transaction" in drops of XRP as hexadecimal. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `FeeSettings` objects. The value is always `0`. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0073`, mapped to the string `FeeSettings`, indicates that this object contains the ledger's fee settings. | +| `ReferenceFeeUnits` | Number | UInt32 | Yes | The `BaseFee` translated into "fee units". | +| `ReserveBase` | Number | UInt32 | Yes | The [base reserve](reserves.html#base-reserve-and-owner-reserve) for an account in the XRP Ledger, as drops of XRP. | +| `ReserveIncrement` | Number | UInt32 | Yes | The incremental [owner reserve](reserves.html#base-reserve-and-owner-reserve) for owning objects, as drops of XRP. | **Warning:** The JSON format for this ledger object type is unusual. The `BaseFee`, `ReserveBase`, and `ReserveIncrement` indicate drops of XRP but ***not*** in the usual format for [specifying XRP][Currency Amount]. diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/ledgerhashes.md b/content/references/protocol-reference/ledger-data/ledger-object-types/ledgerhashes.md index f23d0b897d..9068aba388 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/ledgerhashes.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/ledgerhashes.md @@ -41,13 +41,13 @@ Example `LedgerHashes` object (trimmed for length): A `LedgerHashes` object has the following fields: -| Name | JSON Type | [Internal Type][] | Description | -|-------------------|-----------|-------------------|-------------| -| `FirstLedgerSequence` | Number | UInt32 | **DEPRECATED** Do not use. (The "recent hashes" object of the production XRP Ledger has the value `2` in this field as a result of a previous `rippled` software. That value gets carried forward as the "recent hashes" object is updated. New "previous history" objects do not have this field, nor do "recent hashes" objects in [parallel networks](parallel-networks.html) started with more recent versions of `rippled`.) | -| `Flags` | Number | UInt32 | A bit-map of boolean flags for this object. No flags are defined for this type. | -| `Hashes` | Array of Strings | Vector256 | An array of up to 256 ledger hashes. The contents depend on which sub-type of `LedgerHashes` object this is. | -| `LastLedgerSequence` | Number | UInt32 | The [Ledger Index][] of the last entry in this object's `Hashes` array. | -| `LedgerEntryType` | String | UInt16 | The value `0x0068`, mapped to the string `LedgerHashes`, indicates that this object is a list of ledger hashes. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|:----------------------|:-----------------|:------------------|:----------|:------------| +| `FirstLedgerSequence` | Number | UInt32 | Yes | **DEPRECATED** Do not use. (The "recent hashes" object of the production XRP Ledger has the value `2` in this field as a result of a previous `rippled` software. That value gets carried forward as the "recent hashes" object is updated. New "previous history" objects do not have this field, nor do "recent hashes" objects in [parallel networks](parallel-networks.html) started with more recent versions of `rippled`.) | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `LedgerHashes` objects. The value is always `0`. | +| `Hashes` | Array of Strings | Vector256 | Yes | An array of up to 256 ledger hashes. The contents depend on which sub-type of `LedgerHashes` object this is. | +| `LastLedgerSequence` | Number | UInt32 | Yes | The [Ledger Index][] of the last entry in this object's `Hashes` array. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0068`, mapped to the string `LedgerHashes`, indicates that this object is a list of ledger hashes. | ## Recent History LedgerHashes diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/negativeunl.md b/content/references/protocol-reference/ledger-data/ledger-object-types/negativeunl.md index c37bade430..2be2331913 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/negativeunl.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/negativeunl.md @@ -34,13 +34,13 @@ Each ledger version contains **at most one** `NegativeUNL` object. If no validat A `NegativeUNL` object has the following fields: -| Name | JSON Type | [Internal Type][] | Description | -|:----------------------|:----------|:------------------|:---------------------| -| `DisabledValidators` | Array | Array | _(May be omitted)_ A list of `DisabledValidator` objects (see below), each representing a trusted validator that is currently disabled. | -| `Flags` | Number | UInt32 | A bit-map of boolean flags. No flags are defined for the NegativeUNL object type, so this value is always `0`. | -| `LedgerEntryType` | String | UInt16 | The value `0x004E`, mapped to the string `NegativeUNL`, indicates that this object is the Negative UNL. | -| `ValidatorToDisable` | String | Blob | _(May be omitted)_ The public key of a trusted validator that is scheduled to be disabled in the next flag ledger. | -| `ValidatorToReEnable` | String | Blob | _(May be omitted)_ The public key of a trusted validator in the Negative UNL that is scheduled to be re-enabled in the next flag ledger. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|:----------------------|:----------|:------------------|:----------|:---------------------| +| `DisabledValidators` | Array | Array | No | A list of `DisabledValidator` objects (see below), each representing a trusted validator that is currently disabled. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags. No flags are defined for the NegativeUNL object type, so this value is always `0`. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x004E`, mapped to the string `NegativeUNL`, indicates that this object is the Negative UNL. | +| `ValidatorToDisable` | String | Blob | No | The public key of a trusted validator that is scheduled to be disabled in the next flag ledger. | +| `ValidatorToReEnable` | String | Blob | No | The public key of a trusted validator in the Negative UNL that is scheduled to be re-enabled in the next flag ledger. | ## DisabledValidator Objects diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenoffer.md b/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenoffer.md index fb913a7646..8c80797dc3 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenoffer.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenoffer.md @@ -27,178 +27,28 @@ The unique ID (`NFTokenOfferID`) of the `NFTokenOffer` object is the result of t ### `NFTokenOffer` Fields - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Field Name - Required? - JSON Type - Internal Type - Description -
Amount - Yes - object or string - AMOUNT - Amount expected or offered for the NFToken. If the token has the lsfOnlyXRP flag set, the amount must be specified in XRP. -

-Sell offers that specify assets other than XRP must specify a non-zero amount. Sell offers that specify XRP can be 'free' (that is, the Amount field can be equal to "0"). -

Destination - No - string - AccountID - The AccountID for which this offer is intended. If present, only that account can accept the offer. -
Expiration - No - number - UInt32 - The time after which the offer is no longer active. The value is the number of seconds since the Ripple Epoch. -
Flags - Yes - number - UInt32 - A set of flags associated with this object, used to specify various options or settings. Flags are listed in the table below. -
LedgerEntryType - Yes - string - UInt16 - The type of ledger object (0x0074). -
NFTokenID - Yes - string - Hash256 - NFTokenID of the NFToken object referenced by this offer. -
NFTokenOfferNode - No - string - UInt64 - Internal bookkeeping, indicating the page inside the token buy or sell offer directory, as appropriate, where this token is being tracked. This field allows the efficient deletion of offers. -
Owner - Yes - string - AccountID - Owner of the account that is creating and owns the offer. Only the current Owner of an NFToken can create an offer to sell an NFToken, but any account can create an offer to buy an NFToken. -
OwnerNode - No - string - UInt64 - Internal bookkeeping, indicating the page inside the owner directory where this token is being tracked. This field allows the efficient deletion of offers. -
PreviousTxnID - Yes - string - Hash256 - Identifying hash of the transaction that most recently modified this object. -
PreviousTxnLgrSeq - Yes - number - UInt32 - Index of the ledger that contains the transaction that most recently modified this object. -
+| Name |JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:-----------------|:------------------|:------------|:-----------| +| `Amount` | object or string | AMOUNT | Yes | Amount expected or offered for the NFToken. If the token has the `lsfOnlyXRP` flag set, the amount must be specified in XRP. Sell offers that specify assets other than XRP must specify a non-zero amount. Sell offers that specify XRP can be 'free' (that is, the Amount field can be equal to `"0"`). | +| `Destination` | string | AccountID | No | The AccountID for which this offer is intended. If present, only that account can accept the offer. | +| `Expiration` | number | UInt32 | No | The time after which the offer is no longer active. The value is the number of seconds since the Ripple Epoch. | +| `Flags` | number | UInt32 | Yes | A set of flags associated with this object, used to specify various options or settings. Flags are listed in the table below. | +| `LedgerEntryType` | string | UInt16 | Yes | The type of ledger object (0x0074). | +| `NFTokenID` | string | Hash256 | Yes | NFTokenID of the NFToken object referenced by this offer. | +| `NFTokenOfferNode` | string | UInt64 | No | Internal bookkeeping, indicating the page inside the token buy or sell offer directory, as appropriate, where this token is being tracked. This field allows the efficient deletion of offers. | +| `Owner` | string | AccountID | Yes | Owner of the account that is creating and owns the offer. Only the current Owner of an NFToken can create an offer to sell an NFToken, but any account can create an offer to buy an NFToken. | +| `OwnerNode` | string | UInt64 | No | Internal bookkeeping, indicating the page inside the owner directory where this token is being tracked. This field allows the efficient deletion of offers. | +| `PreviousTxnID` | string | Hash256 | Yes | Identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | number | UInt32 | Yes | Index of the ledger that contains the transaction that most recently modified this object. | #### NFTokenOffer Flags - - - - - - - - - - - -
Flag Name - Flag Value - Description -
lsfSellNFToken - 0x00000001 - If set, the offer is a sell offer. Otherwise, the offer is a buy offer. -
+|Flag Name|Flag Value|Description| +|---|---|---| +|lsfSellNFToken|0x00000001|If set, the offer is a sell offer. Otherwise, the offer is a buy offer.| ## `NFTokenOffer` Transactions diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenpage.md b/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenpage.md index c645cf3a1e..e0a67783f6 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenpage.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/nftokenpage.md @@ -17,24 +17,23 @@ The `NFTokenPage` object represents a collection of `NFToken` objects owned by t ```json { - "LedgerEntryType": "NFTokenPage", - "PreviousTokenPage": - "598EDFD7CF73460FB8C695d6a9397E907378C8A841F7204C793DCBEF5406", - "PreviousTokenNext": - "598EDFD7CF73460FB8C695d6a9397E9073781BA3B78198904F659AAA252A", - "PreviousTxnID": - "95C8761B22894E328646F7A70035E9DFBECC90EDD83E43B7B973F626D21A0822", - "PreviousTxnLgrSeq": - 42891441, - "NFTokens": - { - { - "NFTokenID": - "000B013A95F14B0044F78A264E41713C64B5F89242540EE208C3098E00000D65", - "URI": "697066733A2F2F62616679626569676479727A74357366703775646D37687537367568377932366E6634646675796C71616266336F636C67747179353566627A6469" - }, - /* potentially more objects */ - } + "LedgerEntryType": "NFTokenPage", + "PreviousTokenPage": + "598EDFD7CF73460FB8C695d6a9397E907378C8A841F7204C793DCBEF5406", + "PreviousTokenNext": + "598EDFD7CF73460FB8C695d6a9397E9073781BA3B78198904F659AAA252A", + "PreviousTxnID": + "95C8761B22894E328646F7A70035E9DFBECC90EDD83E43B7B973F626D21A0822", + "PreviousTxnLgrSeq": + 42891441, + "NFTokens": [ + { + "NFTokenID": + "000B013A95F14B0044F78A264E41713C64B5F89242540EE208C3098E00000D65", + "URI": "697066733A2F2F62616679626569676479727A74357366703775646D37687537367568377932366E6634646675796C71616266336F636C67747179353566627A6469" + }, + /* potentially more objects */ + ] } ``` @@ -48,93 +47,14 @@ In the interest of minimizing the size of a page and optimizing storage, the `Ow An `NFTokenPage` object can have the following required and optional fields: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Field Name - Required? - JSON Type - Internal Type - Description -
LedgerEntryType - Yes - string - UInt16 - Identifies the type of ledger object. The reserved ledger entry type is 0x0050. -
NextPageMin - No - string - Hash256 - The locator of the next page, if any. Details about this field and how it should be used are outlined below, after the construction of the NFTokenPageID is explained. -
NFTokens - Yes - object - TOKEN - The collection of NFToken objects contained in this NFTokenPage object. This specification places an upper bound of 32 NFToken objects per page. Objects should be stored in sorted order, from low to high with the TokenID used as the sorting parameter. -
PreviousPageMin - No - string - Hash256 - The locator of the previous page, if any. Details about this field and how it should be used are outlined below, after the construction of the NFTokenPageID is explained. -
PreviousTxnID - No - string - HASH256 - Identifies the transaction ID of the transaction that most recently modified this NFTokenPage object. -
PreviousTxnLgrSeq - No - number - UInt32 - The sequence of the ledger that contains the transaction that most recently modified this NFTokenPage object. -
- +| Field Name | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:----------|:------------------|:----------|:------------| +| `LedgerEntryType` | string | UInt16 | Yes | Identifies the type of ledger object. The reserved ledger entry type is 0x0050.| +| `NextPageMin` | string | Hash256 | No | The locator of the next page, if any. Details about this field and how it should be used are outlined below, after the construction of the NFTokenPageID is explained.| +| `NFTokens` | object | TOKEN | Yes | The collection of NFToken objects contained in this NFTokenPage object. This specification places an upper bound of 32 NFToken objects per page. Objects should be stored in sorted order, from low to high with the TokenID used as the sorting parameter.| +| `PreviousPageMin` | string | Hash256 | No | The locator of the previous page, if any. Details about this field and how it should be used are outlined below, after the construction of the NFTokenPageID is explained.| +| `PreviousTxnID` | string | HASH256 | No | Identifies the transaction ID of the transaction that most recently modified this NFTokenPage object.| +| `PreviousTxnLgrSeq` | number | UInt32 | No | The sequence of the ledger that contains the transaction that most recently modified this NFTokenPage object.| ### TokenPage ID Format @@ -175,64 +95,11 @@ Each `NFTokenPage` costs an incremental reserve to the owner account. This speci The value of the incremental reserve is, as of this writing, 2 XRP. The table below shows what the _effective_ reserve per token is, if a given page contains 1, 8, 16, 32 and 64 NFTs. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Incremental Reserve - 1 NFToken - 8 NFTokens - 16 NFTokens - 32 NFTokens - 64 NFTokens -
5 XRP - 5 XRP - 0.625 XRP - 0.3125 XRP - 0.15625 XRP - 0.07812 XRP -
2 XRP - 2 XRP - 0.25 XRP - 0.125 XRP - 0.0625 XRP - 0.03125 XRP -
1 XRP - 1 XRP - 0.125 XRP - 0.0625 XRP - 0.03125 XRP - 0.01562 XRP -
+|Incremental Reserve|1 NFToken|8 NFTokens|16 NFTokens|32 NFTokens|64 NFTokens| +|--- |--- |--- |--- |--- |--- | +|5 XRP|5 XRP|0.625 XRP|0.3125 XRP|0.15625 XRP|0.07812 XRP| +|2 XRP|2 XRP|0.25 XRP|0.125 XRP|0.0625 XRP|0.03125 XRP| +|1 XRP|1 XRP|0.125 XRP|0.0625 XRP|0.03125 XRP|0.01562 XRP| {% include '_snippets/rippled-api-links.md' %} diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/offer.md b/content/references/protocol-reference/ledger-data/ledger-object-types/offer.md index 28c86adab9..10fbc3741a 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/offer.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/offer.md @@ -41,20 +41,20 @@ For more information, see [Offers](offers.html). An `Offer` object has the following fields: -| Name | JSON Type | [Internal Type][] | Description | -|-------------------|-----------|---------------|-------------| -| `Account` | String | AccountID | The address of the account that owns this offer. | -| `BookDirectory` | String | Hash256 | The ID of the [Offer Directory](directorynode.html) that links to this offer. | -| `BookNode` | String | UInt64 | A hint indicating which page of the offer directory links to this object, in case the directory consists of multiple pages. | -| `Expiration` | Number | UInt32 | (Optional) Indicates the time after which this offer is considered unfunded. See [Specifying Time][] for details. | -| `Flags` | Number | UInt32 | A bit-map of boolean flags enabled for this offer. | -| `LedgerEntryType` | String | UInt16 | The value `0x006F`, mapped to the string `Offer`, indicates that this object describes an order to trade currency. | -| `OwnerNode` | String | UInt64 | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. **Note:** The offer does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | -| `Sequence` | Number | UInt32 | The `Sequence` value of the [OfferCreate][] transaction that created this `Offer` object. Used in combination with the `Account` to identify this Offer. | -| `TakerPays` | String or Object | Amount | The remaining amount and type of currency requested by the offer creator. | -| `TakerGets` | String or Object | Amount | The remaining amount and type of currency being provided by the offer creator. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:-----------------|:------------------|:----------|:------------| +| `Account` | String | AccountID | Yes | The address of the account that owns this offer. | +| `BookDirectory` | String | Hash256 | Yes | The ID of the [Offer Directory](directorynode.html) that links to this offer. | +| `BookNode` | String | UInt64 | Yes | A hint indicating which page of the offer directory links to this object, in case the directory consists of multiple pages. | +| `Expiration` | Number | UInt32 | No | Indicates the time after which this offer is considered unfunded. See [Specifying Time][] for details. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this offer. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x006F`, mapped to the string `Offer`, indicates that this object describes an order to trade currency. | +| `OwnerNode` | String | UInt64 | Yes | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. **Note:** The offer does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| `Sequence` | Number | UInt32 | Yes | The `Sequence` value of the [OfferCreate][] transaction that created this `Offer` object. Used in combination with the `Account` to identify this Offer. | +| `TakerPays` | String or Object | Amount | Yes | The remaining amount and type of currency requested by the offer creator. | +| `TakerGets` | String or Object | Amount | Yes | The remaining amount and type of currency being provided by the offer creator. | ## Offer Flags diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/paychannel.md b/content/references/protocol-reference/ledger-data/ledger-object-types/paychannel.md index a0ed19af11..6cc17ca496 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/paychannel.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/paychannel.md @@ -46,24 +46,24 @@ For an example of using payment channels, see the [Payment Channels Tutorial](us A `PayChannel` object has the following fields: -| Name | JSON Type | [Internal Type][] | Description | -|:--------------------|:----------|:------------------|:-----------------------| -| `Account` | String | AccountID | The source address that owns this payment channel. This comes from the sending address of the transaction that created the channel. | -| `Amount` | String | Amount | Total [XRP, in drops][], that has been allocated to this channel. This includes XRP that has been paid to the destination address. This is initially set by the transaction that created the channel and can be increased if the source address sends a PaymentChannelFund transaction. | -| `Balance` | String | Amount | Total [XRP, in drops][], already paid out by the channel. The difference between this value and the `Amount` field is how much XRP can still be paid to the destination address with PaymentChannelClaim transactions. If the channel closes, the remaining difference is returned to the source address. | -| `CancelAfter` | Number | UInt32 | _(Optional)_ The immutable expiration time for this payment channel, in [seconds since the Ripple Epoch][]. This channel is expired if this value is present and smaller than the previous ledger's [`close_time` field](ledger-header.html). This is optionally set by the transaction that created the channel, and cannot be changed. | -| `Destination` | String | AccountID | The destination address for this payment channel. While the payment channel is open, this address is the only one that can receive XRP from the channel. This comes from the `Destination` field of the transaction that created the channel. | -| `DestinationTag` | Number | UInt32 | _(Optional)_ An arbitrary tag to further specify the destination for this payment channel, such as a hosted recipient at the destination address. | -| `DestinationNode` | String | UInt64 | _(Optional)_ A hint indicating which page of the destination's owner directory links to this object, in case the directory consists of multiple pages. Omitted on payment channels created before enabling the [fixPayChanRecipientOwnerDir amendment][]. | -| `Expiration` | Number | UInt32 | _(Optional)_ The mutable expiration time for this payment channel, in [seconds since the Ripple Epoch][]. The channel is expired if this value is present and smaller than the previous ledger's [`close_time` field](ledger-header.html). See [Setting Channel Expiration](#setting-channel-expiration) for more details. | -| `Flags` | Number | UInt32 | A bit-map of boolean flags enabled for this payment channel. Currently, the protocol defines no flags for `PayChannel` objects. | -| `LedgerEntryType` | String | UInt16 | The value `0x0078`, mapped to the string `PayChannel`, indicates that this object is a payment channel object. | -| `OwnerNode` | String | UInt64 | A hint indicating which page of the source address's owner directory links to this object, in case the directory consists of multiple pages. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | -| `PublicKey` | String | Blob | Public key, in hexadecimal, of the key pair that can be used to sign claims against this channel. This can be any valid secp256k1 or Ed25519 public key. This is set by the transaction that created the channel and must match the public key used in claims against the channel. The channel source address can also send XRP from this channel to the destination without signed claims. | -| `SettleDelay` | Number | UInt32 | Number of seconds the source address must wait to close the channel if it still has any XRP in it. Smaller values mean that the destination address has less time to redeem any outstanding claims after the source address requests to close the channel. Can be any value that fits in a 32-bit unsigned integer (0 to 2^32-1). This is set by the transaction that creates the channel. | -| `SourceTag` | Number | UInt32 | _(Optional)_ An arbitrary tag to further specify the source for this payment channel, such as a hosted recipient at the owner's address. | +| Name | JSON Type | [Internal Type][] | Required? | Description | +|:--------------------|:----------|:------------------|:----------|:-----------------------| +| `Account` | String | AccountID | Yes | The source address that owns this payment channel. This comes from the sending address of the transaction that created the channel. | +| `Amount` | String | Amount | Yes | Total [XRP, in drops][], that has been allocated to this channel. This includes XRP that has been paid to the destination address. This is initially set by the transaction that created the channel and can be increased if the source address sends a PaymentChannelFund transaction. | +| `Balance` | String | Amount | Yes | Total [XRP, in drops][], already paid out by the channel. The difference between this value and the `Amount` field is how much XRP can still be paid to the destination address with PaymentChannelClaim transactions. If the channel closes, the remaining difference is returned to the source address. | +| `CancelAfter` | Number | UInt32 | No | The immutable expiration time for this payment channel, in [seconds since the Ripple Epoch][]. This channel is expired if this value is present and smaller than the previous ledger's [`close_time` field](ledger-header.html). This is optionally set by the transaction that created the channel, and cannot be changed. | +| `Destination` | String | AccountID | Yes | The destination address for this payment channel. While the payment channel is open, this address is the only one that can receive XRP from the channel. This comes from the `Destination` field of the transaction that created the channel. | +| `DestinationTag` | Number | UInt32 | No | An arbitrary tag to further specify the destination for this payment channel, such as a hosted recipient at the destination address. | +| `DestinationNode` | String | UInt64 | No | A hint indicating which page of the destination's owner directory links to this object, in case the directory consists of multiple pages. Omitted on payment channels created before enabling the [fixPayChanRecipientOwnerDir amendment][]. | +| `Expiration` | Number | UInt32 | No | The mutable expiration time for this payment channel, in [seconds since the Ripple Epoch][]. The channel is expired if this value is present and smaller than the previous ledger's [`close_time` field](ledger-header.html). See [Setting Channel Expiration](#setting-channel-expiration) for more details. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `PayChannel` objects. The value is always `0`. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0078`, mapped to the string `PayChannel`, indicates that this object is a payment channel object. | +| `OwnerNode` | String | UInt64 | Yes | A hint indicating which page of the source address's owner directory links to this object, in case the directory consists of multiple pages. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| `PublicKey` | String | Blob | Yes | Public key, in hexadecimal, of the key pair that can be used to sign claims against this channel. This can be any valid secp256k1 or Ed25519 public key. This is set by the transaction that created the channel and must match the public key used in claims against the channel. The channel source address can also send XRP from this channel to the destination without signed claims. | +| `SettleDelay` | Number | UInt32 | Yes | Number of seconds the source address must wait to close the channel if it still has any XRP in it. Smaller values mean that the destination address has less time to redeem any outstanding claims after the source address requests to close the channel. Can be any value that fits in a 32-bit unsigned integer (0 to 2^32-1). This is set by the transaction that creates the channel. | +| `SourceTag` | Number | UInt32 | No | An arbitrary tag to further specify the source for this payment channel, such as a hosted recipient at the owner's address. | ## Setting Channel Expiration diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/ripplestate.md b/content/references/protocol-reference/ledger-data/ledger-object-types/ripplestate.md index bb89e39c1b..b57786a84c 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/ripplestate.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/ripplestate.md @@ -50,21 +50,21 @@ The ["issuer"](trust-lines-and-issuing.html) for the balance in a trust line dep A `RippleState` object has the following fields: -| Name | JSON Type | Internal Type | Description | -|-----------------|-----------|---------------|-------------| -| `Balance` | Object | Amount | The balance of the trust line, from the perspective of the low account. A negative balance indicates that the high account holds tokens issued by the low account. The issuer in this is always set to the neutral value [ACCOUNT_ONE](accounts.html#special-addresses). | -| `Flags` | Number | UInt32 | A bit-map of boolean options enabled for this object. | -| `HighLimit` | Object | Amount | The limit that the high account has set on the trust line. The `issuer` is the address of the high account that set this limit. | -| `HighNode` | String | UInt64 | (Omitted in some historical ledgers) A hint indicating which page of the high account's owner directory links to this object, in case the directory consists of multiple pages. | -| `HighQualityIn` | Number | UInt32 | (Optional) The inbound quality set by the high account, as an integer in the implied ratio `HighQualityIn`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | -| `HighQualityOut` | Number | UInt32 | (Optional) The outbound quality set by the high account, as an integer in the implied ratio `HighQualityOut`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | -| `LedgerEntryType` | String | UInt16 | The value `0x0072`, mapped to the string `RippleState`, indicates that this object is a RippleState object. | -| `LowLimit` | Object | Amount | The limit that the low account has set on the trust line. The `issuer` is the address of the low account that set this limit. | -| `LowNode` | String | UInt64 | (Omitted in some historical ledgers) A hint indicating which page of the low account's owner directory links to this object, in case the directory consists of multiple pages. | -| `LowQualityIn` | Number | UInt32 | (Optional) The inbound quality set by the low account, as an integer in the implied ratio `LowQualityIn`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | -| `LowQualityOut` | Number | UInt32 | (Optional) The outbound quality set by the low account, as an integer in the implied ratio `LowQualityOut`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| Name | JSON Type | Internal Type | Required? | Description | +|:--------------------|:----------|:--------------|:----------|:------------| +| `Balance` | Object | Amount | Yes | The balance of the trust line, from the perspective of the low account. A negative balance indicates that the high account holds tokens issued by the low account. The issuer in this is always set to the neutral value [ACCOUNT_ONE](accounts.html#special-addresses). | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean options enabled for this object. | +| `HighLimit` | Object | Amount | Yes | The limit that the high account has set on the trust line. The `issuer` is the address of the high account that set this limit. | +| `HighNode` | String | UInt64 | Yes | (Omitted in some historical ledgers) A hint indicating which page of the high account's owner directory links to this object, in case the directory consists of multiple pages. | +| `HighQualityIn` | Number | UInt32 | No | The inbound quality set by the high account, as an integer in the implied ratio `HighQualityIn`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | +| `HighQualityOut` | Number | UInt32 | No | The outbound quality set by the high account, as an integer in the implied ratio `HighQualityOut`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0072`, mapped to the string `RippleState`, indicates that this object is a RippleState object. | +| `LowLimit` | Object | Amount | Yes | The limit that the low account has set on the trust line. The `issuer` is the address of the low account that set this limit. | +| `LowNode` | String | UInt64 | Yes | (Omitted in some historical ledgers) A hint indicating which page of the low account's owner directory links to this object, in case the directory consists of multiple pages. | +| `LowQualityIn` | Number | UInt32 | No | The inbound quality set by the low account, as an integer in the implied ratio `LowQualityIn`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | +| `LowQualityOut` | Number | UInt32 | No | The outbound quality set by the low account, as an integer in the implied ratio `LowQualityOut`:1,000,000,000. As a special case, the value 0 is equivalent to 1 billion, or face value. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | ## RippleState Flags diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/signerlist.md b/content/references/protocol-reference/ledger-data/ledger-object-types/signerlist.md index ff9b5801ff..18bff66312 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/signerlist.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/signerlist.md @@ -52,16 +52,16 @@ The `SignerList` object type represents a list of parties that, as a group, are A `SignerList` object has the following fields: -| Name | JSON Type | Internal Type | Description | -|:--------------------|:----------|:--------------|:---------------------------| -| `Flags` | Number | UInt32 | A bit-map of Boolean flags enabled for this signer list. For more information, see [SignerList Flags](#signerlist-flags). | -| `LedgerEntryType` | String | UInt16 | The value `0x0053`, mapped to the string `SignerList`, indicates that this object is a SignerList object. | -| `OwnerNode` | String | UInt64 | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the transaction that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | -| `SignerEntries` | Array | Array | An array of Signer Entry objects representing the parties who are part of this signer list. | -| `SignerListID` | Number | UInt32 | An ID for this signer list. Currently always set to `0`. If a future [amendment](amendments.html) allows multiple signer lists for an account, this may change. | -| `SignerQuorum` | Number | UInt32 | A target number for signer weights. To produce a valid signature for the owner of this SignerList, the signers must provide valid signatures whose weights sum to this value or more. | +| Name | JSON Type | Internal Type | Required? | Description | +|:--------------------|:----------|:--------------|:----------|:---------------------------| +| `Flags` | Number | UInt32 | Yes | A bit-map of Boolean flags enabled for this signer list. For more information, see [SignerList Flags](#signerlist-flags). | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0053`, mapped to the string `SignerList`, indicates that this object is a SignerList object. | +| `OwnerNode` | String | UInt64 | Yes | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the transaction that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| `SignerEntries` | Array | Array | Yes | An array of Signer Entry objects representing the parties who are part of this signer list. | +| `SignerListID` | Number | UInt32 | Yes | An ID for this signer list. Currently always set to `0`. If a future [amendment](amendments.html) allows multiple signer lists for an account, this may change. | +| `SignerQuorum` | Number | UInt32 | Yes | A target number for signer weights. To produce a valid signature for the owner of this SignerList, the signers must provide valid signatures whose weights sum to this value or more. | The `SignerEntries` may be any combination of funded and unfunded addresses that use either secp256k1 or ed25519 keys. diff --git a/content/references/protocol-reference/ledger-data/ledger-object-types/ticket.md b/content/references/protocol-reference/ledger-data/ledger-object-types/ticket.md index a0d0c31756..e1fe79de63 100644 --- a/content/references/protocol-reference/ledger-data/ledger-object-types/ticket.md +++ b/content/references/protocol-reference/ledger-data/ledger-object-types/ticket.md @@ -31,15 +31,15 @@ The `Ticket` object type represents a [Ticket](tickets.html), which tracks an ac A `Ticket` object has the following fields: -| Name | JSON Type | Internal Type | Description | -|:--------------------|:----------|:--------------|:---------------------------| -| `Account` | String | AccountID | The [account](accounts.html) that owns this Ticket. | -| `Flags` | Number | UInt32 | A bit-map of Boolean flags enabled for this Ticket. Currently, there are no flags defined for Tickets. | -| `LedgerEntryType` | String | UInt16 | The value `0x0054`, mapped to the string `Ticket`, indicates that this object is a {{currentpage.name}} object. | -| `OwnerNode` | String | UInt64 | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | -| `PreviousTxnID` | String | Hash256 | The identifying hash of the [transaction](transaction-basics.html) that most recently modified this object. | -| `PreviousTxnLgrSeq` | Number | UInt32 | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | -| `TicketSequence` | Number | UInt32 | The [Sequence Number][] this Ticket sets aside. | +| Name | JSON Type | Internal Type | Required? | Description | +|:--------------------|:----------|:--------------|:----------|:---------------------------| +| `Account` | String | AccountID | Yes | The [account](accounts.html) that owns this Ticket. | +| `Flags` | Number | UInt32 | Yes | A bit-map of boolean flags enabled for this object. Currently, the protocol defines no flags for `Ticket` objects. The value is always `0`. | +| `LedgerEntryType` | String | UInt16 | Yes | The value `0x0054`, mapped to the string `Ticket`, indicates that this object is a {{currentpage.name}} object. | +| `OwnerNode` | String | UInt64 | Yes | A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages. **Note:** The object does not contain a direct link to the owner directory containing it, since that value can be derived from the `Account`. | +| `PreviousTxnID` | String | Hash256 | Yes | The identifying hash of the [transaction](transaction-basics.html) that most recently modified this object. | +| `PreviousTxnLgrSeq` | Number | UInt32 | Yes | The [index of the ledger][Ledger Index] that contains the transaction that most recently modified this object. | +| `TicketSequence` | Number | UInt32 | Yes | The [Sequence Number][] this Ticket sets aside. | ## {{currentpage.name}} ID Format