fibercrypto / fibercrypto/skyxcommons
[api] Get history to address
- Dominant language
- No language data
- Stars
- 0
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
[GET] /api/transactions/history/to/{address}?take=integer&[afterHash=string]
Should return completed transactions that transfer fund to the address and that were broadcasted
after the transaction with the hash equal to the `afterHash`.
If `afterHash` is empty, transactions should be read from the beginning.
Should include all transactions broadcasted even those not going through `/transaction/broadcast/*` API endpoints.
If there are no transactions to return, empty array should be returned.
Amount of the returned transactions should not exceed take.
Response:
```js
[
{
// Operation ID.
// Can be empty.
// Should be not empty for transactions that
// broadcasted using this Blockchain.Api
“operationId”: “guid”,
// Transaction moment as ISO 8601 in UTC
“timestamp”: “datetime”,
// Source address
“fromAddress”: “string”,
// Destination address
“toAddress”: “string”,
// Asset ID e.g. SKY
“assetId”: “string”
// Amount without fee. Is integer as string, aligned
// to the asset accuracy. Actual value can be
// calculated as
// x = sourceAmount * (10 ^ asset.Accuracy)
“amount”: “string”,
// Transaction hash as base64 string
“hash”: “string”
}
]
```
Python implementation
```py
@api.route('/transactions/history/to/', methods=['GET'])
def get_history_to_address(address):
"""
Returns completed transactions that transfer fund to the address
"""
if not exists_address_transfer_observation_to(address):
return make_response(jsonify(build_error('No content: transactions to the address are not observed')), 204)
take = request.args.get('take')
if take is None:
take = 0
else:
take = int(take)
afterhash = request.args.get('afterHash'.lower())
if afterhash is None:
afterhash = ''
update_index()
items = get_transactions_to(address, take, afterhash)
response = items if take == 0 else items[0:take]
return jsonify(response)
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.