---
title: "Macroeconomic Layer API"
description: "Macroeconomic and commodity data: energy and commodity quotes, consumer-goods prices, petrochemical indices and products, shipping and refining margins,..."
url: "https://developer.argaam.com/macro-overview"
image: "https://developer.argaam.com/_og/d/c_Ocean.takumi,title_Macroeconomic+Layer+API,description_~TWFjcm9lY29ub21pYyBhbmQgY29tbW9kaXR5IGRhdGE6IGVuZXJneSBhbmQgY29tbW9kaXR5IHF1b3RlcywgY29uc3VtZXItZ29vZHMgcHJpY2VzLCBwZXRyb2NoZW1pY2FsIGluZGljZXMgYW5kIHByb2R1Y3RzLCBzaGlwcGluZyBhbmQgcmVmaW5pbmcgbWFyZ2lucywuLi4,props_eyJ0aGVtZSI6eyJtb2RlIjoibGlnaHQiLCJjb2xvcnMiOnsicHJpbWFyeSI6IiNGNTgwMjYifX19,p_Ii9tYWNyby1vdmVydmlldyI,s_Vm8wiH9P9O9-NQK1.png"
---

Overview

[Introduction](#overview)

Commodities

[Get the list of tracked commoditiesGET](#get-api-v1-1-commodities)[Get the latest quotes for tracked commoditiesGET](#get-api-v1-1-commodities-quotes)[Get the latest quote for a commodityGET](#get-api-v1-1-commodities-commodityid-quote)[Get the historical price series for a commodityGET](#get-api-v1-1-commodities-commodityid-history)[Get the list of tracked consumer goodsGET](#get-api-v1-1-commodities-consumer-goods)[Get current consumer-goods pricesGET](#get-api-v1-1-commodities-consumer-goods-prices)[Get the price history for a consumer goodGET](#get-api-v1-1-commodities-consumer-goods-itemid-history)

Petrochemicals

[Get the list of tracked petrochemical productsGET](#get-api-v1-1-petrochemicals-products)[Get the latest price for a petrochemical productGET](#get-api-v1-1-petrochemicals-products-productid-price)[Get the price history for a petrochemical productGET](#get-api-v1-1-petrochemicals-products-productid-price-history)[Get the latest petrochemical index levelsGET](#get-api-v1-1-petrochemicals-indices)[Get the historical series for a petrochemical indexGET](#get-api-v1-1-petrochemicals-indices-indexcode-history)[Get the latest refining marginsGET](#get-api-v1-1-petrochemicals-margins-refining)[Get the refining margin historyGET](#get-api-v1-1-petrochemicals-margins-refining-history)[Get the latest shipping freight ratesGET](#get-api-v1-1-petrochemicals-freight-rates)

Indicators

[Get the list of published economic indicatorsGET](#get-api-v1-1-indicators)[Get the economic indicator categoriesGET](#get-api-v1-1-indicators-categories)[Get the latest reading for an economic indicatorGET](#get-api-v1-1-indicators-indicatorid)[Get the historical series for an economic indicatorGET](#get-api-v1-1-indicators-indicatorid-history)[Get the headline economic indicators for a countryGET](#get-api-v1-1-indicators-countries-countryid-summary)[Get the economic data release calendarGET](#get-api-v1-1-indicators-releases)

# Macroeconomic Layer API

v1.1 CurrentOAS 3.0Production

[Plans](https://developer.argaam.com/plans)[Use this API](https://developer.argaam.com/apis/macroeconomic-layer-api-production-v1/versions/eeada0b4-178b-4972-8713-f497c9940530)

Macroeconomic and commodity data: energy and commodity quotes, consumer-goods prices, petrochemical indices and products, shipping and refining margins, and national economic indicators.

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](mailto:developer@argaam.com)

### [Get the list of tracked commodities](#get-the-list-of-tracked-commodities)

Returns the catalogue of energy and commodity instruments Argaam quotes, covering crude grades, refined products, natural gas, metals and agricultural benchmarks, each with the commodityId, quote unit and currency needed by the quote and history operations.

GEThttps://api.argaam.com/api/v1.1/commodities

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/commodities?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 tracked commodities](#get-the-latest-quotes-for-tracked-commodities)

Returns the latest assessed quote for each tracked commodity. Use category to scope the list, for example energy, and page it with page and pageSize.

GEThttps://api.argaam.com/api/v1.1/commodities/quotes

Query parameters

categorystring

Category used to scope the collection.

Example: energy

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/commodities/quotes?category=energy&page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 quote for a commodity](#get-the-latest-quote-for-a-commodity)

Returns the most recent price for a single commodity together with the daily change, change percentage, quote unit, currency and the timestamp the price was captured.

GEThttps://api.argaam.com/api/v1.1/commodities/{commodityId}/quote

Path parameters

commodityIdstringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/commodities/7/quote?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 historical price series for a commodity](#get-the-historical-price-series-for-a-commodity)

Returns the stored price series for a commodity, backed by up to 30 years of history. Use period to size the window, or year to pin a single calendar year.

GEThttps://api.argaam.com/api/v1.1/commodities/{commodityId}/history

Path parameters

commodityIdstringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/commodities/7/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 list of tracked consumer goods](#get-the-list-of-tracked-consumer-goods)

Returns the basket of consumer goods Argaam prices, such as foodstuffs, building materials and fuels, each with the itemId, measurement unit and the market the item is surveyed in.

GEThttps://api.argaam.com/api/v1.1/commodities/consumer-goods

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/commodities/consumer-goods?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 current consumer-goods prices](#get-current-consumer-goods-prices)

Returns the latest surveyed retail and wholesale price for every tracked consumer good, quoted in SAR per its measurement unit, with the survey date attached to each row.

GEThttps://api.argaam.com/api/v1.1/commodities/consumer-goods/prices

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/commodities/consumer-goods/prices?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 price history for a consumer good](#get-the-price-history-for-a-consumer-good)

Returns the surveyed price series for a single consumer good so month-on-month and year-on-year moves can be read alongside the published inflation indicators.

GEThttps://api.argaam.com/api/v1.1/commodities/consumer-goods/{itemId}/history

Path parameters

itemIdstringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/commodities/consumer-goods/{itemId}/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 list of tracked petrochemical products](#get-the-list-of-tracked-petrochemical-products)

Returns the petrochemical products Argaam prices, from ethylene and propylene through polyethylene, polypropylene, methanol and urea, each with the productId, feedstock family and quote unit.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/products

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/products?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 price for a petrochemical product](#get-the-latest-price-for-a-petrochemical-product)

Returns the most recent assessed price for a petrochemical product, with the weekly and year-to-date change, the assessment region and the date the assessment was published.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/products/{productId}/price

Path parameters

productIdstringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/products/112/price?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 price history for a petrochemical product](#get-the-price-history-for-a-petrochemical-product)

Returns the historical assessed price series for a petrochemical product. Use period to size the window, or year to pin a single calendar year.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/products/{productId}/price/history

Path parameters

productIdstringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/products/112/price/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 petrochemical index levels](#get-the-latest-petrochemical-index-levels)

Returns the current level, change and change percentage for each Argaam petrochemical index, so the sector can be tracked as a whole rather than product by product.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/indices

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/indices?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 historical series for a petrochemical index](#get-the-historical-series-for-a-petrochemical-index)

Returns the level series for a petrochemical index over the requested window, for charting the sector against TASI and the petrochemical producers listed on it.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/indices/{indexCode}/history

Path parameters

indexCodestringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/indices/SLI/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 refining margins](#get-the-latest-refining-margins)

Returns the current refining and cracking margins by product and region, expressed per barrel against the reference crude grade, with the date of each assessment.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/margins/refining

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/margins/refining?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 refining margin history](#get-the-refining-margin-history)

Returns the historical refining margin series so margin cycles can be compared with the reported earnings of the listed refiners and petrochemical producers.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/margins/refining/history

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/margins/refining/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 shipping freight rates](#get-the-latest-shipping-freight-rates)

Returns the current freight rates on the tanker, gas carrier and container routes that move Saudi crude, refined products and petrochemical exports, with the route, vessel class and rate unit.

GEThttps://api.argaam.com/api/v1.1/petrochemicals/freight/rates

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/petrochemicals/freight/rates?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 list of published economic indicators](#get-the-list-of-published-economic-indicators)

Returns the catalogue of national economic indicators Argaam publishes, drawn from GASTAT, SAMA and the Ministry of Finance, each with the indicatorId, unit, reporting frequency and the country it covers.

GEThttps://api.argaam.com/api/v1.1/indicators

Query parameters

pageinteger (int32)

Page of the result set to return.

Default: 1

pageSizeinteger (int32)

Number of records per page.

Default: 20

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/indicators?page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 economic indicator categories](#get-the-economic-indicator-categories)

Returns the categories indicators are filed under, such as national accounts, prices and inflation, trade, monetary and banking, and public finance, for building a navigable macro tree.

GEThttps://api.argaam.com/api/v1.1/indicators/categories

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/indicators/categories?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 reading for an economic indicator](#get-the-latest-reading-for-an-economic-indicator)

Returns the most recently published value for a single indicator with its reference period, unit, period-on-period and year-on-year change, and the publishing source.

GEThttps://api.argaam.com/api/v1.1/indicators/{indicatorId}

Path parameters

indicatorIdstringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/indicators/{indicatorId}?lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 historical series for an economic indicator](#get-the-historical-series-for-an-economic-indicator)

Returns the full reported series for an indicator at its native frequency. Use period to size the window, or year to pin a single calendar year.

GEThttps://api.argaam.com/api/v1.1/indicators/{indicatorId}/history

Path parameters

indicatorIdstringrequired

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/indicators/{indicatorId}/history?period=year&year=2023&page=1&pageSize=20' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 headline economic indicators for a country](#get-the-headline-economic-indicators-for-a-country)

Returns a single-call snapshot of the headline indicators for one of the Saudi and MENA economies covered, including GDP growth, inflation, the trade balance, the policy rate and oil production.

GEThttps://api.argaam.com/api/v1.1/indicators/countries/{countryId}/summary

Path parameters

countryIdstringrequired

Query parameters

yearinteger (int32)

Reporting or calendar year used to filter time-based data.

Example: 2023

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/indicators/countries/{countryId}/summary?year=2023&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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 economic data release calendar](#get-the-economic-data-release-calendar)

Returns recently published and upcoming indicator releases with their scheduled dates and publishing sources. Poll this collection to pick up new readings as they are released.

GEThttps://api.argaam.com/api/v1.1/indicators/releases

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

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/json** — `ApiV1Response`. Every operation returns the same envelope: `success`, `apiVersion`, `timestamp`, `requestId`, `data`, `meta` and `rateLimit`. Additional properties are not allowed.

cURL

ShellCopy

```
curl --request GET \
  --url 'https://api.argaam.com/api/v1.1/indicators/releases?period=year&page=1&pageSize=20&lang=en' \
  --header 'Accept: application/json' \
  --header 'apikey: ••••••'
```

200 application/jsonCopy

```
{
  "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"
  }
}
```