Market Data Layer API

v1.1 CurrentOAS 3.0Production

Near real-time and historical market data for Tadawul and international equities and indices. Company quotes, intraday and end-of-day price history, market and sector performance, top movers, and stock classifications.

API base URL

https://api.argaam.com

Argaam API Gateway (Production)

Security

ApiKeyAuth — apikey header

ApiKeyAuthQuery — apikey query parameter

Additional information. Contact Argaam IT — developer@argaam.com

Get the latest quote for a stock

Returns the near real-time last price, net and percentage change, bid and ask, traded volume and turnover for the stock, alongside the previous close and the day's high and low. Covers Tadawul listings and the international equities carried on the gateway.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/quote
Path parameters
stockSymbolstringrequired
Tadawul stock symbol of the company, e.g. 2222 (Saudi Aramco).
Example: 2222
Query parameters
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/companies/2222/quote?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the latest quotes for every stock in a market

Returns a paged near real-time snapshot of last price, change, volume and turnover for all stocks trading in the market. Use marketId to switch between TASI, Nomu and the international markets.

GEThttps://api.argaam.com/api/v1.1/companies/quotes
Query parameters
marketIdinteger (int32)
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/companies/quotes?marketId=3&lang=en&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the latest quotes for a list of stocks

Returns one quote per requested symbol for a watchlist-sized set of Tadawul or international symbols submitted in the request body, so a whole portfolio can be priced in a single call.

POSThttps://api.argaam.com/api/v1.1/companies/quotes/lookup
Query parameters
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
Request body
stockSymbols
string[] — Tadawul stock symbols to price, e.g. ["2222","1120","7010"].
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/companies/quotes/lookup?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the intraday price series for a stock

Returns the near real-time intraday bar series for the current or most recent trading session, with price, traded volume and turnover per interval. Use period to widen the window beyond the current session, e.g. 1d or 1m.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/intraday
Path parameters
stockSymbolstringrequired
Tadawul stock symbol of the company, e.g. 2222 (Saudi Aramco).
Example: 2222
Query parameters
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/companies/2222/intraday?period=year&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the end-of-day price history for a stock

Returns the daily open, high, low, close, adjusted close, volume and turnover series for the stock, reaching back over 30 years where the listing allows. Use period or year to bound the range.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/history
Path parameters
stockSymbolstringrequired
Tadawul stock symbol of the company, e.g. 2222 (Saudi Aramco).
Example: 2222
Query parameters
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
yearinteger (int32)
Reporting or calendar year used to filter time-based data.
Example: 2023
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/companies/2222/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the classifications a stock belongs to

Returns the market, sector and industry the stock is classified under, together with the indices it is a constituent of. Sector and industry names are localised, so set lang to read them in Arabic or English.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/classification
Path parameters
stockSymbolstringrequired
Tadawul stock symbol of the company, e.g. 2222 (Saudi Aramco).
Example: 2222
Query parameters
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/companies/2222/classification?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the markets and indices covered by the gateway

Returns the markets and headline indices served by the market data layer, including TASI, Nomu and the international markets, each with the marketId to pass to the other operations.

GEThttps://api.argaam.com/api/v1.1/markets
Query parameters
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/markets?lang=en&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the latest index level for a market

Returns the near real-time index level, net and percentage change, traded volume, turnover and number of trades for the market index. Read it with the performance operation when a longer window is needed.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/quote
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
Query parameters
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/markets/3/quote?marketId=3&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the intraday index series for a market

Returns the near real-time intraday index bars for the current or most recent session, with index level, traded volume and turnover per interval. Use period to select the window.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/intraday
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
Query parameters
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/markets/3/intraday?marketId=3&period=year&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the end-of-day index history for a market

Returns the daily open, high, low and close of the market index with traded volume and turnover, covering more than 30 years of Saudi Exchange history. Use period or year to bound the range.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/history
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
Query parameters
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
yearinteger (int32)
Reporting or calendar year used to filter time-based data.
Example: 2023
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/markets/3/history?marketId=3&period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the performance of a market over a period

Returns the index return, period high and low, and the aggregate traded volume, turnover and market capitalisation of the market across the selected window. Defaults to the year when period is omitted.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/performance
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
Query parameters
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/markets/3/performance?marketId=3&period=year&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the top movers in a market

Returns the leading gainers, losers and most actively traded stocks by volume and turnover for the market. Use pageSize to control how many names come back in each list.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/movers
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
Query parameters
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/markets/3/movers?marketId=3&period=year&lang=en&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the sectors listed in a market

Returns the sectors of the market with their sectorId, localised name and the number of listed companies in each. Pass the sectorId to the sector-level price and constituent operations.

GEThttps://api.argaam.com/api/v1.1/sectors
Query parameters
marketIdinteger (int32)
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/sectors?marketId=3&lang=en&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the performance of every sector in a market

Returns the return, traded volume, turnover and market capitalisation of each sector over the selected window, ranked so sector rotation across the market is visible in one response. Defaults to the year when period is omitted.

GEThttps://api.argaam.com/api/v1.1/sectors/performance
Query parameters
marketIdinteger (int32)
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/sectors/performance?marketId=3&period=year&lang=en&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the latest index level for a sector

Returns the near real-time sector index level, net and percentage change, traded volume and turnover for a single sector of the market.

GEThttps://api.argaam.com/api/v1.1/sectors/{sectorId}/quote
Path parameters
sectorIdinteger (int32)required
Identifier for a sector or classification group. Resolve through the sector taxonomy.
Query parameters
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/sectors/35/quote?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the end-of-day index history for a sector

Returns the daily open, high, low and close of the sector index with traded volume and turnover. Use period or year to bound the range.

GEThttps://api.argaam.com/api/v1.1/sectors/{sectorId}/history
Path parameters
sectorIdinteger (int32)required
Identifier for a sector or classification group. Resolve through the sector taxonomy.
Query parameters
periodstring
Time window for the series, e.g. 1d, 1m, 3m, 1y, 5y. Defaults to year.
Default: year · Example: year
yearinteger (int32)
Reporting or calendar year used to filter time-based data.
Example: 2023
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/sectors/35/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}

Get the stocks classified under a sector

Returns the constituent stocks of the sector with their latest price, change and weight in the sector index, so the classification can be walked from sector down to symbol.

GEThttps://api.argaam.com/api/v1.1/sectors/{sectorId}/stocks
Path parameters
sectorIdinteger (int32)required
Identifier for a sector or classification group. Resolve through the sector taxonomy.
Query parameters
marketIdinteger (int32)
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
langstring
Language selector for multilingual output. Resolve the accepted value through the Languages mapping in the Knowledge Base.
Default: en · Example: en
pageinteger (int32)
Page of the result set to return.
Default: 1
pageSizeinteger (int32)
Number of records per page.
Default: 20
Response
200 · application/jsonApiV1Response. Every operation returns the same envelope: success, apiVersion, timestamp, requestId, data, meta and rateLimit. Additional properties are not allowed.
Shell
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/sectors/35/stocks?marketId=3&lang=en&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
200 application/json
{
  "success": true,
  "apiVersion": "1.1",
  "timestamp": "2026-08-16T09:12:44Z",
  "requestId": "b3f1c8de-4a20-4f0e-9c1a-77d2e1f0aa31",
  "data": [
    {
      "stockSymbol": "2222",
      "nameAr": "أرامكو السعودية",
      "nameEn": "Saudi Aramco"
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 20,
    "totalRecords": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  },
  "rateLimit": {
    "limit": 600,
    "remaining": 597,
    "reset": "2026-08-16T09:13:00Z"
  }
}