Get spot prices

Goal

Request a spot price from executable streaming prices (ESP).

Prerequisites

  • Your REST API app.
  • Integral API login with trading permission.
  • Your organization provisioned with at least one provider who streams ESP spot prices.

Steps

Step 1: Login
Step 2: Get spot prices
Step 3: Handle prices

Step 1: Login

Use the Login and get token endpoint.

See the related Login tutorial.

Your access token is in SSO_TOKEN of the response header. Your token is valid for limited time.

Pass the SSO_TOKEN cookie value with all of your subsequent API requests.

application/json
{ "user": "apiUserId", "pass": "This is a long password!", "org": "apiOrganizationId" }
Response
application/json
{ "status": "OK", "errorCode": null, "responseTuples": null, "expiryTime": 1665490480729, "serverUTCTime": 1665490420730 }

Step 2: Get spot prices

Use the Get spot rate by symbol endpoint.

Use the rateId attribute of the JSON response in the next step.

const query = new URLSearchParams({symbol: 'EUR/USD'}).toString();

const resp = await fetch(
  `https://docs.fxinside.net/_mock/openapi/integral-api-reference/rest/v2/rates/spot?${query}`,
  {
    method: 'GET',
    headers: {
      SSO_TOKEN: 'YOUR_API_KEY_HERE'
    }
  }
);

const data = await resp.text();
console.log(data);
Response
application/json
{ "symbol": "EUR/USD", "bid": 1.1863, "offer": 1.18638, "bidLimit": 1000000, "offerLimit": 1000000, "time": 1602536120080, "rateId": "2022-11-10-EURUSD-SPOT-435ef73249" }

Step 3: Handle prices

Use the rateId attribute of the response when you place your order.

Response
application/json

Successful limit order

{ "coId": "8932452311944", "type": "Limit", "timeInForce": "IOC", "side": "Buy", "currency": "EUR", "symbol": "EUR/USD", "size": 1000000, "org": "BrokerOrg1", "price": 1.0971678, "orderId": "4820276016", "userFullName": "User1@pfOrg", "action": "place", "status": "RECEIVED" }