-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathaccount_info.yaml
352 lines (341 loc) · 15 KB
/
account_info.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
components:
schemas:
AccountInfoRequest:
description: >
The account_info command retrieves information about an account, its activity, and its XRP balance.
All information retrieved is relative to a particular version of the ledger.
Returns an AccountInfoResponse
type: object
allOf:
- $ref: '../base.yaml#/components/schemas/BaseRequest'
- $ref: '../base.yaml#/components/schemas/LookupByLedgerRequest'
properties:
account:
type: string
description: The account to look up.
queue:
type: boolean
description: If true, return stats about queued transactions sent by this account. Can only be used when querying for the data from the current open ledger. Not available from servers in Reporting Mode.
signer_lists:
type: boolean
description: >
API v1: If true, return any SignerList objects associated with this account.
API v2: Identical to v1, but also returns an invalidParams error if you provide a non-boolean value.
required:
- account
AccountRoot:
type: object
description: An AccountRoot ledger entry type describes a single account, its settings, and XRP balance.
properties:
Account:
type: string
description: The identifying (classic) address of this account.
AccountTxnID:
type: string
description: The identifying hash of the transaction most recently sent by this account. (Optional)
AMMID:
type: string
description: The ledger entry ID of the corresponding AMM ledger entry. (Optional)
Balance:
type: string
description: The account's current XRP balance in drops, represented as a string. (Optional)
BurnedNFTokens:
type: number
format: uint32
description: How many total of this account's issued non-fungible tokens have been burned. (Optional)
Domain:
type: string
description: A domain associated with this account. Cannot be more than 256 bytes in length. (Optional)
EmailHash:
type: string
description: The md5 hash of an email address. Clients can use this to look up an avatar. (Optional)
FirstNFTokenSequence:
type: number
format: uint32
description: The account's Sequence Number at the time it minted its first non-fungible-token. (Optional)
LedgerEntryType:
type: string
format: uint16
description: The value 0x0061, mapped to the string AccountRoot, indicates that this is an AccountRoot object.
MessageKey:
type: string
description: A public key that may be used to send encrypted messages to this account. Must be exactly 33 bytes. (Optional)
MintedNFTokens:
type: number
format: uint32
description: How many total non-fungible tokens have been minted by and on behalf of this account. (Optional)
NFTokenMinter:
type: string
description: Another account that can mint non-fungible tokens on behalf of this account. (Optional)
OwnerCount:
type: number
format: uint32
description: The number of objects this account owns in the ledger, which contributes to its owner reserve.
PreviousTxnID:
type: string
description: The identifying hash of the transaction that most recently modified this object.
PreviousTxnLgrSeq:
type: number
format: uint32
description: The index of the ledger that contains the transaction that most recently modified this object.
RegularKey:
type: string
description: The address of a key pair that can be used to sign transactions for this account instead of the master key. (Optional)
Sequence:
type: number
format: uint32
description: The sequence number of the next valid transaction for this account.
TicketCount:
type: number
format: uint32
description: How many Tickets this account owns in the ledger. (Optional)
TickSize:
type: number
format: uint8
description: How many significant digits to use for exchange rates of Offers involving currencies issued by this address. (Optional)
TransferRate:
type: number
format: uint32
description: A transfer fee to charge other users for sending currency issued by this account to each other. (Optional)
WalletLocator:
type: string
description: An arbitrary 256-bit value that users can set. (Optional)
WalletSize:
type: number
format: uint32
description: Unused. (The code supports this field but there is no way to set it.) (Optional)
required:
- Account
- LedgerEntryType
- PreviousTxnID
- PreviousTxnLgrSeq
- OwnerCount
- Sequence
AccountRootWithSignerLists:
allOf:
- $ref: '#/components/schemas/AccountRoot'
- type: object
properties:
signer_lists:
type: array
description: Array of SignerList ledger objects associated with this account for Multi-Signing.
items:
$ref: '#/components/schemas/SignerList'
AccountFlags:
type: object
properties:
defaultRipple:
type: boolean
description: If true, the account allows rippling on its trust lines by default.
depositAuth:
type: boolean
description: If true, the account is using Deposit Authorization and does not accept any payments from unknown parties.
disableMasterKey:
type: boolean
description: If true, the account's master key pair is disabled.
disallowIncomingCheck:
type: boolean
description: If true, the account does not allow others to send Checks to it.
disallowIncomingNFTokenOffer:
type: boolean
description: If true, the account does not allow others to make NFT buy or sell offers to it.
disallowIncomingPayChan:
type: boolean
description: If true, the account does not allow others to make Payment Channels to it.
disallowIncomingTrustline:
type: boolean
description: If true, the account does not allow others to make trust lines to it.
disallowIncomingXRP:
type: boolean
description: If true, the account does not want to receive XRP from others. This is advisory and not enforced at a protocol level.
globalFreeze:
type: boolean
description: If true, all tokens issued by the account are currently frozen.
noFreeze:
type: boolean
description: If true, the account has permanently given up the abilities to freeze individual trust lines or end a global freeze.
passwordSpent:
type: boolean
description: If false, the account can send a special key reset transaction with a transaction cost of 0.
requireAuthorization:
type: boolean
description: If true, the account is using Authorized Trust Lines to limit who can hold the tokens it issues.
requireDestinationTag:
type: boolean
description: If true, the account requires a destination tag on all payments it receives.
Transactions:
type: object
properties:
auth_change:
type: boolean
description: Whether this transaction changes this address's ways of authorizing transactions.
fee:
type: string
description: The Transaction Cost of this transaction, in drops of XRP.
fee_level:
type: string
description: The transaction cost of this transaction, relative to the minimum cost for this type of transaction, in fee levels.
max_spend_drops:
type: string
description: The maximum amount of XRP, in drops, this transaction could send or destroy.
seq:
type: integer
description: The Sequence Number of this transaction.
QueueData:
type: object
properties:
txn_count:
type: integer
description: Number of queued transactions from this address.
auth_change_queued:
type: boolean
description: Whether a transaction in the queue changes this address's ways of authorizing transactions.
lowest_sequence:
type: integer
description: The lowest Sequence Number among transactions queued by this address.
highest_sequence:
type: integer
description: The highest Sequence Number among transactions queued by this address.
max_spend_drops_total:
type: string
description: Integer amount of drops of XRP that could be debited from this address if every transaction in the queue consumes the maximum amount of XRP possible.
transactions:
type: array
description: Information about each queued transaction from this address.
items:
$ref: '#/components/schemas/Transactions'
SignerEntry:
type: object
properties:
Account:
type: string
description: An XRP Ledger address whose signature contributes to the multi-signature. It does not need to be a funded address in the ledger.
format: AccountID
SignerWeight:
type: number
description: The weight of a signature from this signer. A multi-signature is only valid if the sum weight of the signatures provided meets or exceeds the signer list's SignerQuorum value.
format: UInt16
WalletLocator:
type: string
description: Arbitrary hexadecimal data. This can be used to identify the signer or for other, related purposes. (Optional)
format: Hash256
SignerList:
type: object
properties:
LedgerEntryType:
type: string
description: The value 0x0053, mapped to the string SignerList, indicates that this is a SignerList ledger entry.
format: UInt16
OwnerNode:
type: string
description: A hint indicating which page of the owner directory links to this object, in case the directory consists of multiple pages.
format: UInt64
PreviousTxnID:
type: string
description: The identifying hash of the transaction that most recently modified this object.
format: Hash256
PreviousTxnLgrSeq:
type: integer
description: The index of the ledger that contains the transaction that most recently modified this object.
format: UInt32
SignerEntries:
type: array
description: An array of Signer Entry objects representing the parties who are part of this signer list.
items:
$ref: '#/components/schemas/SignerEntry'
SignerListID:
type: integer
description: An ID for this signer list. Currently always set to 0. If a future amendment allows multiple signer lists for an account, this may change.
format: UInt32
SignerQuorum:
type: integer
description: 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.
format: UInt32
required:
- LedgerEntryType
- OwnerNode
- PreviousTxnID
- PreviousTxnLgrSeq
- SignerEntries
- SignerListID
- SignerQuorum
AccountInfoSuccessResponseBase:
allOf:
- $ref: '../base.yaml#/components/schemas/BaseSuccessResponse'
- type: object
properties:
account_flags:
$ref: '#/components/schemas/AccountFlags'
description: The account's flag statuses.
ledger_current_index:
type: integer
description: The ledger index of the current in-progress ledger.
ledger_index:
type: integer
description: The ledger index of the ledger version used when retrieving this information.
queue_data:
$ref: '#/components/schemas/QueueData'
description: Information about queued transactions sent by this account.
validated:
type: boolean
description: True if this data is from a validated ledger version; if omitted or set to false, this data is not final.
AccountInfoSuccessResponseV1:
$id: AccountInfoResponseSuccess
allOf:
- $ref: '#/components/schemas/AccountInfoSuccessResponseBase'
- type: object
properties:
account_data:
$ref: '#/components/schemas/AccountRootWithSignerLists'
description: The AccountRoot ledger object with this account's information, including signer lists, as stored in the ledger.
AccountInfoSuccessResponseV2:
allOf:
- $ref: '#/components/schemas/AccountInfoSuccessResponseBase'
- type: object
properties:
account_data:
$ref: '#/components/schemas/AccountRoot'
description: The AccountRoot ledger object with this account's information, as stored in the ledger.
signer_lists:
type: array
description: Array of SignerList ledger objects associated with this account for Multi-Signing.
items:
$ref: '#/components/schemas/SignerList'
# Only when the input for signer_lists in the request is not of type boolean.
error:
type: string
description: Error type.
example: 'invalidParams'
error_code:
type: integer
description: Error code.
example: 31
error_message:
type: string
description: Error message.
example: 'Invalid parameters.'
AccountInfoErrorResponse:
type: object
properties:
error:
type: string
oneOf:
- $ref: '../base.yaml#/components/schemas/UniversalErrorResponseCodes'
- enum:
- invalidParams
- actNotFound
- lgrNotFound
description: >
* `invalidParams` - One or more fields are specified incorrectly, or one or more required fields are missing.
* `actNotFound` - The address specified in the `account` field of the request does not correspond to an account in the ledger.
* `lgrNotFound` - The ledger specified by the `ledger_hash` or `ledger_index` does not exist, or it does exist but the server does not have it.
status:
type: string
enum:
- error
request:
$ref: '#/components/schemas/AccountInfoRequest'
required:
- status
- error
- request