Skip to content
Permalink
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
114 lines (77 sloc) 4.09 KB

Live-Rates.com

Live-Rates.com is a real-time JSON / XML Webservice & Rest API for forex, commodities and indexes. There is also a Streaming API available for subscribers, starting in 2019.

The rates are updated every second.

Usage

Web-Service

Get the latest foreign exchange reference rates in JSON format.

GET /rates
Host: live-rates.com

Get the latest foreign exchange reference rates in XML format.

GET /rates?rate_format=xml
Host: live-rates.com

Rest API

(requires authentication)

Get the available currency pairs, commodities & indexes and also when they were last updated

GET /api/rates
Host: live-rates.com

Get the latest foreign exchange reference rates for the requested params, in JSON format.

GET /api/price?rate=EUR_USD,EUR_GBP
Host: live-rates.com

Streaming API

(requires authentication)

With streaming API, it's no longer necessary to request for fresh data every second. When updated data is retrieved by the main server, it's automatically pushed to client via Web-socket technology (socket.io).

The central DNS server (wss.live-rates.com) connects you to the preferred datacenter based on your location and server availability. The available servers are:

  • Europe: eu-wss.live-rates.com
  • America: us-wss.live-rates.com

Check the Streaming API Client Example to understand how you can use it.

streaming_api

Output Response

All APIs - Web-Service / Rest API / Streaming API - output data with the same structure. All fields are sent in string format:

{
	Currency: "EUR/USD"        //Description of the Instrument 
	Rate: "1.13625"            //Same as BID (Deprecated)
	Bid: "1.13625"             //Bid Value of the Currency / Instrument
	Ask: "1.13638"             //Ask Value of the Currency / Instrument
	High: "1.14081"            //24H High of the Currency / Instrument
	Low: "1.13527"             //24H Low of the Currency / Instrument
	Open: "1.13725"            //Opening Value of the Daily Session / Previous Day if Market is Active
	Close: "1.13625"           //Closing Value of the Daily Session / Previous Day if Market is Active
	Timestamp: "1551477238763" //Timestamp of the Last Update
}
...

Cross-Rates

For obvious reasons, Live-Rates don't provide all the thousands of possible cross-rate's combinations directly. All our available rates come directly from providers with real liquidity. If you need to get/calculate a rate not available directly, you can convert it, changing the base currency.

Example: MYR/CNY, MYR/GBP or any other cross-rates with base currency MYR are not provided. However that doesn't mean you can't get them. In this case/example, you can directly use the USD/MYR, and then the USD/XXX you want.

{
	"currency":"USD/MYR","rate":"4.14611",
	"currency":"USD/CNY","rate":"6.8421"
}
// 6.84/4.15 = 1.65 MYR/CNY

Multi-Region

Live-Rates has currently multiple servers in 2 Datacenters:

  • Europe (eu.live-rates.com)
  • America (us.live-rates.com)

Requests made to live-rates.com are forwarded and resolved by our central DNS server in Europe.

If you bypass the DNS server and connect directly to a specific datacenter, the connection would be faster however in case of an issue with the server, you will receive a 502 or 521 instead of a Success Response from the alternative server.

Authentication

We allow up to 3 hits/hour/ip for un-authententicated requests, if you need to make API requests or get live rates updated every second you'll need to subscribe a licence and include on your requests the following param:

GET /rates?key=Your key
Host: live-rates.com

Limitation / Throttling

We restrict access to abusers. If your licence is accessing more than 1x per second on a 10-min average, it will be temporarily locked for 10 minutes. You will receive 503 Service Unavailable during that period.

You can’t perform that action at this time.