List all NGX market indices
curl --request GET \
--url https://api.ngnmarket.com/v1/indices \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/indices"
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/indices', 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/indices",
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/indices"
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/indices")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/indices")
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": "NGX30",
"name": "NGX 30 Index",
"value": 2841.45,
"change_pct": 0.42
},
{
"symbol": "NGXBNK",
"name": "NGX Banking Index",
"value": 731.2,
"change_pct": -0.18
},
{
"symbol": "NGXCONG",
"name": "NGX Consumer Goods Index",
"value": 1504.88,
"change_pct": 0.11
},
{
"symbol": "NGXINDG",
"name": "NGX Industrial Goods Index",
"value": 3278.6,
"change_pct": 0.65
},
{
"symbol": "NGXINS",
"name": "NGX Insurance Index",
"value": 295.44,
"change_pct": -0.07
},
{
"symbol": "NGXOILGAS",
"name": "NGX Oil & Gas Index",
"value": 1189.75,
"change_pct": 1.04
}
],
"meta": {
"plan": "free",
"calls_used": 38,
"calls_remaining": 9962,
"reset_at": "2026-05-01T00:00:00.000Z"
}
}Index Endpoints
List Indices
Retrieve all NGX market indices with current values and daily change.
GET
/
indices
List all NGX market indices
curl --request GET \
--url https://api.ngnmarket.com/v1/indices \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ngnmarket.com/v1/indices"
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/indices', 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/indices",
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/indices"
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/indices")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ngnmarket.com/v1/indices")
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": "NGX30",
"name": "NGX 30 Index",
"value": 2841.45,
"change_pct": 0.42
},
{
"symbol": "NGXBNK",
"name": "NGX Banking Index",
"value": 731.2,
"change_pct": -0.18
},
{
"symbol": "NGXCONG",
"name": "NGX Consumer Goods Index",
"value": 1504.88,
"change_pct": 0.11
},
{
"symbol": "NGXINDG",
"name": "NGX Industrial Goods Index",
"value": 3278.6,
"change_pct": 0.65
},
{
"symbol": "NGXINS",
"name": "NGX Insurance Index",
"value": 295.44,
"change_pct": -0.07
},
{
"symbol": "NGXOILGAS",
"name": "NGX Oil & Gas Index",
"value": 1189.75,
"change_pct": 1.04
}
],
"meta": {
"plan": "free",
"calls_used": 38,
"calls_remaining": 9962,
"reset_at": "2026-05-01T00:00:00.000Z"
}
}This endpoint returns a snapshot of every NGX market index tracked by NGN Market, including the current index value and the day’s percentage change. Use it to build dashboards, populate a market overview screen, or check which indices are available before querying detail or chart data.
This endpoint accepts no query parameters and requires no minimum plan.
Authorizations
Pass your API key as a Bearer token: Authorization: Bearer ngm_live_YOUR_KEY.
Generate keys at ngnmarket.com/dashboard/developer.
⌘I