# Get fixed-period market data

## Goal

Request rates from a provider that supports tradable rates over a fixed period.

## Prerequisites

- Your REST API app.
- Integral API login with trading permission.
- A provider that supports fixed-period market data sets (MDS).


## Steps

```mermaid
flowchart TD
  LOGIN(Step 1: Login) --> GETRATE(Step 2: Get fixed-period MDS) --> HANDLE(Step 3: Handle rates)
  click LOGIN "#step-1-login"
  click GETRATE "#step-2-get-fixed-period-mds"
  click HANDLE "#step-3-handle-rates"
```

### Step 1: Login

Use the [Login and get token](/openapi/integral-api-reference/rest/authentication-api/login) endpoint.

See the related [Login](/developer-portal/tutorials/tutorialauth/) 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.

```json Payload application/json
{
  "user": "apiUserId",
  "pass": "This is a long password!",
  "org": "apiOrganizationId"
}
```

### Step 2: Get fixed-period MDS

Use the [Get market data](/openapi/integral-api-reference/rest/market-data/getmarketdataset) endpoint.

```javascript JavaScript
const query = new URLSearchParams({
  id: 'RealTimeMDS',
  org: 'BNK1-4HOrg',
  symbol: 'EUR/USD',
  symbols: 'EUR/USD,USD/JPY',
  date: '2024-10-24',
  tenor: 'SPOT',
  timeWindow: '1500-1700'
}).toString();

const resp = await fetch(
  `/v2/marketdataset?${query}`,
  {method: 'GET'}
);

const data = await resp.text();
console.log(data);
```

### Step 3: Handle rates

Use the returned `rateId` attribute for trading.