Company news by ticker symbol
curl --request GET \
--url https://api.ngnmarket.com/v1/companies/{symbol}/news \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/companies/{symbol}/news"
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}/news', 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}/news",
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}/news"
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}/news")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/companies/{symbol}/news")
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": {
"company": "Dangote Cement Plc",
"data": [
{
"title": "Dangote Cement reports record Q1 revenue amid price hike",
"link": "https://businessday.ng/markets/article/dangote-cement-q1-revenue",
"source": "BusinessDay",
"pub_date": "Thu, 17 Apr 2026 10:30:00 GMT",
"days_old": 4,
"time_ago": "4 days ago",
"guid": "https://businessday.ng/markets/article/dangote-cement-q1-revenue"
}
],
"total": 1
},
"meta": {
"plan": "starter",
"calls_used": 4823,
"calls_remaining": 95177,
"reset_at": "2026-05-15T23:57:00.000Z"
}
}Company Endpoints
Company News
Retrieve recent news articles for an NGX-listed company by ticker symbol.
GET
/
companies
/
{symbol}
/
news
Company news by ticker symbol
curl --request GET \
--url https://api.ngnmarket.com/v1/companies/{symbol}/news \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/companies/{symbol}/news"
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}/news', 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}/news",
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}/news"
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}/news")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/companies/{symbol}/news")
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": {
"company": "Dangote Cement Plc",
"data": [
{
"title": "Dangote Cement reports record Q1 revenue amid price hike",
"link": "https://businessday.ng/markets/article/dangote-cement-q1-revenue",
"source": "BusinessDay",
"pub_date": "Thu, 17 Apr 2026 10:30:00 GMT",
"days_old": 4,
"time_ago": "4 days ago",
"guid": "https://businessday.ng/markets/article/dangote-cement-q1-revenue"
}
],
"total": 1
},
"meta": {
"plan": "starter",
"calls_used": 4823,
"calls_remaining": 95177,
"reset_at": "2026-05-15T23:57:00.000Z"
}
}This endpoint returns recent news articles for a specific NGX-listed company, identified by its NGX ticker symbol. Articles are sourced in real time from Nigerian financial news outlets.
Use
If no articles are found within the configured age window, the data array is empty. This endpoint requires a Starter plan or higher.
limit to control how many articles are returned (default 5, max 10), and maxAge to set the maximum article age in days (default 90). Each article includes pub_date, days_old, and time_ago fields for convenient age display. News is fetched live on each request, so response times may be slightly higher than data endpoints.
For example, to fetch the 10 most recent DANGCEM articles from the last 30 days:
curl "https://api.ngnmarket.com/v1/companies/DANGCEM/news?limit=10&maxAge=30" \
-H "Authorization: Bearer ngm_live_YOUR_KEY"
const url = new URL('https://api.ngnmarket.com/v1/companies/DANGCEM/news');
url.searchParams.set('limit', '10');
url.searchParams.set('maxAge', '30');
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/news',
params={'limit': 10, 'maxAge': 30},
headers={'Authorization': 'Bearer ngm_live_YOUR_KEY'},
)
data = res.json()['data']
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
Maximum number of articles to return (1–50). Defaults to 10.
Required range:
1 <= x <= 50Maximum age of articles in days (1–365). Defaults to 90.
Required range:
1 <= x <= 365