M&A & Transactions Layer API

v1.1 CurrentOAS 3.0Production

Mergers and acquisitions across the market: M&A deals at the company and market level, with full individual deal records.

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 M&A deals involving a company

Returns the mergers and acquisitions the company has been party to, as acquirer, target or merging entity, with the announcement date, counterparty, announced value in SAR, stake and current status of each deal. Use year to narrow the list to a single announcement year.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/deals
Path parameters
stockSymbolstringrequired
Tadawul stock symbol of the company, e.g. 2222 (Saudi Aramco).
Example: 2222
Query parameters
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
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/deals?year=2023&page=1&pageSize=20&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 most recent M&A deal for a company

Returns the latest announced, amended or completed transaction involving the company, including the counterparty, deal type, announced value and where the deal stands today.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/deals/latest
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/deals/latest?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 historical M&A record of a company

Returns the company's full transaction history across Argaam's 30+ years of coverage, ordered by announcement date, including completed, pending and terminated deals. Use period to limit the window.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/deals/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
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/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/deals/history?period=year&page=1&pageSize=20&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 aggregated M&A activity for a company

Returns deal counts and aggregate transaction value for the company, split by the role it played, deal type and deal status. Use fiscalPeriod and year to pin a specific reporting period.

GEThttps://api.argaam.com/api/v1.1/companies/{stockSymbol}/deals/summary
Path parameters
stockSymbolstringrequired
Tadawul stock symbol of the company, e.g. 2222 (Saudi Aramco).
Example: 2222
Query parameters
fiscalPeriodstring
Fiscal period within the year: 1 - 4 for quarters, 5 for the full year.
Example: 5
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/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/deals/summary?fiscalPeriod=year&year=2023&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 M&A deals announced in a market

Returns mergers and acquisitions across the market, covering TASI and Nomu listed parties as well as unlisted counterparties, with announcement date, parties, announced value and status for each deal. Use year to scope the list to one announcement year.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/deals
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
Query parameters
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
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/deals?marketId=3&year=2023&page=1&pageSize=20&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 M&A deals across a market

Returns the most recently announced or updated transactions in the market, newest first. Poll this collection to track market-wide deal flow as new disclosures are published.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/deals/latest
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
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/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/deals/latest?marketId=3&page=1&pageSize=20&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 historical M&A activity for a market

Returns market-level transaction history by year, with deal counts and aggregate announced value, for long-run comparison of merger and acquisition activity. Use period to set the window.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/deals/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
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/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/deals/history?marketId=3&period=year&page=1&pageSize=20&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 aggregated M&A activity for a market

Returns market-wide deal counts and total transaction value broken down by sector, deal type and deal status for the requested year.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/deals/summary
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
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/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/deals/summary?marketId=3&year=2023&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 market M&A deals ranked by a metric

Returns the market's transactions ordered by the requested metric, such as announced deal value or acquired stake, so the largest deals of a period can be listed directly.

GEThttps://api.argaam.com/api/v1.1/markets/{marketId}/deals/ranking/{metric}
Path parameters
marketIdinteger (int32)required
Numeric market identifier used to scope market-level data.
Default: 3 · Example: 3
metricstringrequired
Metric or ranking key. Use only supported values published in the Metrics table.
Example: pe
Query parameters
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
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/deals/ranking/pe?marketId=3&year=2023&page=1&pageSize=20&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 a single M&A deal record

Returns the full record for one transaction: acquirer and target, deal type, announcement date, announced value in SAR, stake acquired, payment method, current status and the linked Argaam news and market disclosures.

GEThttps://api.argaam.com/api/v1.1/deals/{dealId}
Path parameters
dealIdstringrequired
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/deals/2026-0184?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 parties to an M&A deal

Returns every entity involved in the transaction — acquirer, target, selling shareholders and advisers — with the Tadawul stock symbol and sector where the party is a listed company.

GEThttps://api.argaam.com/api/v1.1/deals/{dealId}/parties
Path parameters
dealIdstringrequired
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/deals/2026-0184/parties?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 terms of an M&A deal

Returns the financial terms of the transaction: consideration type, offer price per share, exchange ratio, stake acquired, resulting ownership and any conditions attached to closing.

GEThttps://api.argaam.com/api/v1.1/deals/{dealId}/terms
Path parameters
dealIdstringrequired
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/deals/2026-0184/terms?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 timeline of an M&A deal

Returns the dated milestones of the transaction, from first announcement through CMA and Saudi Exchange approvals and the shareholder vote to completion or termination.

GEThttps://api.argaam.com/api/v1.1/deals/{dealId}/timeline
Path parameters
dealIdstringrequired
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/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/deals/2026-0184/timeline?page=1&pageSize=20&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"
  }
}