[DOC] charts - total_value_sent, transaction_stats, value_sent methods

This commit is contained in:
mDuo13
2015-04-01 19:08:32 -07:00
parent 85377d688e
commit e255879488

View File

@@ -462,7 +462,7 @@ An example of a successful response:
| ledgerIndex | Number (Ledger Index) | The identifying sequence number of the ledger that included this transaction. |
**If the results are reduced** (the request used `"reduce":true`), then each result represents an interval of time, with the following attributes, in order:
**If the results are reduced** (the request used `"reduce":true`), then each result represents an interval of time, with the following attributes:
| Field | Type | Description |
|-------|------|-------------|
@@ -473,7 +473,7 @@ An example of a successful response:
| TrustSet | Number | (May be omitted) The number of TrustSet transactions during this interval sent by the specified account. |
| AccountSet | Number | (May be omitted) The number of AccountSet transactions during this interval sent by the specified account. |
| SetFee | Number | (May be omitted) The number of SetFee pseudo-transactions during this interval sent by the specified account. Since SetFee is a pseudo-transaction, this transaction type only appears for [ACCOUNT_ZERO](https://wiki.ripple.com/Accounts#ACCOUNT_ZERO). |
| SetRegularKey | Number | (May be omitted) The number of Payment transactions during this interval sent by the specified account. |
| SetRegularKey | Number | (May be omitted) The number of SetRegularKey transactions during this interval sent by the specified account. |
Each of the transaction type attributes is omitted when there is no data. In CSV or array format, columns are included for each type that has a nonzero value in any interval. In JSON format, each interval includes fields only for the types that have nonzero values in that particular interval.
@@ -487,7 +487,7 @@ Each of the transaction type attributes is omitted when there is no data. In CSV
<div class='multicode'>
*JSON*
*Request*
```
POST /api/account_transactions
@@ -3072,5 +3072,547 @@ Each member of the `components` array is an object representing a currency issue
| name | String | (Omitted for XRP) The name of the gateway issuing this currency. |
| hotwallets | Array of Strings | (Omitted for XRP) Each member of this list is the Ripple Address of an account that the gateway uses as a hot wallet. |
| amount | Number | The total amount of this currency issued as of the requested time. |
| rate | Number | The amount of the `exchange` currency necessary to buy 1 unit of this currency. |
| rate | Number | The amount of the `exchange` currency necessary to buy 1 unit of this currency. (This is `0` if no amount exists at the time.) |
| convertedAmount | Number | The total amount of this currency issued as of the requested time, converted to the `exchange` currency. |
## Total Value Sent ##
[[Source]<br>](https://github.com/ripple/ripple-data-api/blob/develop/api/routes/totalValueSent.js "Source")
The total amount of money sent, in payments and currency exchanges, for a [curated list of currencies and issuers](https://github.com/ripple/ripple-data-api/blob/develop/api/library/metrics/transactionVolume.js). Results are normalized to a single currency.
#### Request Format ####
<div class='multicode'>
*Request*
```
POST /api/total_value_sent
{
"startTime": "2014-01-15 7:00 AM",
"endTime": "2014-01-16 8:00 PM",
"exchange": {
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
}
}
```
</div>
The request includes the following body parameters:
| Field | Value | Description |
|-------|-------|-------------|
| startTime | String ([Date-Time][]) | Retrieve information starting at this time. Defaults to 24 hours before the current time. |
| endTime | String ([Date-Time][]) | (Optional) Retrieve information ending at this time. Defaults to the current time. |
| exchange | Object ([Currency Object][]) | The currency from the request that is used to express the volume. |
#### Response Format ####
An example of a successful response:
```js
{
"startTime": "2014-01-15T00:00:00+00:00",
"endTime": "2014-01-16T00:00:00+00:00",
"exchange": {
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
},
"exchangeRate": 0.021579751827645943,
"total": 755505.9176608312,
"count": 12435,
"components": [
{
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"amount": 41127.707337329506,
"count": 217,
"rate": 1,
"convertedAmount": 41127.707337329506
},
{
"currency": "BTC",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"amount": 41.918516276559075,
"count": 111,
"rate": 836.3421115008575,
"convertedAmount": 35058.22041372048
},
{
"currency": "BTC",
"issuer": "rJHygWcTLVpSXkowott6kzgZU6viQSVYM1",
"amount": 1.2768145849842485,
"count": 14,
"rate": 849.2864280964847,
"convertedAmount": 1084.381298222768
},
{
"currency": "USD",
"issuer": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
"amount": 238540.0568303883,
"count": 205,
"rate": 0.902112870742654,
"convertedAmount": 215190.0554543774
},
{
"currency": "BTC",
"issuer": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
"amount": 1.2000099999999998,
"count": 5,
"rate": 694.0470227860804,
"convertedAmount": 832.8633678135243
},
{
"currency": "EUR",
"issuer": "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
"amount": 0,
"count": 0,
"rate": 0,
"convertedAmount": 0
},
{
"currency": "CNY",
"issuer": "rnuF96W4SZoCJmbHYBFoJZpR8eCaxNvekK",
"amount": 93632.5764443946,
"count": 161,
"rate": 0.16425234833298158,
"convertedAmount": 15379.370561459229
},
{
"currency": "CNY",
"issuer": "razqQKzJRdB4UxFPWf5NEpEG3WMkmwgcXA",
"amount": 26058.7512030993,
"count": 293,
"rate": 0.1625146758107911,
"convertedAmount": 4234.929503805744
},
{
"currency": "CNY",
"issuer": "rKiCet8SdvWxPXnAgYarFUXMh1zCPz432Y",
"amount": 0,
"count": 0,
"rate": 0,
"convertedAmount": 0
},
{
"currency": "JPY",
"issuer": "rMAz5ZnK73nyNUL4foAvaxdreczCkG3vA6",
"amount": 0,
"count": 0,
"rate": 0,
"convertedAmount": 0
},
{
"currency": "JPY",
"issuer": "r94s8px6kSw1uZ1MV98dhSRTvc6VMPoPcN",
"amount": 0,
"count": 0,
"rate": 0,
"convertedAmount": 0
},
{
"currency": "JPY",
"issuer": "rJRi8WW24gt9X85PHAxfWNPCizMMhqUQwg",
"amount": 0,
"count": 0,
"rate": 0,
"convertedAmount": 0
},
{
"currency": "KRW",
"issuer": "rUkMKjQitpgAM5WTGk79xpjT38DEJY283d",
"amount": 0,
"count": 0,
"rate": 0,
"convertedAmount": 0
},
{
"currency": "XRP",
"amount": 20509892.479722,
"count": 11429,
"rate": 0.021579751827645943,
"convertedAmount": 442598.3897241026
}
]
}
```
A successful result contains the following fields:
| Field | Type | Description |
|-------|------|-------------|
| startTime | Object ([Date-Time][]) | The starting time from the request. |
| endTime | Object ([Date-Time][]) | The ending time from the request. |
| exchange | Object ([Currency Object][]) | Totals are normalize to this currency from the request. |
| exchangeRate | Number | The amount of the `exchange` currency necessary to buy 1 XRP. |
| total | Number | The total value sent in the network, normalized to the `exchange` currency, during the requested time period. |
| count | Number | The number of transactions processed to calculate this result. |
| components | Array | An array of the currencies used to calculate this total. |
Each member of the `components` array is an Object with the following fields:
| Field | Type | Description |
|-------|------|-------------|
| currency | String | Currency code for this currency. |
| issuer | String (Ripple Address) | (Omitted for XRP) The Ripple account of the gateway issuing this currency. |
| amount | Number | The total amount of this currency sent during the requested time period. |
| count | Number | The total number of transactions that sent this currency during the requested time period. |
| rate | Number | The amount of the `exchange` currency necessary to buy 1 unit of this currency. (This is 0 if there are no transactions for this currency in the requested time period.) |
| convertedAmount | Number | The total amount of this currency sent during the requested time period, converted to the `exchange` currency. |
## Transaction Stats ##
[[Source]<br>](https://github.com/ripple/ripple-data-api/blob/develop/api/routes/transactionStats.js "Source")
Retrieve information about Ripple transactions during a specific time frame.
#### Request Format ####
<div class='multicode'>
*Reduced*
```
POST /api/transaction_stats
{
"startTime": "2015-01-15 07:00 Z",
"endTime": "2015-01-15 10:00 Z",
"timeIncrement": "hour",
"descending": true,
"reduce": true,
"format": "json"
}
```
*Expanded*
```
POST /api/transaction_stats
{
"startTime": "2015-01-15 07:00 Z",
"endTime": "2015-01-15 07:59 Z",
"descending": true,
"reduce": false,
"limit": 10,
"offset": 0,
"format": "json"
}
```
</div>
The request includes the following body parameters:
| Field | Value | Description |
|-------|-------|-------------|
| startTime | String ([Date-Time][]) | Retrieve information starting at this time. |
| endTime | String ([Date-Time][]) | Retrieve information ending at this time. |
| timeIncrement | String | (Optional) Divide results into intervals of the specified length: `year`, `month`, `day`, `hour`, `minute`, or `second`. The value `all` collapses the results into just one interval. Defaults to `all`. |
| descending | Boolean | (Optional) If true, return results in descending order. Defaults to false. |
| reduce | Boolean | (Optional) If `false`, include transactions individually instead of collapsing them into results over time. Ignored if `timeIncrement` is provided. Defaults to `true`. |
| limit | Number | (Optional) If reduce is `false`, this value defines the maximum number of transactions to return in one response. Use with `offset` to paginate results. Defaults to 500. |
| offset | Number | (Optional) If reduce is `false`, this value defines a number of transactions to skip before returning results. Use with `limit` to paginate results. Defaults to 0. |
| format | String | (Optional) The [Response Format][] to use: `csv` or `json`. If omitted, defaults to a CSV-like JSON array format. |
#### Response Format ####
The format of the response depends on the `format` and `reduce` parameters from the request. See [Response Format][] for details. Examples of successful responses:
<div class='multicode'>
*Reduced*
```
{
"startTime": "2015-01-15T10:00:00+00:00",
"endTime": "2015-01-15T07:00:00+00:00",
"timeIncrement": "hour",
"results": [
{
"OfferCancel": 14,
"OfferCreate": 26,
"Payment": 3,
"time": "2015-01-15T10:00:00+00:00"
},
{
"OfferCancel": 3996,
"OfferCreate": 10659,
"Payment": 1527,
"TrustSet": 24,
"AccountSet": 133,
"time": "2015-01-15T09:00:00+00:00"
},
{
"OfferCancel": 4680,
"OfferCreate": 12836,
"Payment": 3484,
"AccountSet": 153,
"TrustSet": 32,
"time": "2015-01-15T08:00:00+00:00"
},
{
"AccountSet": 139,
"OfferCancel": 3843,
"OfferCreate": 12593,
"Payment": 2686,
"TrustSet": 24,
"time": "2015-01-15T07:00:00+00:00"
}
]
}
```
*Expanded*
```
{
"startTime": "2015-01-15T07:59:00+00:00",
"endTime": "2015-01-15T07:00:00+00:00",
"results": [
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCancel",
"account": "rEepZ4ok2UWuvBedU54XjfjxeiePexxEsq",
"txHash": "3C32492DBB8D8CF3E605EA76EDFB9EF6FD80F7BAE7DF939CDEBC245CD7B4DBC8",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCancel",
"account": "rHsZHqa5oMQNL5hFm4kfLd47aEMYjPstpg",
"txHash": "054D836321179C5BEECB0CF08A2880BE235088B527AFB5ED249AE35FDECDAAEC",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCancel",
"account": "rhUWKrgoGztYKxbuaZMeLc3PdviRrCpdhz",
"txHash": "44785B97D4E5FE72AFAD0E536D477402D86D9583143A3F0CE5A7AFD65FAF22B9",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCancel",
"account": "rhUWKrgoGztYKxbuaZMeLc3PdviRrCpdhz",
"txHash": "952B9371F38EB027A9DB7D75F5E5DD5141B6D753C2EB3B6101BE62AE13814B8E",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCreate",
"account": "r3cS9gS86hjwLwb6rg2usGcXYxwcrvJwBH",
"txHash": "D44BFB81C585272AA633D70C16F200C9E08D0544C8FE430B42E93DB529CCF397",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCreate",
"account": "rBSZe33F5oxHTbxSF1nZJooVDpcrrqNFp3",
"txHash": "7E48425E313E56F3CF4CD8B8995CA9AAEADA52A0559EDD5703DD899109A57135",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCreate",
"account": "rBSZe33F5oxHTbxSF1nZJooVDpcrrqNFp3",
"txHash": "C53FCCA0C53C39FAFA95B754268635B8187AEB80D6DDC74AAB9DCBFE4B07C664",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCreate",
"account": "rGFpans8aW7XZNEcNky6RHKyEdLvXPMnUn",
"txHash": "716971CA2C2168EF4C06BA4408F27E6FB519148F52154B5CADA29A083E7A0B96",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCreate",
"account": "rJnZ4YHCUsHvQu7R6mZohevKJDHFzVD6Zr",
"txHash": "0A57DFB995947FF8E87324B903D8E25917B3E0C09F4C24F93132AECDC7849362",
"ledgerIndex": 11130426
},
{
"time": "2015-01-15T07:59:00+00:00",
"type": "OfferCreate",
"account": "rJnZ4YHCUsHvQu7R6mZohevKJDHFzVD6Zr",
"txHash": "17AC61741060D5561D813ABFEFA1A7939273CAA21A7B329CBBFC562EBFE98DB9",
"ledgerIndex": 11130426
}
]
}
```
</div>
**If the results are reduced** (the default), then each result represents an interval of time, with the following attributes:
| Field | Type | Description |
|-------|------|-------------|
| time | String ([Date-Time][]) | The time at which this interval begins. |
| Payment | Number | (May be omitted) The number of Payment transactions during this interval sent by the specified account. |
| OfferCreate | Number | (May be omitted) The number of OfferCreate transactions during this interval sent by the specified account. |
| OfferCancel | Number | (May be omitted) The number of OfferCancel transactions during this interval sent by the specified account. |
| TrustSet | Number | (May be omitted) The number of TrustSet transactions during this interval sent by the specified account. |
| AccountSet | Number | (May be omitted) The number of AccountSet transactions during this interval sent by the specified account. |
| SetFee | Number | (May be omitted) The number of SetFee pseudo-transactions during this interval sent by the specified account. Since SetFee is a pseudo-transaction, this transaction type only appears for [ACCOUNT_ZERO](https://wiki.ripple.com/Accounts#ACCOUNT_ZERO). |
| SetRegularKey | Number | (May be omitted) The number of SetRegularKey transactions during this interval sent by the specified account. |
Each of the transaction type attributes is omitted when there is no data. In CSV or array format, columns are included for each type that has a nonzero value in any interval. In JSON format, each interval includes fields only for the types that have nonzero values in that particular interval.
**If the results are not reduced** (the request used `"reduce": false`), then each result represents an individual transaction, with the following attributes, in order:
| Field | Type | Description |
|-------|------|-------------|
| time | String ([Date-Time][]) | The time this transaction occurred. |
| type | String | The transaction type. Valid types are: `AccountSet`, `OfferCancel`, `OfferCreate`, `Payment`, `SetFee`, `SetRegularKey`, and `TrustSet` |
| account | String (Ripple Address) | The address of the account that sent this transaction. |
| txHash | String (Transaction Hash) | The identifying hash of this transaction. |
| ledgerIndex | Number (Ledger Index) | The identifying sequence number of the ledger that included this transaction. |
## Value Sent ##
[[Source]<br>](https://github.com/ripple/ripple-data-api/blob/develop/api/routes/valueSent.js "Source")
Retrieve the total amount of a single currency sent, in payments and currency exchanges, during a specific time period.
#### Request Format ####
<div class='multicode'>
*Reduced*
```
POST /api/value_sent
{
"currency": "JPY",
"issuer": "r94s8px6kSw1uZ1MV98dhSRTvc6VMPoPcN",
"startTime": "2015-01-15 08:00 Z",
"endTime": "2015-01-15 10:59 Z",
"timeIncrement": "hour",
"descending": false,
"reduce": true,
"format": "json"
}
```
*Expanded*
```
POST /api/value_sent
{
"currency": "JPY",
"issuer": "r94s8px6kSw1uZ1MV98dhSRTvc6VMPoPcN",
"startTime": "2015-01-15 08:00 Z",
"endTime": "2015-01-15 08:01 Z",
"reduce": false,
"limit": 3,
"offset": 0,
"format": "json"
}
```
</div>
The request includes the following body parameters:
| Field | Value | Description |
|-------|-------|-------------|
| currency | String | Three-letter [ISO 4217 Currency Code](http://www.xe.com/iso4217.php) string, or a 160-bit hex string according to Ripple's internal [Currency format](https://wiki.ripple.com/Currency_format). |
| issuer | String | Account address of the counterparty holding the currency. Usually an issuing gateway in the Ripple network. Omitted or `null` for XRP. |
| startTime | String ([Date-Time][]) | Retrieve information starting at this time. |
| endTime | String ([Date-Time][]) | Retrieve information ending at this time. |
| timeIncrement | String | (Optional) Divide results into intervals of the specified length: `year`, `month`, `day`, `hour`, `minute`, or `second`. The value `all` collapses the results into just one interval. Defaults to `all`. |
| descending | Boolean | (Optional) If true, return results in descending order. Defaults to false. |
| reduce | Boolean | (Optional) If `false`, include transactions individually instead of collapsing them into results over time. Ignored if `timeIncrement` is provided. Defaults to `true`. |
| limit | Number | (Optional) If reduce is `false`, this value defines the maximum number of transactions to return in one response. Use with `offset` to paginate results. Defaults to 500. |
| offset | Number | (Optional) If reduce is `false`, this value defines a number of transactions to skip before returning results. Use with `limit` to paginate results. Defaults to 0. |
| format | String | (Optional) The [Response Format][] to use: `csv` or `json`. If omitted, defaults to a CSV-like JSON array format. |
#### Response Format ####
The format of the response depends on the `format` and `reduce` parameters from the request. See [Response Format][] for details. Examples of successful responses:
<div class='multicode'>
*Reduced*
```
{
"currency": "JPY",
"issuer": "r94s8px6kSw1uZ1MV98dhSRTvc6VMPoPcN",
"startTime": "2015-01-15T08:00:00+00:00",
"endTime": "2015-01-15T10:59:00+00:00",
"timeIncrement": "hour",
"results": [
{
"time": "2015-01-15T08:00:00+00:00",
"amount": 1152046.1607243735,
"count": 190
},
{
"time": "2015-01-15T09:00:00+00:00",
"amount": 483892.1115109554,
"count": 84
},
{
"time": "2015-01-15T10:00:00+00:00",
"amount": 485985.50256177614,
"count": 72
}
]
}
```
*Expanded*
```
{
"currency": "JPY",
"issuer": "r94s8px6kSw1uZ1MV98dhSRTvc6VMPoPcN",
"startTime": "2015-01-15T08:00:00+00:00",
"endTime": "2015-01-15T08:01:00+00:00",
"results": [
{
"time": "2015-01-15T08:00:00+00:00",
"amount": 18081.50257044235,
"account": "rPCFVxAqP2XdaPmih1ZSjmCPNxoyMiy2ne",
"destination": null,
"txHash": "64520542AB1F3EEF516DE3E07E4958F3C07AC668D4B3DE769AF08D305AFA50D1",
"ledgerIndex": 11130438
},
{
"time": "2015-01-15T08:01:00+00:00",
"amount": 0.0000010567819117568433,
"account": "rfU3YWd1TnYryvryQTQ9xwyCSqzMTbnyW6",
"destination": null,
"txHash": "52B282E616B2B9AD5E34B3BDE2D6D0AB44D06298590D3A949C2D7817D3057957",
"ledgerIndex": 11130451
}
]
}
```
</div>
**If the results are reduced** (the default), then each result represents an interval of time, with the following attributes:
| Field | Type | Description |
|-------|------|-------------|
| time | String ([Date-Time][]) | The time at which this interval begins. |
| amount | Number | The total amount of the requested currency sent during this interval |
| count | Number | The total number of transactions in this interval that contributed to the `amount`. |
**If the results are not reduced** (the request used `"reduce": false`), then each result represents an individual transaction, with the following attributes, in order:
| Field | Type | Description |
|-------|------|-------------|
| time | String ([Date-Time][]) | The time this transaction occurred. |
| amount | Number | The amount of the requested currency sent in this transaction. |
| account | String (Ripple Address) | The address of the account that sent this transaction. |
| destination | String (Ripple Address) | The address of the account that received the funds. <span class='draft-comment'>(This always seems to be null in my experience.)</span> |
| txHash | String (Transaction Hash) | The identifying hash of this transaction. |
| ledgerIndex | Number (Ledger Index) | The identifying sequence number of the ledger that included this transaction. |