Getting Started
Base URL, keys, authentication, and first requests
Introduction
OpenNG is an open REST API for Nigerian public data. Data that currently lives in government PDFs, broken portals, and scattered Excel files is collected, cleaned, validated, and served through clean versioned endpoints.
OpenNG has two parts:
The API
api.openng.dev serves data across multiple domains: public holidays, fuel
prices, postal codes, and more.
The Explorer
openng.dev gives you an interactive data explorer to browse and filter
data without writing code.
OpenNG is fully open source. The code, the database schema, the data pipeline, and the seed files are all on GitHub. If you find an error in the data or want to add a new resource, contributions are welcome.
About the API
OpenNG groups public data under resource routes like /v1/holidays. Production traffic uses https://api.openng.dev; local development often uses http://localhost:3000. Use GET /meta to discover resources and versions, and GET /health for readiness checks.
Versioning
Paths are grouped as /v1/{resource}. Adding fields or filters is non-breaking. Incompatible changes to a specific resource earn a new /v2/{resource} only when needed.
Make Your First Request
No installation required. OpenNG is an HTTP API — call it from any language, environment, or tool that can make a request.
Run issues the request against http://localhost:3000 (typical local API). Samples are short GET examples (Python requests — pip install requests; Rust ureq; C++ libcurl). Nothing appears below until a response returns.
You should see JSON with every Nigerian public holiday declared for 2026: dates, types, observance notes, and source links.
Try filtering by type (fixed holidays):
Inspect resource metadata — filters and fields for the endpoint:
Create an API key
If you are building a script, backend integration, or worker, use an API key instead of browser cookies.
Store it once
After you create a key in the dashboard, copy it immediately into a password manager, secret store, or environment variable. The plaintext token is shown once.
Dashboard flow
- Sign in on the main OpenNG app with your email.
- Open
Dashboard -> API keys. - Create a key and save the returned token.
- Send it as a bearer token on API requests.
export OPENNG_API_KEY="ong_live_your_key_here"
curl -sS "https://api.openng.dev/v1/holidays?limit=5" \
-H "Authorization: Bearer $OPENNG_API_KEY"Rotation
Revoke the current key, then create a new one. Old keys stop working immediately once revoked.
Authentication
Sessions, bearer API keys, and anonymous GET access are documented on the dedicated Authentication page, including when to use each mode and the Authorization header shape.
What You Can Build
OpenNG is infrastructure. The data is the ingredient — what you build is the product.
A few things developers use OpenNG data for:
- Fintech apps that shift payment deadlines and reminders around Nigerian public holidays
- Logistics platforms that factor fuel prices by state into delivery estimates
- EdTech tools that look up school availability by LGA for placement
- Compliance tooling that validates registered NAFDAC products before stocking
- Address flows that use postal codes to standardise user input
If you ship something on OpenNG, open a GitHub issue with the Built with OpenNG label so we can track it.
FAQ
The GitHub repository tracks roadmap discussion and project updates.