Disclosures by company
curl --request GET \
--url https://api.ngnmarket.com/v1/companies/{symbol}/disclosures \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/companies/{symbol}/disclosures"
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}/disclosures', 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}/disclosures",
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}/disclosures"
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}/disclosures")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/companies/{symbol}/disclosures")
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": {
"data": [
{
"title": "Quarter 1 - financial statement for 2026",
"company_name": "GUARANTY TRUST HOLDING COMPANY PLC",
"company_symbol": "GTCO",
"isin": "NGGTCO000002",
"category": "financial_results",
"submission_type": "Financial Statements",
"document_url": "https://doclib.ngxgroup.com/Financial_NewsDocs/46806_GUARANTY_TRUST.pdf",
"disclosed_at": "2026-04-28T15:17:53.000Z",
"modified_at": "2026-04-28T15:17:53.000Z"
}
],
"pagination": {
"page": 1,
"limit": 25,
"total": 2,
"pages": 1,
"has_next": false,
"has_prev": false
}
},
"meta": {
"plan": "free",
"calls_used": 12,
"calls_remaining": 9988,
"reset_at": "2026-06-15T23:57:00.000Z"
}
}Company Endpoints
Company Disclosures
Corporate filings scoped to a specific NGX-listed company.
GET
/
companies
/
{symbol}
/
disclosures
Disclosures by company
curl --request GET \
--url https://api.ngnmarket.com/v1/companies/{symbol}/disclosures \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/companies/{symbol}/disclosures"
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}/disclosures', 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}/disclosures",
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}/disclosures"
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}/disclosures")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/companies/{symbol}/disclosures")
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": {
"data": [
{
"title": "Quarter 1 - financial statement for 2026",
"company_name": "GUARANTY TRUST HOLDING COMPANY PLC",
"company_symbol": "GTCO",
"isin": "NGGTCO000002",
"category": "financial_results",
"submission_type": "Financial Statements",
"document_url": "https://doclib.ngxgroup.com/Financial_NewsDocs/46806_GUARANTY_TRUST.pdf",
"disclosed_at": "2026-04-28T15:17:53.000Z",
"modified_at": "2026-04-28T15:17:53.000Z"
}
],
"pagination": {
"page": 1,
"limit": 25,
"total": 2,
"pages": 1,
"has_next": false,
"has_prev": false
}
},
"meta": {
"plan": "free",
"calls_used": 12,
"calls_remaining": 9988,
"reset_at": "2026-06-15T23:57:00.000Z"
}
}Returns all corporate disclosures for a single company identified by its NGX ticker symbol. This is equivalent to calling
GET /disclosures?symbol={symbol} but is the preferred endpoint when building company-specific views such as a stock detail page.
Coverage goes back to July 2014 for companies that were already listed then, which is as far back as NGX’s own filing system has records.
Results are sorted newest first by default. Use the type filter to narrow to a specific filing category, or the from/to params for a date range.
curl "https://api.ngnmarket.com/v1/companies/GTCO/disclosures" \
-H "Authorization: Bearer ngm_live_YOUR_KEY"
curl "https://api.ngnmarket.com/v1/companies/GTCO/disclosures?type=Financial+Statements" \
-H "Authorization: Bearer ngm_live_YOUR_KEY"
const symbol = 'GTCO';
const res = await fetch(
`https://api.ngnmarket.com/v1/companies/${symbol}/disclosures?type=Financial+Statements`,
{ headers: { Authorization: 'Bearer ngm_live_YOUR_KEY' } }
);
const { data } = await res.json();
import requests
symbol = 'GTCO'
res = requests.get(
f'https://api.ngnmarket.com/v1/companies/{symbol}/disclosures',
params={'type': 'Financial Statements'},
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. GTCO). Case-insensitive.
Example:
"GTCO"
Query Parameters
Filter by the raw NGX submission type. Use /disclosures/types for valid values.
Example:
"Financial Statements"
Filter by category, a coarser curated grouping over submission_type. Use /companies/{symbol}/disclosures/categories (or /disclosures/categories) for valid values. An unrecognised value is ignored rather than rejected.
Example:
"director_dealings"
Search by document title.
Example:
"audited"
Example:
"2026-01-01"
Example:
"2026-12-31"
Available options:
disclosed_at, modified_at, submission_type Available options:
asc, desc Required range:
x >= 1Required range:
1 <= x <= 100