Quick Start
Get started with the NOPOCO API in minutes
Base URL
https://api.nopoco.gov.ng/v1Authentication
Include your API key in the request header:
Authorization: Bearer YOUR_API_KEYExample Request
curl -X GET "https://api.nopoco.gov.ng/v1/releases?limit=10" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Accept: application/json"
Response Format
All responses are in JSON format following OCDS 1.1 specification
{
"data": [...],
"meta": {
"page": 1,
"limit": 10,
"total": 12847,
"pages": 1285
}
}API Endpoints
Available endpoints and their parameters
GET
/api/v1/releasesGet all OCDS releases with pagination and filtering
Parameters:
pageintegerPage number (default: 1)limitintegerItems per page (default: 20, max: 100)stagestringFilter by procurement stageministrystringFilter by ministryfrom_datedateFilter from date (YYYY-MM-DD)to_datedateFilter to date (YYYY-MM-DD)Example:
https://api.nopoco.gov.ng/v1/releases?page=1&limit=20&stage=tenderGET
/api/v1/releases/{ocid}Get a specific OCDS release by OCID
Parameters:
ocidstringOpen Contracting ID (e.g., ocds-ng-2024-001247)Example:
https://api.nopoco.gov.ng/v1/releases/ocds-ng-2024-001247GET
/api/v1/recordsGet compiled OCDS records (all releases for a contracting process)
Parameters:
pageintegerPage number (default: 1)limitintegerItems per page (default: 20, max: 100)Example:
https://api.nopoco.gov.ng/v1/records?page=1&limit=20GET
/api/v1/records/{ocid}Get a specific compiled OCDS record by OCID
Parameters:
ocidstringOpen Contracting IDExample:
https://api.nopoco.gov.ng/v1/records/ocds-ng-2024-001247GET
/api/v1/searchFull-text search across all OCDS data
Parameters:
qstringSearch querypageintegerPage number (default: 1)limitintegerItems per page (default: 20, max: 100)Example:
https://api.nopoco.gov.ng/v1/search?q=construction&page=1GET
/api/v1/statisticsGet aggregated statistics and analytics
Parameters:
group_bystringGroup by: ministry, stage, month, yearfrom_datedateFilter from dateto_datedateFilter to dateExample:
https://api.nopoco.gov.ng/v1/statistics?group_by=ministryRate Limits
API usage limits and quotas
Requests per minute60
Requests per hour1,000
Requests per day10,000
Rate limit headers are included in all responses. Contact us for higher limits.
Best Practices
Tips for optimal API usage
Use pagination to retrieve large datasets
Cache responses when possible
Use filters to reduce response size
Implement exponential backoff for retries
Monitor rate limit headers
Use webhooks for real-time updates