currencyapi-node
v1.1.1
Published
Npm package for the CurrencyApi.net JSON & XML live currency feed
Downloads
12
Maintainers
Readme
CurrencyApi NodeJs wrapper
CurrencyApi.net provides live currency rates via a REST API. A live currency feed for over 152 currencies, including physical (USD, GBP, EUR + more) and cryptos (Bitcoin, Litecoin, Ethereum + more). A JSON and XML currency api updated every 60 seconds.
Features:
- Live exchange rates (updated every 60 seconds).
- 152 currencies world currencies.
- Popular cryptocurrencies included; Bitcoin, Litecoin etc.
- Convert currencies on the fly with the convert endpoint.
- Historical currency rates back to year 2000.
- Easy to follow documentation
Signup for a free or paid account here.
This package
NodeJs wrapper for CurrencyApi.net endpoints.
Prerequisites
- Minimum NodeJs v8 (npm v5 and above)
- Working on NodeJs v18
- Free or Paid account with CurrencyApi.net
Test Coverage
- 100% coverage
Installation
Using npm:
npm install currencyapi-node
then include the package with:
const CurrencyApi = require('./currencyapi-node')
Usage
Instantiating
const currency = new CurrencyApi('API_KEY');
Live rates:
const result = await currency.rates().get()
or
currency.rates().get()
.then(console.log)
Example with all available methods (methods can be chained):
const result = await currency
.rates()
.base('USD')
.output('JSON')
.get()
Available methods for rates endpoint
| Methods | Description |
| --- | --- |
| base()
| The base currency you wish you receive the currency conversions for. This will output all currency conversions for that currency. Default: USD. |
| output()
| Response output in either JSON or XML. Default: JSON. |
List of available currencies:
const result = await currency.currencies().get()
Example with all available methods:
const result = await currency
.currencies()
.output('XML')
.get()
Available methods for currencies endpoint
| Methods | Description |
| --- | --- |
| output()
| Response output in either JSON or XML. Default: JSON. |
Convert:
const result = await currency
.convert()
.from('BTC')
.to('USD')
.amount(100)
.get()
Available methods for convert endpoint
| Methods | Description |
| --- | --- |
| amount()
| The value of the currency you want to convert from. This should be a number and can contain a decimal place. Required. |
| from()
| The currency you want to convert. This will be a three letter ISO 4217 currency code from one of the currencies we have rates for. Required. |
| to()
| The currency you want to convert the amount 'to'. Again this will be a three letter currency code from the ones we offer. Required. |
| output()
| Response output in either JSON or XML. Default: JSON. |
Historical:
const result = await currency.history().date('2019-01-01').get()
Example with all available methods:
const result = await currency
.history()
.date('2019-01-01')
.base('GBP')
.output('JSON')
.get()
Available methods for historical endpoint
| Methods | Description |
| --- | --- |
| date()
| The historical date you wish to receive the currency conversions for. This should be formatted as YYYY-MM-DD. Required. |
| base()
| The base currency you wish you receive the currency conversions for. This will output all currency conversions for that currency. Default: USD. |
| output()
| Response output in either JSON or XML. Default: JSON. |
Timeframe:
const result = await currency.timeframe().startDate('2019-01-01').endDate('2019-01-05').get()
Example with all available methods:
const result = await currency
.timeframe()
.startDate('2019-01-01')
.endDate('2019-01-05')
.base('GBP')
.output('JSON')
.get()
Available methods for timeframe endpoint
| Methods | Description |
| --- | --- |
| startDate()
| The historical date you wish to receive the currency conversions from. This should be formatted as YYYY-MM-DD. Required. |
| endDate()
| The historical date you wish to receive the currency conversions until. This should be formatted as YYYY-MM-DD. Required. |
| base()
| The base currency you wish you receive the currency conversions for. This will output all currency conversions for that currency. Default: USD. |
| output()
| Response output in either JSON or XML. Default: JSON. |