Dividend history
curl --request GET \
--url https://api.ngnmarket.com/v1/companies/{symbol}/dividends \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/companies/{symbol}/dividends"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.ngnmarket.com/v1/companies/{symbol}/dividends', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.ngnmarket.com/v1/companies/{symbol}/dividends",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.ngnmarket.com/v1/companies/{symbol}/dividends"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ngnmarket.com/v1/companies/{symbol}/dividends")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/companies/{symbol}/dividends")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"symbol": "DANGCEM",
"dividends": [
{
"ex_dividend_date": "2024-05-20",
"dividend": 20,
"type": "Cash",
"payment_date": "2024-06-14",
"yield": 5.2
},
{
"ex_dividend_date": "2023-05-15",
"dividend": 16,
"type": "Cash",
"payment_date": "2023-06-09",
"yield": 4.8
}
],
"count": 2,
"start_date": "2023-05-15",
"end_date": "2024-05-20"
},
"meta": {
"plan": "starter",
"calls_used": 42,
"calls_remaining": 99958,
"reset_at": "2026-06-15T23:57:00.000Z"
}
}Company Endpoints
Dividend History
Retrieve the full dividend history for an NGX-listed company.
GET
/
companies
/
{symbol}
/
dividends
Dividend history
curl --request GET \
--url https://api.ngnmarket.com/v1/companies/{symbol}/dividends \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/companies/{symbol}/dividends"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.ngnmarket.com/v1/companies/{symbol}/dividends', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.ngnmarket.com/v1/companies/{symbol}/dividends",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.ngnmarket.com/v1/companies/{symbol}/dividends"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ngnmarket.com/v1/companies/{symbol}/dividends")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/companies/{symbol}/dividends")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"symbol": "DANGCEM",
"dividends": [
{
"ex_dividend_date": "2024-05-20",
"dividend": 20,
"type": "Cash",
"payment_date": "2024-06-14",
"yield": 5.2
},
{
"ex_dividend_date": "2023-05-15",
"dividend": 16,
"type": "Cash",
"payment_date": "2023-06-09",
"yield": 4.8
}
],
"count": 2,
"start_date": "2023-05-15",
"end_date": "2024-05-20"
},
"meta": {
"plan": "starter",
"calls_used": 42,
"calls_remaining": 99958,
"reset_at": "2026-06-15T23:57:00.000Z"
}
}This endpoint returns the complete dividend history for an NGX-listed company, ordered from most recent to oldest. Each record includes the ex-dividend date, dividend amount (in NGN per share), dividend type, payment date, and trailing yield at time of declaration.
Use
To fetch all dividends declared between two dates:
If a company has no dividend history on record,
from and to to filter by date range, or limit to cap the number of records returned (max 100). Omitting all parameters returns as much history as your plan allows.
Depth depends on plan: Starter gets 5 years, and Pro, Business, and Enterprise get the full record. If from reaches further back than your plan permits, the response doesn’t error, it just starts from the earliest ex-dividend date your plan can see.
For example, to fetch DANGCEM’s last 10 dividends:
curl "https://api.ngnmarket.com/v1/companies/DANGCEM/dividends?limit=10" \
-H "Authorization: Bearer ngm_live_YOUR_KEY"
const url = new URL('https://api.ngnmarket.com/v1/companies/DANGCEM/dividends');
url.searchParams.set('limit', '10');
const res = await fetch(url, {
headers: { Authorization: 'Bearer ngm_live_YOUR_KEY' },
});
const { data } = await res.json();
import requests
res = requests.get(
'https://api.ngnmarket.com/v1/companies/DANGCEM/dividends',
params={'limit': 10},
headers={'Authorization': 'Bearer ngm_live_YOUR_KEY'},
)
data = res.json()['data']
curl "https://api.ngnmarket.com/v1/companies/ZENITHBANK/dividends?from=2020-01-01&to=2024-12-31" \
-H "Authorization: Bearer ngm_live_YOUR_KEY"
const url = new URL('https://api.ngnmarket.com/v1/companies/ZENITHBANK/dividends');
url.searchParams.set('from', '2020-01-01');
url.searchParams.set('to', '2024-12-31');
const res = await fetch(url, {
headers: { Authorization: 'Bearer ngm_live_YOUR_KEY' },
});
const { data } = await res.json();
import requests
res = requests.get(
'https://api.ngnmarket.com/v1/companies/ZENITHBANK/dividends',
params={'from': '2020-01-01', 'to': '2024-12-31'},
headers={'Authorization': 'Bearer ngm_live_YOUR_KEY'},
)
data = res.json()['data']
dividends will be an empty array and count will be 0. This endpoint requires a Starter plan or higher, see above for how much history each plan returns.Authorizations
Pass your API key as a Bearer token: Authorization: Bearer ngm_live_YOUR_KEY.
Generate keys at ngnmarket.com/dashboard/developer.
Path Parameters
NGX ticker symbol (e.g. DANGCEM). Case-insensitive.
Example:
"DANGCEM"
Query Parameters
Return dividends with an ex-dividend date on or after this date (YYYY-MM-DD).
Example:
"2020-01-01"
Return dividends with an ex-dividend date on or before this date (YYYY-MM-DD).
Example:
"2024-12-31"
Maximum number of records to return (1–100). Omit to return all available records.
Required range:
1 <= x <= 100Example:
10