diff --git a/api/controllers/transactions.js b/api/controllers/transactions.js index 2cfdf35c..78d61013 100644 --- a/api/controllers/transactions.js +++ b/api/controllers/transactions.js @@ -74,6 +74,23 @@ Transactions.send = function(req, res) { }); }; + +/* + * Returns a list of transactions given certain request options + */ +Transactions.list = function(req, res) { + var opts = {}; + opts.address = req.address; + node.listTransactions(opts) + .then(function(transactions) { + res.send(transactions); + }); +}; + +/** + * errors + */ + Transaction._sendError = function(res) { res.status(422); res.send('/v1/transactions/send parameter must be a raw transaction hex'); diff --git a/api/routes/v1.js b/api/routes/v1.js index 37a74ad3..ecad3b89 100644 --- a/api/routes/v1.js +++ b/api/routes/v1.js @@ -49,7 +49,7 @@ function initRouter(node) { // Address routes router.get('/addresses/:address', Addresses.get); - router.get('/addresses/:address/transactions', mockResponse); + router.get('/addresses/:address/transactions', Transactions.list); router.get('/addresses/:address/utxos', mockResponse); // TODO: check if this is really restful router.get('/addresses/:addresses/utxos', mockResponse); diff --git a/api/test/v1/addresses.js b/api/test/v1/addresses.js index 49b605fd..32c3a188 100644 --- a/api/test/v1/addresses.js +++ b/api/test/v1/addresses.js @@ -22,6 +22,9 @@ describe('BitcoreHTTP v1 addresses routes', function() { nodeMock = new EventEmitter(); nodeMock.getAddressInfo = function(address) { return Promise.resolve(mockAddresses[address.toString()]); + }; + nodeMock.listTransactions = function(opts) { + }; app = new BitcoreHTTP(nodeMock).app; agent = request(app);