This commit is contained in:
nitowa
2023-08-15 22:28:03 +02:00
commit 1dae68b1c7
5529 changed files with 1659171 additions and 0 deletions
@@ -0,0 +1,30 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "accountDelete",
"link": "account-delete",
"type": "object",
"properties": {
"destination": {
"$ref": "address",
"description": "Address of an account to receive any leftover XRP after deleting the sending account. Must be a funded account in the ledger, and must not be the sending account."
},
"destinationTag": {
"$ref": "tag",
"description": "(Optional) Arbitrary destination tag that identifies a hosted recipient or other information for the recipient of the deleted account's leftover XRP."
},
"destinationXAddress": {
"$ref": "address",
"description": "X-address of an account to receive any leftover XRP after deleting the sending account. Must be a funded account in the ledger, and must not be the sending account."
},
"memos": {"$ref": "memos"}
},
"anyOf": [
{
"required": ["destination"]
},
{
"required": ["destinationXAddress"]
}
],
"additionalProperties": false
}
@@ -0,0 +1,15 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "checkCancel",
"link": "check-cancel",
"type": "object",
"properties": {
"checkID": {
"$ref": "hash256",
"description": "The ID of the Check ledger object to cancel, as a 64-character hexadecimal string."
},
"memos": {"$ref": "memos"}
},
"required": ["checkID"],
"additionalProperties": false
}
@@ -0,0 +1,27 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "checkCash",
"link": "check-cash",
"type": "object",
"properties": {
"checkID": {
"$ref": "hash256",
"description": "The ID of the Check ledger object to cash, as a 64-character hexadecimal string."
},
"amount": {
"$ref": "laxAmount",
"description": "Redeem the Check for exactly this amount, if possible. The currency must match that of the sendMax of the corresponding CheckCreate transaction. You must provide either this field or deliverMin."
},
"deliverMin": {
"$ref": "laxAmount",
"description": "Redeem the Check for at least this amount and for as much as possible. The currency must match that of the sendMax of the corresponding CheckCreate transaction. You must provide either this field or amount."
},
"memos": {"$ref": "memos"}
},
"required": ["checkID"],
"oneOf": [
{"required": ["amount"]},
{"required": ["deliverMin"]}
],
"additionalProperties": false
}
@@ -0,0 +1,32 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "checkCreate",
"link": "check-create",
"type": "object",
"properties": {
"destination": {
"$ref": "address",
"description": "Address of the account that can cash the check."
},
"sendMax": {
"$ref": "laxAmount",
"description": "Amount of source currency the check is allowed to debit the sender, including transfer fees on non-XRP currencies."
},
"destinationTag": {
"$ref": "tag",
"description": "Destination tag that identifies the reason for the check, or a hosted recipient to pay."
},
"expiration": {
"type": "string",
"format": "date-time",
"description": "Time after which the check is no longer valid."
},
"invoiceID": {
"$ref": "hash256",
"description": "256-bit hash, as a 64-character hexadecimal string, representing a specific reason or identifier for this check."
},
"memos": {"$ref": "memos"}
},
"required": ["destination", "sendMax"],
"additionalProperties": false
}
@@ -0,0 +1,22 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "depositPreauth",
"link": "deposit-preauth",
"type": "object",
"properties": {
"authorize": {
"$ref": "address",
"description": "Address of the account that can cash the check."
},
"unauthorize": {
"$ref": "address",
"description": "Address of the account that can cash the check."
},
"memos": {"$ref": "memos"}
},
"oneOf": [
{"required": ["authorize"]},
{"required": ["unauthorize"]}
],
"additionalProperties": false
}
@@ -0,0 +1,19 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "escrowCancellation",
"link": "escrow-cancellation",
"type": "object",
"properties": {
"memos": {"$ref": "memos"},
"owner": {
"$ref": "address",
"description": "The address of the owner of the escrow to cancel."
},
"escrowSequence": {
"$ref": "sequence",
"description": "The [account sequence number](#account-sequence-number) of the [Escrow Creation](#escrow-creation) transaction for the escrow to cancel."
}
},
"required": ["owner", "escrowSequence"],
"additionalProperties": false
}
@@ -0,0 +1,42 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "escrowCreation",
"link": "escrow-creation",
"type": "object",
"properties": {
"amount": {
"$ref": "value",
"description": "Amount of XRP for sender to escrow."
},
"destination": {
"$ref": "address",
"description": "Address to receive escrowed XRP."
},
"memos": {"$ref": "memos"},
"condition": {
"type": "string",
"description": "A hex value representing a [PREIMAGE-SHA-256 crypto-condition](https://tools.ietf.org/html/draft-thomas-crypto-conditions-02#section-8.1). If present, `fulfillment` is required upon execution.",
"pattern": "^[A-F0-9]{0,256}$"
},
"allowCancelAfter": {
"type": "string",
"format": "date-time",
"description": "If present, the escrow may be cancelled after this time."
},
"allowExecuteAfter": {
"type": "string",
"format": "date-time",
"description": "If present, the escrow can not be executed before this time."
},
"sourceTag": {
"$ref": "tag",
"description": "Source tag."
},
"destinationTag": {
"$ref": "tag",
"description": "Destination tag."
}
},
"required": ["amount", "destination"],
"additionalProperties": false
}
@@ -0,0 +1,29 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "escrowExecution",
"link": "escrow-execution",
"type": "object",
"properties": {
"memos": {"$ref": "memos"},
"owner": {
"$ref": "address",
"description": "The address of the owner of the escrow to execute."
},
"escrowSequence": {
"$ref": "sequence",
"description": "The [account sequence number](#account-sequence-number) of the [Escrow Creation](#escrow-creation) transaction for the escrow to execute."
},
"condition": {
"type": "string",
"description": "A hex value representing a [PREIMAGE-SHA-256 crypto-condition](https://tools.ietf.org/html/draft-thomas-crypto-conditions-02#section-8.1). This must match the original `condition` from the escrow creation transaction.",
"pattern": "^[A-F0-9]{0,256}$"
},
"fulfillment": {
"type": "string",
"description": "A hex value representing the [PREIMAGE-SHA-256 crypto-condition](https://tools.ietf.org/html/draft-thomas-crypto-conditions-02#section-8.1) fulfillment for `condition`.",
"pattern": "^[A-F0-9]+$"
}
},
"required": ["owner", "escrowSequence"],
"additionalProperties": false
}
@@ -0,0 +1,39 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "getPayment",
"description": "A specification of a payment in a response for getTransaction or getTransactions.",
"type": "object",
"properties": {
"source": {
"$ref": "sourceAdjustment",
"description": "The source of the funds to be sent."
},
"destination": {
"$ref": "destinationAddressTag",
"description": "The destination of the funds to be sent. Since this is a payment response, the amount is not shown here. For the amount that the transaction delivered, see `outcome.deliveredAmount`."
},
"paths": {
"type": "string",
"description": "The paths of trustlines and orders to use in executing the payment."
},
"memos": {"$ref": "memos"},
"invoiceID": {
"description": "A 256-bit hash that can be used to identify a particular payment.",
"$ref": "hash256"
},
"allowPartialPayment": {
"description": "If true, this payment can deliver less than the full amount.",
"type": "boolean"
},
"noDirectRipple": {
"description": "If true and paths are specified, the sender would like the XRP Ledger to disregard any direct paths from the source account to the destination account. This may be used to take advantage of an arbitrage opportunity or by gateways wishing to issue balances from a hot wallet to a user who has mistakenly set a trustline directly to the hot wallet.",
"type": "boolean"
},
"limitQuality": {
"description": "Only take paths where all the conversions have an input:output ratio that is equal or better than the ratio of destination.amount:source.maxAmount.",
"type": "boolean"
}
},
"required": ["source", "destination"],
"additionalProperties": false
}
@@ -0,0 +1,15 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "orderCancellation",
"link": "order-cancellation",
"type": "object",
"properties": {
"orderSequence": {
"$ref": "sequence",
"description": "The [account sequence number](#account-sequence-number) of the order to cancel."
},
"memos": {"$ref": "memos"}
},
"required": ["orderSequence"],
"additionalProperties": false
}
@@ -0,0 +1,49 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "order",
"link": "order",
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": ["buy", "sell"],
"description": "Equal to \"buy\" for buy orders and \"sell\" for sell orders."
},
"quantity": {
"$ref": "amount",
"description": "The amount of currency to buy or sell."
},
"totalPrice": {
"$ref": "amount",
"description": "The total price to be paid for the `quantity` to be bought or sold."
},
"immediateOrCancel": {
"type": "boolean",
"description": "Treat the offer as an [Immediate or Cancel order](http://en.wikipedia.org/wiki/Immediate_or_cancel). If enabled, do not create an object in the ledger that can be matched later: instead, only execute as much as can be fulfilled immediately. This cannot be used with `fillOrKill`."
},
"fillOrKill": {
"type": "boolean",
"description": "Treat the offer as a [Fill or Kill order](http://en.wikipedia.org/wiki/Fill_or_kill). Only attempt to match existing offers in the ledger, and only do so if the entire quantity can be exchanged. This cannot be used with `immediateOrCancel`."
},
"passive": {
"description": "If enabled, the offer does not consume offers that exactly match it, and instead becomes an Offer node in the ledger. It still consumes offers that cross it.",
"type": "boolean"
},
"expirationTime": {
"type": "string",
"format": "date-time",
"description": "Time after which the offer is no longer active, as an [ISO 8601 date-time](https://en.wikipedia.org/wiki/ISO_8601)."
},
"orderToReplace": {
"$ref": "sequence",
"description": "The [account sequence number](#account-sequence-number) of an order to cancel before the new order is created, effectively replacing the old order."
},
"memos": {"$ref": "memos"}
},
"required": ["direction", "quantity", "totalPrice"],
"additionalProperties": false,
"not": {
"description": "immediateOrCancel and fillOrKill are mutually exclusive",
"required": ["immediateOrCancel", "fillOrKill"]
}
}
@@ -0,0 +1,39 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "paymentChannelClaim",
"link": "payment-channel-claim",
"type": "object",
"properties": {
"channel": {
"$ref": "hash256",
"description": "256-bit hexadecimal channel identifier."
},
"amount": {
"$ref": "value",
"description": "Amount of XRP authorized by this signature."
},
"balance": {
"$ref": "value",
"description": "Total XRP balance delivered by this channel after claim is processed."
},
"signature": {
"$ref": "signature",
"description": "Signed claim authorizing withdrawal of XRP from the channel. (Required except from the channel's source address.)"
},
"publicKey": {
"$ref": "publicKey",
"description": "Public key of the channel. (For verifying the signature.)"
},
"renew": {
"type": "boolean",
"description": "Clear the channel's expiration time."
},
"close": {
"type": "boolean",
"description": "Request to close the channel. If the channel has no XRP remaining or the destination address requests it, closes the channel immediately (returning unclaimed XRP to the source address). Otherwise, sets the channel to expire after settleDelay seconds have passed."
},
"memos": {"$ref": "memos"}
},
"required": ["channel"],
"additionalProperties": false
}
@@ -0,0 +1,40 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "paymentChannelCreate",
"link": "payment-channel-create",
"type": "object",
"properties": {
"amount": {
"$ref": "value",
"description": "Amount of XRP for sender to set aside in this channel."
},
"destination": {
"$ref": "address",
"description": "Address to receive XRP claims against this channel."
},
"settleDelay": {
"type": "number",
"description": "Amount of seconds the source address must wait before closing the channel if it has unclaimed XRP."
},
"publicKey": {
"$ref": "publicKey",
"description": "Public key of the key pair the source may use to sign claims against this channel."
},
"cancelAfter": {
"type": "string",
"format": "date-time",
"description": "Time when this channel expires. This expiration cannot be changed after creating the channel."
},
"sourceTag": {
"$ref": "tag",
"description": "Source tag."
},
"destinationTag": {
"$ref": "tag",
"description": "Destination tag."
},
"memos": {"$ref": "memos"}
},
"required": ["amount", "destination", "settleDelay", "publicKey"],
"additionalProperties": false
}
@@ -0,0 +1,24 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "paymentChannelFund",
"link": "payment-channel-fund",
"type": "object",
"properties": {
"amount": {
"$ref": "value",
"description": "Amount of XRP to fund the channel with."
},
"channel": {
"$ref": "hash256",
"description": "256-bit hexadecimal channel identifier."
},
"expiration": {
"type": "string",
"format": "date-time",
"description": "New expiration for this channel. (This does not change the cancelAfter expiration, if the channel has one.) Cannot move the expiration sooner than settleDelay seconds from time of the request."
},
"memos": {"$ref": "memos"}
},
"required": ["amount", "channel"],
"additionalProperties": false
}
@@ -0,0 +1,39 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "payment",
"link": "payment",
"type": "object",
"properties": {
"source": {
"$ref": "sourceAdjustment",
"description": "The source of the funds to be sent."
},
"destination": {
"$ref": "destinationAdjustment",
"description": "The destination of the funds to be sent."
},
"paths": {
"type": "string",
"description": "The paths of trustlines and orders to use in executing the payment."
},
"memos": {"$ref": "memos"},
"invoiceID": {
"description": "A 256-bit hash that can be used to identify a particular payment.",
"$ref": "hash256"
},
"allowPartialPayment": {
"description": "If true, this payment can deliver less than the full amount.",
"type": "boolean"
},
"noDirectRipple": {
"description": "If true and paths are specified, the sender would like the XRP Ledger to disregard any direct paths from the source account to the destination account. This may be used to take advantage of an arbitrage opportunity or by gateways wishing to issue balances from a hot wallet to a user who has mistakenly set a trustline directly to the hot wallet.",
"type": "boolean"
},
"limitQuality": {
"description": "Only take paths where all the conversions have an input:output ratio that is equal or better than the ratio of destination.amount:source.maxAmount.",
"type": "boolean"
}
},
"required": ["source", "destination"],
"additionalProperties": false
}
@@ -0,0 +1,20 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "settings",
"link": "settings",
"$ref": "settingsPlusMemos",
"oneOf": [
{
"required": ["memos"],
"minProperties": 2,
"maxProperties": 2
},
{
"not": {
"required": ["memos"]
},
"minProperties": 1,
"maxProperties": 1
}
]
}
@@ -0,0 +1,43 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "trustline",
"link": "trustline",
"type": "object",
"properties": {
"currency": {
"$ref": "currency",
"description": "The currency this trustline applies to."
},
"counterparty": {
"$ref": "address",
"description": "The address of the account this trustline extends trust to."
},
"limit": {
"$ref": "value",
"description": "The maximum amount that the owner of the trustline can be owed through the trustline."
},
"qualityIn": {
"$ref": "quality",
"description": "Incoming balances on this trustline are valued at this ratio."
},
"qualityOut": {
"$ref": "quality",
"description": "Outgoing balances on this trustline are valued at this ratio."
},
"ripplingDisabled": {
"type": "boolean",
"description": "If true, payments cannot ripple through this trustline."
},
"authorized": {
"type": "boolean",
"description": "If true, authorize the counterparty to hold issuances from this account."
},
"frozen": {
"type": "boolean",
"description": "If true, the trustline is frozen, which means that funds can only be sent to the owner."
},
"memos": {"$ref": "memos"}
},
"required": ["currency", "counterparty", "limit"],
"additionalProperties": false
}